VPS安全设置指南,CentOS 7的最佳实践
卡尔云官网
www.kaeryun.com
随着VPS(虚拟专用服务器)的普及,越来越多的人开始使用虚拟服务器来运行自己的网站和应用程序,VPS的安全性不容忽视,尤其是在使用开源操作系统如CentOS 7时,需要特别注意各种潜在的安全威胁,本文将为你提供一个全面的VPS安全设置指南,帮助你更好地保护你的虚拟服务器。
基本安全配置
防火墙配置
防火墙是VPS的第一道屏障,它阻止未经授权的访问,在CentOS 7中,防火墙可以通过systemctl
命令配置,默认情况下,CentOS 7的防火墙允许所有端口,但我们需要根据实际需求进行调整。
步骤:
- 登录到VPS的控制面板。
- 打开
systemctl
命令,查看当前的防火墙规则。 - 根据需要关闭不必要的端口,例如
80
(HTTP)、443
(HTTPS)、22
(SSH)等。
示例:
systemctl firewall-list
HTTP过滤器配置
HTTP过滤器可以进一步限制外网访问,允许的端口更具体,在CentOS 7中,HTTP过滤器可以通过firewall-cmd
命令配置。
步骤:
- 输入
firewall-cmd --add-service=http
以启用HTTP过滤器。 - 添加新的HTTP服务规则,
firewall-cmd --add-port=http:80->80允许
- 保存规则后,重启服务:
firewall-cmd --reload
SSL证书
为了防止SSL/TLS漏洞,建议为VPS配置一个可靠的SSL证书,并启用SSL加密。
步骤:
- 下载并安装SSL证书(例如Let’s Encrypt)。
- 配置
ssm
守护来管理SSL证书:ssm enable-ssl
- � � � � � 计算证书颁发商(CRL):
ssm cert-manager --crl-file /etc/lets-encrypt/crl.pem
- 重新启动
ssm
守护:ssm reload
用户管理
用户权限配置
为了防止未授权的用户访问VPS资源,需要严格控制用户权限。
步骤:
- 在
/etc/passwd
文件中添加新的用户:useradd -m -d "Web用户" -g web -s /bin/sh user_web
- 修改
/etc/passwd
文件,限制用户权限:user_web:wheel:wheel:wheel:wheel:wheel:wheel:wheel:wheel
- 更新密码并重新登录:
chpasswd user_web
验证码
为了防止未授权的访问,可以为VPS设置多级验证码。
步骤:
- 在
/etc/shadow
文件中添加多级验证码:echo -e "user_web:123456:yes::" | sh -S /etc/passwd
- 更新密码并重新登录:
chpasswd user_web
漏洞扫描与备份
漏洞扫描
定期进行漏洞扫描是确保VPS安全的重要环节。
步骤:
- 使用
nmap
工具扫描VPS的开放端口:nmap -sV /var/www/html/
- 使用
open-vm-dependencies
工具检查虚拟机依赖:open-vm-dependencies
- 使用
ssm
守护进行漏洞扫描:ssm vulnerability-scanner --enabled-modules open-vm-vuln-scanner
备份策略
为了防止数据丢失,需要制定一个合理的备份策略。
步骤:
- 定期备份网站内容:
cp /var/www/html/ site backed up_${date +%Y%m%d%H%M%S}.tar.gz
- 使用
rsync
工具进行增量备份:rsync -a --incremental /var/www/html/ .
- 定时备份:
crontab -e << EOD */1 * * * 1 /var/www/html/ site backed up_${date +%Y%m%d%H%M%S}.tar.gz */1 * * * 1 /var/www/html/ . backed up_${date +%Y%m%d%H%M%S}.tar.gz EOD
应急措施
面试日志
记录每次登录的详细信息,包括用户名、密码、日期等,方便后续排查。
步骤:
- 在
/var/log/secures
目录下创建日志文件:mkdir -p /var/log/secures
- 修改
/etc/passwd
文件,添加日志权限:chown -R www-data:www-data /var/log/secures/secures.log
- 设置日志记录命令:
ln -s /var/log/secures/secures.log /var/log/secures/secures.log
邮件通知
在发现潜在问题时,通过邮件通知管理员。
步骤:
- 在
/etc/shadow
文件中添加邮件地址:echo -e "user_web:123456:yes::" | sh -S /etc/passwd
- 设置邮件通知:
secures -m "VPS安全警报" -a "管理员邮箱"
恢复点
在发生故障时,能够快速恢复到正常状态是关键。
步骤:
- 使用
rsync
工具进行增量备份:rsync -a --incremental /var/www/html/ .
- 备份到外部存储:
rsync -a --incremental /var/www/html/ ./ftp_backup/
- 定时备份:
crontab -e << EOD */1 * * * 1 /var/www/html/ site backed up_${date +%Y%m%d%H%M%S}.tar.gz */1 * * * 1 /var/www/html/ . backed up_${date +%Y%m%d%H%M%S}.tar.gz EOD
VPS的安全设置需要从多个方面入手,包括防火墙、HTTP过滤器、SSL证书、用户管理、漏洞扫描和备份策略等,通过合理的配置和定期维护,可以有效降低VPS的安全风险,确保你的网站和应用程序能够正常运行。
卡尔云官网
www.kaeryun.com