VPS服务器购买后必做:安全组与SSH密钥初始化指南
文章分类:技术文档 /
创建时间:2025-08-04
VPS服务器购买后,很多用户急着部署应用,却容易忽略关键的初始化设置——安全组与SSH密钥配置。这两项操作如同给服务器上“双保险锁”,既能挡住外部恶意攻击,又能避免因密码泄露导致的安全隐患。本文结合实际运维经验,详细拆解配置步骤,帮你把新买的VPS变成“安全堡垒”。
第一步:安全组配置——给服务器划清“安全边界”
刚到手的VPS像一间新屋子,默认安全组规则可能像“大门敞开”:所有端口对所有IP开放。这看似方便,却让服务器直接暴露在网络攻击风险中——黑客可能通过扫描弱密码端口入侵,或利用未关闭的高危端口植入恶意程序。
要解决这个问题,得先明确服务器的“用途”。比如:
- 搭网站:主要用80(HTTP)、443(HTTPS)端口;
- 远程管理:需保留22(SSH)端口;
- 数据库服务:可能开放3306(MySQL)等专用端口。
具体操作分两步:
1. 关闭不必要的端口:登录服务器管理控制台(位置因服务商而异,但通常在“网络安全”或“安全组”菜单),逐条检查开放端口,只保留业务必需的。例如,若服务器不提供FTP服务,就关闭21端口。
2. 限制访问IP:对管理类端口(如SSH的22端口),建议设置“仅允许固定IP访问”。比如,只放行公司办公IP或自己常用的家庭网络IP段,这样即使外部扫描到端口,没有授权IP也无法连接。
这里有个常见误区:有人觉得“开放所有端口更方便”,但《信息安全技术 网络安全等级保护基本要求》明确提到“应根据业务需求设置最小访问权限”——少开一个端口,就少一分被攻击的可能。
第二步:SSH密钥配置——替代密码的“数字钥匙”
传统密码登录像用“普通锁”:密码长度短、复杂度低时,容易被暴力破解工具“试开”;就算密码复杂,也可能因输入时被键盘记录软件窃取。而SSH密钥登录相当于“指纹锁”:本地私钥是“指纹”,服务器公钥是“锁”,只有匹配才能打开,安全性大幅提升。
配置步骤分三步:
1. 生成密钥对:在本地电脑打开终端(Windows用PowerShell,Mac/Linux用终端),输入命令:
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"
按提示敲回车(不需要设置密码短语的话,两次回车跳过),会在~/.ssh目录生成id_rsa(私钥)和id_rsa.pub(公钥)。私钥要像保管银行卡一样重要——丢了或泄露,别人就能登录你的服务器!
2. 上传公钥到服务器:用命令将公钥复制到服务器:
ssh-copy-id -i ~/.ssh/id_rsa.pub username@服务器IP
输入服务器密码后,公钥会自动写入服务器的~/.ssh/authorized_keys文件。
3. 禁用密码登录:登录服务器,编辑SSH配置文件:
sudo nano /etc/ssh/sshd_config
找到“PasswordAuthentication yes”这行,改为“no”(禁用密码登录);再检查“PermitRootLogin”是否设为“no”(禁止root直接登录,需用普通用户登录后su切换)。保存退出后,重启SSH服务:
sudo systemctl restart sshd
完成后,下次登录只需用私钥(本地终端输入“ssh username@服务器IP”即可,无需密码)。如果担心私钥丢失,建议备份到U盾或加密云盘,同时在服务器保留一个备用账号(如设置另一个用户的公钥)。
最后提醒:初始化后再“验收”
完成安全组和SSH密钥配置后,建议做一次“压力测试”:用另一台设备尝试登录,确认只能通过密钥连接;同时用端口扫描工具(如nmap)检查开放端口,确保只有必要端口暴露在外。
VPS服务器购买不是终点,而是安全运维的起点。这两项初始化设置耗时不过20分钟,却能帮你避开90%以上的基础安全风险。后续部署应用时,也记得保持“最小权限”原则——让服务器“该开的口开,不该开的口封死”,才能用得更省心。