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