在VirtualBox虚拟机上为CentOS进行安全设置,可以参考以下步骤:
禁用非必要的超级用户
-
检测具有超级用户权限的账户:
cat /etc/passwd | awk -F ':' '{print$1,$3}' | grep ' 0$'
-
备份并锁定或解锁这些账户:
cp -p /etc/passwd /etc/passwd_bak passwd -l <用户名> # 锁定账户 passwd -u <用户名> # 解锁账户
-
删除不必要的账户,如adm, lp, sync等:
userdel username groupdel groupname
强化用户口令
- 设置复杂的口令,包含大写字母、小写字母、数字和特殊字符,长度大于10位。
- 通过修改
/etc/login.defs
文件来强制执行这些要求。
保护口令文件
-
使用
chattr
命令给/etc/passwd
,/etc/shadow
,/etc/group
, 和/etc/gshadow
文件加上不可更改属性:chattr +i /etc/passwd chattr +i /etc/shadow chattr +i /etc/group chattr +i /etc/gshadow
设置root账户自动注销时限
-
通过修改
/etc/profile
文件中的TMOUT
参数,设置root账户的自动注销时限:vi /etc/profile TMOUT=300
限制su命令
-
编辑
/etc/pam.d/su
文件,限制只有特定组的用户才能使用su
命令切换为root:usermod –G wheel username
限制普通用户的敏感操作
- 删除或修改
/etc/security/console.apps
下的相应程序的访问控制文件,如halt、reboot、poweroff、shutdown等。
禁用ctrl+alt+delete重启命令
-
修改
/etc/inittab
文件,禁用ctrl+alt+delete组合键重启机器的命令:vi /etc/inittab # 注释掉下面这一行 ca::ctrlaltdel:/sbin/shutdown -t3 -r now
设置开机启动服务权限
- 设置
/etc/rc.d/init.d/
目录下所有文件的权限,确保只有root用户可以操作这些服务。
避免登录时显示系统信息
- 避免在登录时显示系统和版本信息。
限制NFS网络访问
- 确保
/etc/exports
文件具有最严格的访问权限设置。
登录终端设置
- 通过编辑
/etc/securetty
文件,限制root用户只能在特定的tty设备上登录。
防止攻击
- 编辑
host.conf
文件和设置资源限制,如最大进程数和内存使用量,以防止IP欺骗和DoS攻击。
以上步骤可以帮助你提升VirtualBox虚拟机上CentOS系统的安全性。