Linux

使用 TACACS+ (Cisco ACS) 驗證 Linux sshd

  • September 30, 2020

我們的網路工程團隊使用多台 linux 伺服器進行syslog 收集、配置備份、tftp 等…

我們希望在Cisco ACS 機器上使用 TACACS+作為我們的中央身份驗證伺服器,我們可以在其中更改密碼並為這些 linux 伺服器上的使用者活動帳戶。我們還需要回退到靜態密碼,以防 tacacs+ 服務中斷。

我們如何sshd在 CentOS 上對我們的Cisco ACS tacacs+ 伺服器進行身份驗證?


注意:我正在回答我自己的問題

假設

安裝說明

  1. 將linux伺服器的主機名/ip地址添加到Cisco ACS並重啟Cisco ACS服務
  2. 從 SourceForge下載tacacs+ PAM 模組。
  3. 為您的 linux 發行版安裝pam開發包。RHEL/CentOS 呼叫它pam-devel;Debian / Ubuntu 稱之為libpam-dev(虛擬包名libpam0g-dev)。
  4. 將 tacacs+pam模組解壓到臨時工作目錄 ( tar xvfz pam_tacplus-1.3.7.tar.gz)
  5. cd進入由tar.
  6. 作為根:./configure; make; make install
  7. 以root 身份編輯/etc/pam.d/sshd,並將此行添加為文件中的第一個條目:

auth include tacacs 8. 以 root 身份創建一個名為的新文件/etc/pam.d/tacacs

#%PAM-1.0
授權足夠 /usr/local/lib/security/pam_tacplus.so 調試伺服器=192.0.2.27 秘密=d0nttr3@d0nm3
帳戶足夠 /usr/local/lib/security/pam_tacplus.so 調試伺服器=192.0.2.27 秘密=d0nttr3@d0nm3 服務=shell 協議=ssh
會話足夠 /usr/local/lib/security/pam_tacplus.so 調試伺服器=192.0.2.27 秘密=d0nttr3@d0nm3 服務=shell 協議=ssh

每伺服器/每使用者說明

作為每台伺服器上的 root 使用者,為所有需要的使用者創建一個與 tacacs+ 使用者名匹配的本地 linux 使用者帳戶。使用者可以選擇passwd將其本地密碼設置為他們喜歡的任何最後手段;tacacs+但是,如果他們設置了本地密碼,即使服務可用,他們也可以隨時在本地登錄。

pam_tacplus 服務資訊

pam_tacplus.so模組如何工作的詳細資訊在此pam-list存檔電子郵件中

引用自:https://serverfault.com/questions/425020