3天前
|
|
|
111
原文面向刚拿到 VPS 的开发者和技术爱好者,手把手教你如何从零开始,打造一个安全可靠的服务器环境。文章涵盖用户管理、SSH 配置、防火墙设置以及自动化安全更新等关键步骤,即使是新手也能轻松上手。
## 创建并配置安全用户
拿到 VPS 后,第一件事就是创建一个新的用户,并赋予 sudo 权限,避免直接使用 root 用户操作。
```
$ sudo adduser username
$ sudo usermod -aG sudo username
```
然后切换到新用户,验证 sudo 权限是否生效。
## 启用 SSH 密钥登录,禁用密码登录
为了提高安全性,强烈建议使用 SSH 密钥登录,并禁用密码登录。首先在本地机器生成 SSH 密钥对:
```
$ ssh-keygen -t ed25519 -C "email@example.com"
```
然后将公钥复制到 VPS:
```
$ ssh-copy-id -i ~/.ssh/ed25519.pub username@12.34.56.78
```
测试密钥登录是否成功后,编辑 `/etc/ssh/sshd_config` 文件,禁用密码登录和 root 登录,设置 `PermitRootLogin no`、`PasswordAuthentication no` 和 `ChallengeResponseAuthentication no`。
## 配置 UFW 防火墙
防火墙是保护服务器的重要屏障。使用 UFW (Uncomplicated Firewall) 可以轻松配置防火墙规则。
首先安装 UFW:
```
$ sudo apt install ufw
```
然后允许 OpenSSH 连接,设置默认规则,拒绝所有入站流量,允许所有出站流量:
```
$ sudo ufw allow 'OpenSSH'
$ sudo ufw default deny incoming
$ sudo ufw default allow outgoing
```
最后启用防火墙。如果需要运行 Web 服务器,可以允许 80 和 443 端口的流量。
## 安装并配置 Fail2Ban
Fail2Ban 可以监控 SSH 登录尝试,自动屏蔽恶意 IP 地址,防止暴力破解。
安装 Fail2Ban:
```
$ sudo apt install fail2ban
```
复制 `jail.conf` 到 `jail.local`,编辑 `jail.local` 文件,启用 SSH 监控,并设置为 aggressive 模式。
```
[sshd]
enabled = true
mode = aggressive
```
## 启用 unattended-upgrades 自动更新
`unattended-upgrades` 可以自动安装安全补丁和重要更新,保持服务器安全。
安装 `unattended-upgrades`:
```
$ sudo apt install unattended-upgrades
```
可以根据需要配置自动重启,但需要注意重启会中断服务。
通过以上步骤,你的 VPS 安全性将大大提高。记住,安全是一个持续的过程,需要定期检查和更新配置,才能确保服务器的安全可靠。