在/var/log/auth.log对我的一个公共Web服务器进行审核时,我发现:
Jan 10 03:38:11 Bucksnort sshd[3571]: pam_unix(sshd:auth): authentication failure;
logname= uid=0 euid=0 tty=ssh ruser= rhost=61.19.255.53 user=bin
Jan 10 03:38:13 Bucksnort sshd[3571]: Failed password for bin from 61.19.255.53
port 50647 ssh2
乍一看,这看起来像是ssh随机黑客发出的典型登录垃圾邮件;但是,当我靠近时,我发现了其他东西。大多数失败的/var/log/auth.log条目invalid user在其中说,像这样:
Jan 9 10:45:23 Bucksnort sshd[3006]: Failed password for invalid user sales
from 123.212.43.5 port 10552 ssh2
关于失败登录消息令人不安的事情bin是,它是一个有效的用户中/etc/passwd,即使有一个登录shell:
[mpenning@Bucksnort ~]$ grep ^bin /etc/passwd
bin:x:2:2:bin:/bin:/bin/sh
我想我已经覆盖了所有的默认用户名时,我关闭,可以远程登录PermitRootLogin的/etc/ssh/sshd_config; 发现这个条目在我偏执的头脑中打开了新的可能性。如果某种方式下运行了服务bin,则很可能有人可能会bin从包装盒上正在运行的服务中以某种方式将ssh密钥插入用户目录,因此bin,如果可能的话,我想完全禁用该用户的登录。
问题
该服务器是远程服务器,而且修复成本很高(即,我将为连接KVM的远程服务付费,外加KVM租赁费用)。我试图弄清楚如果将
/etc/passwd条目更改为以下内容可能会破坏什么bin:bin:x:2:2:bin:/bin:/bin/false我运行了以下命令,试图找出
bin所需的...。但是,这些命令没有提供文件,也找不到所拥有的进程bin。什么是bin用户做呢?$ sudo find / -group bin$ sudo find / -user bin是否还有其他用户应将其登录Shell设置为
/bin/false?仅供参考,我已经有/bin/false上www-data。我太偏执了吗?
如果这很重要,我正在运行Debian。