1. 系统更新与软件源配置

首先,通过对系统软件包和源进行配置,为后续操作打好基础。

1.1 系统更新

登录服务器后,首先应该更新现有的软件包列表并升级所有已安装的软件包。这可以确保系统包含最新的安全补丁

sudo apt update
sudo apt upgrade -y

1.2 更换软件源

为了获得更快的下载速度,建议将默认的软件源更换为国内镜像源,例如阿里云、华为云或清华大学源

这边以阿里云源为例

sudo sed -i 's/archive.ubuntu.com/mirrors.aliyun.com/g' /etc/apt/sources.list

更换后,更新软件包列表使其生效:sudo apt update

2. 添加普通用户 避免使用root

强化安全设置是初始化工作的核心环节。

2.1 创建普通用户

为避免直接使用权限过高的 root账户,应创建一个用于日常操作的普通用户

sudo adduser userName

2.2 授予管理员权限

将新创建的用户添加到 sudo组,以便在需要执行管理员任务时使用 sudo命令

sudo usermod -aG sudo userName

3 配置防火墙

3.1 安装并配置 UFW 防火墙

UFW(Uncomplicated Firewall)是一个基于命令行的防火墙工具,用于简化防火墙配置。

查看 UFW 状态:sudo ufw status

启用 UFW:sudo ufw enable

允许基础的入站流量

# ssh 端口
sudo ufw allow 55098/tcp
# http 流量
sudo ufw allow 80/tcp
# https 流量
sudo ufw allow 443/tcp

4 配置 SSH 登录

为了安全地远程管理服务器,建议配置 SSH 登录。

4.1 修改 SSH 配置文件

编辑 SSH 配置文件 sudo vim /etc/ssh/sshd_config

# 修改 SSH 端口
Port 55098
# 禁止 root 登录
PermitRootLogin no
# 最大认证尝试次数
MaxAuthTries 6
# 公钥认证
PubkeyAuthentication yes
# 密码认证
PasswordAuthentication yes
# 挑战响应认证
ChallengeResponseAuthentication no

后面使用密钥登录时,记得配置禁止密码登录

# 禁止密码登录
PasswordAuthentication no

重启 SSH 服务使配置生效

sudo systemctl restart ssh

4.2 配置 SSH 密钥登录

密钥登录是一种更安全的认证方式,通过使用公钥和私钥对进行验证,避免了密码被泄露的风险。

进入当前用户目录, 生成 SSH 密钥对

cd
# 生成 SSH 密钥对 邮箱可以不填写
ssh-keygen -t rsa -b 4096
ssh-keygen -t rsa -b 4096 -C "your_email@example.com"

密钥设置

cd ~/.ssh
## 在服务器上安装公钥
cat id_rsa.pub >> authorized_keys
## 权限设置
chmod 700 ~/.ssh
chmod 600 authorized_keys

下载私钥 id_rsa

最后记得 修改配置文件 sudo vim /etc/ssh/sshd_config 禁止密码登录 PasswordAuthentication no