我刚刚获得了 CentOS VPS,正在查看 passwd 文件并看到以下内容:
mysql:x:498:499:MySQL server:/var/lib/mysql:/bin/bash
mysql需要bash吗?
答案1
在某些情况下可能需要设置 shell,例如,如果您想以用户身份通过 SSHmysql
或通过 sudo 远程启动作业。这些不是常见的需求。你不需要为 cron 作业设置 shell,/bin/false
就可以了。
为用户提供mysql
shell 本身并不是一个安全漏洞。它不受欢迎的原因是,再加上某些登录服务的错误配置,它可能允许某人以mysql
.安装一个不执行任何操作的程序可以避免这种情况——即使攻击者设法登录,因为mysql
这对他们没有任何好处。使用/bin/false
or很常见/usr/sbin/nologin
,但是/bin/true
or 任何其他无操作程序都可以。