为什么 Samba PAM 登录会话日志数据总是显示“已关闭”?

为什么 Samba PAM 登录会话日志数据总是显示“已关闭”?

/var/log/auth.log我每隔 10-20 秒就会收到这些日志:

Jun 22 11:31:12 debian smbd[1795]: pam_unix(samba:session): session closed for user nobody
Jun 22 11:31:08 debian smbd[1794]: pam_unix(samba:session): session closed for user nobody
Jun 22 11:30:44 debian smbd[1779]: pam_unix(samba:session): session closed for user nobody

我该如何阻止这种情况?我检查了我的端口,得到了以下信息:

root@debian:/home/debian# netstat -ap | grep smbd
tcp        0      0 *:netbios-ssn           *:*                     LISTEN      19317/smbd
tcp        0      0 *:microsoft-ds          *:*                     LISTEN      19317/smbd
tcp6       0      0 [::]:netbios-ssn        [::]:*                  LISTEN      19317/smbd
tcp6       0      0 [::]:microsoft-ds       [::]:*                  LISTEN      19317/smbd
unix  2      [ ]         DGRAM                    583178168 19317/smbd          /var/cache/samba/msg/19317
unix  2      [ ]         DGRAM                    583178311 19349/smbd          /var/cache/samba/msg/19349

root@debian:/home/debian# netstat -ap | grep samba
unix  2      [ ACC ]     STREAM     LISTENING     583178532 19378/nmbd          /var/run/samba/nmbd/unexpected
unix  2      [ ]         DGRAM                    583178168 19317/smbd          /var/cache/samba/msg/19317
unix  2      [ ]         DGRAM                    583178311 19349/smbd          /var/cache/samba/msg/19349
unix  2      [ ]         DGRAM                    583178517 19378/nmbd          /var/cache/samba/msg/19378

我怎样才能阻止 Samba 日志产生“PAM 会话已关闭”消息?

答案1

我想知道是否可以在这里采用与此类似的方法,请参阅标题为:cron+pam 大量向我的日志发送垃圾邮件。在此问答中,以下内容用于使以类似方式“发送垃圾邮件”日志的 cron 日志安静下来:

session     [success=1 default=ignore] pam_succeed_if.so service in cron quiet use_uid

我相信在您的场景中您需要修改cronsmd,如下所示:

session     [success=1 default=ignore] pam_succeed_if.so service in smbd quiet use_uid

我不能 100% 确定要修改哪个文件,而且手边也没有 Debian 系统来全面审查这一点。我相信它会是这个目录下的一个文件:/etc/pam.d/,您必须使用它来确定具体是哪个文件。

顺便说一句,出现这些消息是因为为用户定义的 shellnobody被设置为类似/bin/false或之类的值/bin/noshell,这就是导致这些消息出现在auth.log文件中的原因。

参考

答案2

我遇到了同样的问题,并且在 /etc/samba/smb.conf 中注释以下行对我有用。

map to guest = bad user

尝试从 Windows 或其他客户端访问共享文件夹后,立即出现“pam_unix(samba:session): 用户 nobody 的会话已关闭”。似乎 Windows 客户端尝试以访客身份联系 samba(未经验证),尤其是在凭证管理器中未配置凭证的情况下。

如果您不需要访客访问(默认=是),您可能还需要更改以下内容。

usershare allow guests = no

更新 /etc/samba/smb.conf 并启动服务后,samba 客户端就可以访问共享文件夹。

service smbd status

Starting Samba SMB Daemon...
Started Samba SMB Daemon.
pam_unix(samba:session): session opened for user (username) by (uid=0)
pam_unix(samba:session): session closed for user (username)
pam_unix(samba:session): session opened for user (username) by (uid=0)
pam_unix(samba:session): session opened for user (username) by (uid=0)
pam_unix(samba:session): session closed for user (username)

这一页帮助我找出原因。

相关内容