优化VPS配置
备份原始源配置(万一出问题还能恢复)

cp /etc/apt/sources.list /etc/apt/sources.list.backup

安装HTTPS证书支持

apt-get install -y ca-certificates

获取系统版本代号

CODENAME=$(lsb_release -cs)

我推荐几个稳定的源,按你的网络环境选择:

国内源(推荐国内用户):

阿里云源:速度快,稳定性好,推荐

中科大源:教育网用户首选

清华源:老牌稳定源

国外源(推荐海外用户):

官方源:最稳定,但速度可能较慢

香港源:亚洲地区访问较快

日本源:东亚地区访问较快

配置国内源(推荐国内用户)

cat > /etc/apt/sources.list <<EOF
deb http://mirrors.aliyun.com/debian/ ${CODENAME} main contrib non-free non-free-firmware
deb-src http://mirrors.aliyun.com/debian/ ${CODENAME} main contrib non-free non-free-firmware
deb http://mirrors.aliyun.com/debian-security ${CODENAME}-security main contrib non-free non-free-firmware
deb-src http://mirrors.aliyun.com/debian-security ${CODENAME}-security main contrib non-free non-free-firmware
deb http://mirrors.aliyun.com/debian/ ${CODENAME}-updates main contrib non-free non-free-firmware
deb-src http://mirrors.aliyun.com/debian/ ${CODENAME}-updates main contrib non-free non-free-firmware
EOF

配置国外源(推荐海外用户)

cat > /etc/apt/sources.list <<EOF
deb https://deb.debian.org/debian/ ${CODENAME} main contrib non-free non-free-firmware
deb-src https://deb.debian.org/debian/ ${CODENAME} main contrib non-free non-free-firmware
deb https://deb.debian.org/debian-security ${CODENAME}-security main contrib non-free non-free-firmware
deb-src https://deb.debian.org/debian-security ${CODENAME}-security main contrib non-free non-free-firmware
deb https://deb.debian.org/debian/ ${CODENAME}-updates main contrib non-free non-free-firmware
deb-src https://deb.debian.org/debian/ ${CODENAME}-updates main contrib non-free non-free-firmware
EOF

配置完成后,更新一下软件包列表:

apt update

如果看到"Get:1"这样的输出,说明换源成功了!速度应该比之前快很多。

2️⃣ 账户安全

设置强密码

首先给root设置一个强密码,别用123456这种弱密码:

设置root密码(请替换为你的强密码)

echo "root:YourStrongPassword123!" | chpasswd

密码要求:至少8位,包含大小写字母、数字和特殊字符。

创建普通用户

直接用root操作是很危险的,我们创建一个普通用户:

创建用户(替换username为你的用户名)

useradd -m -s /bin/bash username

设置用户密码

echo "username:UserPassword123!" | chpasswd

给用户sudo权限

usermod -aG sudo username

这样以后就可以用普通用户登录,需要管理员权限时用sudo。

配置SSH密钥认证

密码登录虽然方便,但SSH密钥更安全。如果你有SSH密钥,可以这样配置:

创建SSH目录

mkdir -p /root/.ssh
chmod 700 /root/.ssh

添加你的公钥(请替换为你的实际公钥)

echo "你的SSH公钥内容" > /root/.ssh/authorized_keys

设置正确的权限

chmod 600 /root/.ssh/authorized_keys

配置SSH密钥认证后的sshd_config修改

配置完SSH密钥后,需要修改SSH配置以启用密钥认证:

修改SSH配置以支持密钥认证

sed -i 's/^#PubkeyAuthentication./PubkeyAuthentication yes/' /etc/ssh/sshd_config
sed -i 's/^#PasswordAuthentication./PasswordAuthentication yes/' /etc/ssh/sshd_config
sed -i 's/^#PermitRootLogin./PermitRootLogin prohibit-password/' /etc/ssh/sshd_config

确保配置生效

systemctl restart ssh

3️⃣ SSH安全加固 -

SSH是服务器的入口,必须加强防护!

修改SSH端口

默认的22端口就像在门上贴了"请进"的牌子,我们换个端口:

备份SSH配置(好习惯)


cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup

修改SSH端口为54321(你可以选择其他端口)

sed -i 's/^#Port ./Port 54321/' /etc/ssh/sshd_config

强化SSH安全设置

现在给SSH加几道锁:

配置SSH安全参数

cat >> /etc/ssh/sshd_config <<EOF

安全配置

PasswordAuthentication yes
ChallengeResponseAuthentication no
PermitRootLogin prohibit-password
PubkeyAuthentication yes

登录限速(防止暴力破解)

LoginGraceTime 30
MaxAuthTries 3

安全横幅

Banner /etc/issue.net
EOF

创建安全横幅(吓唬一下不怀好意的人)

echo "Unauthorized access to this server is prohibited." > /etc/issue.net

重启SSH服务
systemctl restart ssh

注意:修改SSH端口后,记得用新端口连接:ssh -p 54321 root@your-server-ip

4️⃣ 防火墙配置

安装nftables

默认的ufw防火墙功能有限,我们换成更强大的nftables:

卸载ufw(如果存在)

if command -v ufw >/dev/null 2>&1; then
ufw --force reset
ufw disable
apt-get purge -y ufw
fi

安装nftables

apt-get install -y nftables

配置基础防火墙规则

现在配置防火墙规则,只允许必要的流量通过:

创建nftables配置文件
```
cat > /etc/nftables.conf <<EOF
#!/usr/sbin/nft -f

flush ruleset

table inet filter {
chain input {
type filter hook input priority 0;
policy drop;

# 允许本地回环(本机访问)
iif lo accept

# 允许已建立的连接(回复包)
ct state established,related accept
```
 
 
Back to Top © 2025 我的笔记| 由 Cloudflare Pages and Telegram 强力驱动