web-dev-qa-db-ja.com

Linux sshdをTACACS +(Cisco ACS)で認証する

私たちのネットワークエンジニアリングチームは syslogコレクション 、構成のバックアップ、tftpなどに複数のLinuxサーバーを使用しています...

Cisco ACS machine でTACACS +を中央認証サーバーとして使用し、これらのLinuxサーバーでのユーザーアクティビティのパスワードとアカウントを変更できます。 tacacs +サービスがダウンした場合に備えて、静的パスワードにフォールバックする必要もあります。

CentOSで sshdCisco ACS tacacs +サーバーに対して認証するにはどうすればよいですか?


注:私は 自分の質問に答えています

8
Mike Pennington

仮定

  • pam_tacplusライブラリ のv1.3.7からpam_tacplus.soをコンパイルしています
  • Cisco ACSサーバーは192.0.2.27で、秘密のtacacs +キーはd0nttr3@d0nm3です。

インストール手順

  1. Linuxサーバーのホスト名/ IPアドレスをCisco ACSに追加し、Cisco ACSサービスを再起動します
  2. SourceForgeから tacacs + PAMモジュール をダウンロードします。
  3. Linuxディストリビューション用のpam開発パッケージをインストールします。 RHEL/CentOSはpam-develと呼びます。 Debian/Ubuntuはlibpam-devlibpam0g-devの仮想パッケージ名)と呼んでいます。
  4. Tacacs + pamモジュールを一時作業ディレクトリ(tar xvfz pam_tacplus-1.3.7.tar.gz)に解凍します
  5. cdは、tarによって作成された新しいフォルダーに移動します。
  6. ルートとして:./configure; make; make install
  7. ルートとして、/etc/pam.d/sshdを編集し、次の行をファイルの最初のエントリとして追加します。

    auth include tacacs

  8. Rootとして、/etc/pam.d/tacacsという新しいファイルを作成します。

#%PAM-1.0 
十分な認証/usr/local/lib/security/pam_tacplus.so debug server = 192.0.2.27 secret = d0nttr3 @ d0nm3 
アカウント十分/ usr/local/lib/security/pam_tacplus.so debug server = 192.0.2.27 secret = d0nttr3 @ d0nm3 service = Shell protocol = ssh 
 session十分な/usr/local/lib/security/pam_tacplus.so debug server = 192.0。 2.27 secret = d0nttr3 @ d0nm3 service = Shell protocol = ssh 

サーバーごと/ユーザーごとの手順

各サーバーのrootとして、必要なすべてのユーザーのtacacs +ユーザー名と一致するローカルLinuxユーザーアカウントを作成します。ユーザーはオプションでpasswdを使用して、ローカルパスワードを最後の手段として好きなように設定できます。ただし、ローカルパスワードを設定した場合、サービスが利用可能であっても、tacacs+がなくてもいつでもローカルでログインできます。

pam_tacplusサービス情報

pam_tacplus.soモジュールの動作の詳細は、この pam-listアーカイブメール にあります。

11
Mike Pennington