使用 TACACS+(思科 ACS)验证 Linux sshd

使用 TACACS+(思科 ACS)验证 Linux sshd

我们的网络工程团队使用多台 Linux 服务器来系统日志收集、配置备份、tftp等等……

我们希望在思科 ACS 机器作为我们的中央身份验证服务器,我们可以在其中更改密码并记录这些 Linux 服务器上的用户活动。如果 tacacs+ 服务发生故障,我们还需要恢复到静态密码。

我们如何制作sshd在 CentOS 上根据我们的思科 ACStacacs+ 服务器?


注意:我是回答我自己的问题

答案1

假设

  • 我们正在pam_tacplus.so从 v1.3.7进行编译pam_tacplus 库
  • Cisco ACS 服务器是 192.0.2.27,秘密 tacacs+ 密钥是d0nttr3@d0nm3

安装说明

  1. 将 Linux 服务器的主机名/IP 地址添加到 Cisco ACS 中,然后重新启动 Cisco ACS 服务
  2. 下载tacacs+ PAM 模块来自 SourceForge。
  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. 以 root 身份:./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存档电子邮件

相关内容