NAT小鸡的初始配置和SSH安全加固

VPS 初始化配置指南

前言

本指南提供了新购VPS(特别是NAT类型VPS)的初始化配置步骤,包括SSH连接、系统时区设置、必要软件安装、DNS配置、SSH安全加固以及防火墙设置等内容。可以快速完成VPS的基础配置,提高服务器的安全性和可用性。


一、NAT端口转发说明

如果您使用的是NAT类型的VPS(俗称"NAT小鸡"),需要通过端口转发的方式访问服务器。请按照以下步骤操作:

1.1 获取连接信息

首先登录您的NAT VPS控制面板,获取以下关键信息:

  • 公网IP120.122.122.122(NAT VPS的公网IP地址)

  • 公网SSH端口32232(映射到VPS内部SSH服务的公网端口)

  • 用户名root(服务器登录用户名)

  • 密码123456(服务器登录密码)

注意:以上为示例信息,请以您实际获取的信息为准。

1.2 通过SSH连接服务器

使用以下命令通过公网IP和映射端口连接到您的NAT VPS:


ssh -p 32232 [email protected]

执行命令后,根据提示输入密码123456即可登录服务器。


二、系统基础配置

2.1 更换时区(可选)

将服务器时区设置为北京时间(Asia/Shanghai):


timedatectl set-timezone Asia/Shanghai

设置完成后,可以使用以下命令验证时区配置:


timedatectl

2.2 安装必要软件

更新系统软件包列表并安装常用工具软件:


apt update -y

apt install fail2ban curl unzip ufw nano -y

说明

  • fail2ban:防止暴力破解的安全工具
  • curl:网络请求工具
  • unzip:解压工具
  • ufw:简易防火墙管理工具
  • nano:文本编辑器

三、网络配置

3.1 修改DNS配置(可选)

将系统DNS服务器修改为Google和Cloudflare的公共DNS,提高解析速度和稳定性:


sudo bash -c 'mkdir -p /etc/systemd/resolved.conf.d/ && cat > /etc/systemd/resolved.conf.d/dns.conf <<EOF

[Resolve]

DNS=8.8.8.8 8.4.4.8 2001:4860:4860::8888 2001:4860:4860::8844

FallbackDNS=1.1.1.1 1.0.0.1 2606:4700:4700::1111 2606:4700:4700::1001

Domains=~.

DNSOverTLS=opportunistic

EOF

systemctl restart systemd-resolved'

说明

  • DNS:主用DNS服务器,包括IPv4和IPv6地址
  • FallbackDNS:备用DNS服务器
  • DNSOverTLS:启用DNS over TLS加密传输

四、SSH安全加固

为了提高服务器安全性,建议开启SSH密钥登录并关闭密码登录。对于NAT VPS,由于内部SSH端口已通过NAT映射到其他公网端口,因此无需修改内部SSH端口。

4.1 生成SSH密钥对

在您的本地计算机(Windows或Mac)上生成SSH密钥对:

4.1.1 Mac/Linux系统


# 在Mac或Linux系统上生成密钥,默认保存在~/.ssh/目录下

ssh-keygen -t ed25519 -P "" -f ~/.ssh/sshkey_20250910

4.1.2 Windows系统


# 在Windows系统上生成密钥,默认保存在C:\Users\<用户名>\.ssh\目录下

ssh-keygen -t ed25519 -P "" -f C:\Users\Administrator\.ssh\sshkey_20250910

# 注意:将Administrator替换为您的Windows用户名

说明

  • -t ed25519:指定使用ed25519算法生成密钥(比RSA更安全高效)
  • -P "":设置空密码,避免每次使用密钥时都需要输入密码
  • -f:指定密钥文件保存路径和名称

4.2 查看并复制公钥

密钥生成成功后,会在指定目录下生成两个文件:

  • sshkey_20250910:私钥文件,妥善保管在本地计算机

  • sshkey_20250910.pub:公钥文件,需要复制到VPS服务器

查看公钥内容:


# Mac/Linux系统

cat ~/.ssh/sshkey_20250910.pub

# Windows系统

# 可以使用记事本打开C:\Users\Administrator\.ssh\sshkey_20250910.pub文件查看

4.3 将公钥复制到VPS服务器

登录VPS服务器,执行以下命令创建.ssh目录并配置公钥:


