CentOS系统VirtualBox虚拟机安全策略配置
一、VirtualBox虚拟机基础安全配置
- 安装最新版本VirtualBox:确保使用VirtualBox最新版本,及时修复已知安全漏洞,降低被攻击风险。
- 合理配置网络连接:优先选择Host-Only模式(用于虚拟内网,IP固定为192.168.56.x网段,便于宿主机直接访问)+ NAT模式(用于虚拟机上外网,动态获取IP),隔离虚拟机与公网,减少直接暴露风险;避免使用桥接模式(除非必要),防止虚拟机直接接入物理网络而被扫描攻击。
- 设置虚拟机密码保护:为VirtualBox虚拟机设置强密码(包含大小写字母、数字、特殊字符,长度≥10位),防止未经授权的用户启动或修改虚拟机配置。
- 配置共享文件夹权限:若需共享宿主机与虚拟机文件,通过VirtualBox“设置-共享文件夹”添加共享路径,设置挂载点(如/mnt/share);将CentOS用户加入
vboxsf组(sudo usermod -aG vboxsf 用户名),并限制共享文件夹权限(如chmod 770 /mnt/share),避免未授权访问。 - 定期创建系统快照:通过VirtualBox“快照”功能保存虚拟机当前状态(如系统安装完成后、配置变更前),当虚拟机出现安全问题(如感染病毒、配置错误)时,可快速恢复到之前的安全状态,减少损失。
二、CentOS系统自身安全加固
-
禁用非必要超级用户:
- 检测超级用户账户:
cat /etc/passwd | awk -F ':' '{print $1, $3}' | grep '^0'(显示所有UID=0的账户,即超级用户); - 备份并锁定非必要账户(如
adm、lp、sync):cp -p /etc/passwd /etc/passwd_bak(备份)、passwd -l 用户名(锁定账户); - 删除无用账户:
userdel 用户名(删除账户)、groupdel 组名(删除对应组),减少潜在攻击面。
- 检测超级用户账户:
-
强化用户口令策略:
- 设置复杂口令:要求包含大写字母、小写字母、数字、特殊字符(如
~!@#$%^&*),长度≥10位; - 强制执行口令策略:修改
/etc/login.defs文件,设置PASS_MIN_LEN 10(最小口令长度)、PASS_WARN_AGE 7(口令过期前7天警告); - 检查并修复空口令账户:
awk -F ":" '(2 == "") {print $1}' /etc/shadow(列出空口令账户),强制为这些账户设置符合要求的口令。
- 设置复杂口令:要求包含大写字母、小写字母、数字、特殊字符(如
-
保护敏感口令文件:使用
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;如需修改,可先取消属性(chattr -i 文件名),修改后再恢复。 -
限制su命令使用:编辑
/etc/pam.d/su文件,添加auth required pam_wheel.so(仅允许wheel组用户使用su命令切换到root);将需要提权的用户加入wheel组:usermod -G wheel 用户名,避免普通用户随意获取root权限。 -
禁用Ctrl+Alt+Delete重启:修改
/etc/inittab文件,注释掉ca::ctrlaltdel:/sbin/shutdown -t3 -r now行(防止他人通过快捷键意外或恶意重启系统);若系统使用systemd,可通过systemctl mask ctrl-alt-del.target禁用该组合键。 -
设置root账户自动注销:修改
/etc/profile文件,添加TMOUT=300(root账户无操作300秒后自动注销),避免root账户长时间闲置被他人利用;执行source /etc/profile使设置生效。 -
限制普通用户敏感操作:删除或修改
/etc/security/console.apps目录下的敏感程序访问控制文件(如halt、reboot、poweroff、shutdown),防止普通用户随意关机、重启系统;若需允许特定用户执行,可通过visudo命令编辑/etc/sudoers文件,授予有限权限。 -
避免登录显示系统信息:编辑
/etc/issue文件,删除或修改系统版本、内核信息等内容(如将CentOS Linux release 7.9.2009 (Core)改为Welcome to CentOS),防止攻击者通过登录界面获取系统信息,针对性发起攻击。 -
配置NFS网络访问控制:若使用NFS共享文件夹,编辑
/etc/exports文件,设置严格的访问权限(如/mnt/share 192.168.56.0/24(rw,sync,no_root_squash,no_subtree_check)),仅允许特定网段(如宿主机所在网段)访问,并启用同步写入(sync)和禁止root用户映射(no_root_squash需谨慎使用,仅在必要时开启)。 -
限制登录终端:编辑
/etc/securetty文件,仅保留允许root用户登录的终端(如tty1-tty6),删除其他终端(如tty7-tty12),防止攻击者通过其他终端尝试登录root账户。 -
防止IP欺骗和DoS攻击:编辑
/etc/host.conf文件,添加nospoof on(禁止IP地址欺骗)、order bind,hosts(优先使用DNS解析)、multi on(允许多重解析);通过ulimit命令设置资源限制(如最大进程数、内存使用量),例如在/etc/security/limits.conf中添加* hard nproc 500(限制每个用户最多500个进程)、* hard as 2048000(限制每个用户最多使用2GB内存),防止攻击者通过大量进程或内存消耗导致系统崩溃。