首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >SSH - UsePAM是还是不是?

SSH - UsePAM是还是不是?
EN

Ask Ubuntu用户
提问于 2020-07-17 12:13:20
回答 1查看 11.7K关注 0票数 17

设置基于SSH密钥的身份验证后,建议禁用SSH密码身份验证.

这是通过导航到/etc/ssh/sshd_config并确保没有注释掉以下行来完成的:

代码语言:javascript
运行
复制
PasswordAuthentication no

一些教程,例如。

还建议设置

代码语言:javascript
运行
复制
UsePAM no

在这样做之后,我注意到我不再从主机获得会话通知。例如,当我想关闭/重新启动它时,终端挂起,我就不再得到:

代码语言:javascript
运行
复制
Connection to 192.168.0.3 closed by remote host.
Connection to 192.168.0.3 closed.

我在这里上读到过,人们应该“可能想要保持这种状态”。此外,它可能会帮助你变得更安全。

问题

  1. UsePAM no对安全性的贡献有多精确?
  2. 如果禁用UsePAM,我还可以获得会话状态吗?
EN

回答 1

Ask Ubuntu用户

发布于 2021-03-15 12:11:47

我把注释复制到默认的信托文件中。

将此设置为“是”,以启用PAM身份验证、帐户处理和会话处理。如果启用这一功能,则将允许通过ChallengeResponseAuthentication和PasswordAuthentication进行PAM身份验证。根据您的PAM配置,PAM通过ChallengeResponseAuthentication的身份验证可能绕过“无密码的PermitRootLogin”的设置。如果您只想让PAM帐户和会话检查在没有PAM身份验证的情况下运行,那么就启用它,但是将PasswordAuthentication和ChallengeResponseAuthentication设置为'no‘。

由于这些原因,我只禁用PasswordAuthentication和ChallengeResponseAuthentication,让pam被设置为处理帐户和会话人员,我复制了这些模块类型的含义。

此模块类型执行基于非身份验证的帐户管理。它通常用于限制/允许基于一天中的时间、当前可用的系统资源(最大用户数)或申请者用户的位置--“root”登录在控制台上的服务访问。会话--此模块类型与在用户获得服务之前/之后需要做的事情相关联。这些内容包括记录与用户之间的某些数据交换的打开/关闭信息、挂载目录等。

您可以在etc/panam.confetc/amam.d/*中检查pamd配置文件,然后再检查模块做什么。此外,连接终止消息似乎与pam配置无关.它是由sshd专门在client环.c函数client_loop中发送的

代码语言:javascript
运行
复制
         /*
          * In interactive mode (with pseudo tty) display a message indicating
          * that the connection has been closed.
          */
         if (have_pty && options.log_level != SYSLOG_LEVEL_QUIET) {
                 if ((r = sshbuf_putf(stderr_buffer,
                     "Connection to %.64s closed.\r\n", host)) != 0)
                         fatal("%s: buffer error: %s", __func__, ssh_err(r));
         }

在我的例子中,不管UsePAM的值如何,它都会打印该消息。

票数 2
EN
页面原文内容由Ask Ubuntu提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://askubuntu.com/questions/1259848

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档