# 创建.ssh目录并设置正确权限

mkdir -p ~/.ssh

chmod 700 ~/.ssh

# 将公钥内容添加到authorized_keys文件

# 注意:将<your public key>替换为您实际的公钥内容

echo "<your public key> sshkey_20250910.pub" >> ~/.ssh/authorized_keys

# 设置authorized_keys文件权限

chmod 600 ~/.ssh/authorized_keys

4.4 配置SSH服务以启用密钥登录

编辑SSH配置文件:


sudo nano /etc/ssh/sshd_config

在文件中找到PubkeyAuthentication选项,将其值设置为yes(如果没有该选项,则添加):


PubkeyAuthentication yes # 允许密钥登录

保存并退出编辑器(按下Ctrl+X,然后输入y,最后按Enter确认)。

重启SSH服务以应用更改:


sudo systemctl restart sshd

4.5 测试密钥登录

在本地计算机上使用以下命令测试密钥登录是否正常工作:

4.5.1 Mac/Linux系统


ssh -p 32232 -i ~/.ssh/sshkey_20250910 [email protected]

4.5.2 Windows系统


ssh -p 32232 -i C:\Users\Administrator\.ssh\sshkey_20250910 [email protected]

说明

  • -p 32232:指定SSH连接端口
  • -i:指定私钥文件路径

如果能够成功登录,则说明密钥配置正确。

4.6 关闭密码登录

为进一步提高安全性,在确认密钥登录正常后,可以关闭SSH密码登录功能:


sudo nano /etc/ssh/sshd_config

找到PasswordAuthentication选项,将其值设置为no


PasswordAuthentication no # 禁用密码登录

保存并退出编辑器,然后重启SSH服务:


sudo systemctl restart sshd


五、UFW防火墙设置(可选)

UFW(Uncomplicated Firewall)是Ubuntu系统上的简易防火墙管理工具,可以帮助您管理服务器的入站和出站流量。

警告:配置防火墙时请务必谨慎操作,确保不会误封SSH端口,导致无法连接服务器。

5.1 配置防火墙规则

按照以下顺序配置防火墙规则:


# 允许指定IP地址的所有入站连接(替换为您的中转机IP地址)

ufw allow from 100.100.100.100 to any

# 允许指定IPv6地址段的所有入站连接(替换为您的中转机IPv6地址段)

ufw allow from 2603:100:100:100::/64 to any

# 允许指定TCP端口的入站连接(示例为3000端口)

ufw allow 3000/tcp

# 允许指定UDP端口的入站连接(示例为3000端口)

ufw allow 3000/udp

# 设置默认策略:拒绝所有入站流量

ufw default deny incoming

# 设置默认策略:允许所有出站流量

ufw default allow outgoing

5.2 启用防火墙

配置完成后,启用UFW防火墙:


ufw enable

系统会提示您确认是否启用防火墙,输入y并按Enter确认。

5.3 配置防火墙开机自启

确保防火墙在系统重启后自动启用:


systemctl enable ufw

5.4 查看防火墙状态

使用以下命令查看防火墙当前状态和规则:


# 查看简洁状态

ufw status

# 查看详细状态

ufw status verbose

5.5 管理防火墙规则

如需删除防火墙规则,首先查看规则编号:


ufw status numbered

然后使用以下命令删除指定编号的规则(例如删除编号为6的规则):


ufw delete 6


六、配置完成确认

完成以上所有步骤后,您的VPS已经完成了基础初始化配置。建议执行以下命令确认所有服务运行正常:


# 查看系统状态

systemctl status

# 查看网络连接状态

netstat -tuln

# 查看防火墙状态

ufw status


七、后续建议

  1. 监控系统状态:安装监控工具,如htopkomari等,监控系统资源使用情况
16 个赞

水平有限,使用了Ai辅助创作和排版哈 :joy:

非常棒 感谢楼主分享 已收藏

点赞收藏

1 个赞

收藏了

学习了

非常有用 感谢分享

学习了

学习 :+1:

非常棒

母鸡想看就看

收藏了

学习了

这个真不错

每天学习一个小技巧

在有限的资源里搞这么多

码一下学习

感谢分享教程

66,非常棒

好强啊 学习下 想问下Nat小鸡可以使用docker吗