公网服务器会遭到SSH暴力破解攻击。本讲完成服务器加固:使用密钥登录替代密码登录,配置两层防火墙,部署fail2ban自动封禁攻击者;牢记VNC是紧急自救通道。
~/.ssh/authorized_keys。私钥泄露别人可以完全控制服务器。backend=systemd读取系统日志。# 查看SSH登录失败日志,观察暴力破解记录
sudo journalctl -u sshd | grep -i failed | tail -30
# 本地电脑生成ed25519密钥对
ssh-keygen -t ed25519 -C "服务器study账号"
# 校验ssh配置语法,无报错再重载
sudo sshd -t
sudo systemctl reload sshd
# firewalld放行ssh服务
sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload
sudo firewall-cmd --list-all
# 查看fail2ban状态,查看被封禁IP列表
sudo fail2ban-client status sshd
实现域名访问网站;理解DNS解析原理;安装Nginx,编写站点配置,发布静态网页;掌握403、404、访问超时故障排查。
# 验证域名DNS解析
nslookup example.com
nslookup www.example.com
# 安装、启动nginx并设置开机自启
sudo dnf install -y nginx
sudo systemctl enable --now nginx
nginx -v
# 创建网站目录,修改归属和权限
sudo mkdir -p /var/www/mysite
sudo chown -R study:study /var/www/mysite
sudo chmod 755 /var/www/mysite
# nginx配置检查,重载生效
sudo nginx -t
sudo systemctl reload nginx
# 实时跟踪网站访问日志
sudo tail -f /var/log/nginx/mysite_access.log
理解HTTP明文的安全风险;掌握HTTPS(TLS)加密原理;使用certbot申请Let’s Encrypt免费证书;配置Nginx HTTPS站点,配置证书全自动续期。
/.well‑known/acme‑challenge/验证文件确认域名所有权;申请证书条件:解析正确、80端口开放、Nginx正确提供验证文件。# 安装certbot证书工具
sudo dnf install -y certbot
certbot --version
# 演练申请证书(测试环境,不会生成正式证书)
sudo certbot certonly --webroot -w /var/www/mysite \
-d example.com -d www.example.com --dry-run
# 查看本机全部证书信息、路径、到期时间
sudo certbot certificates
# 启用证书自动续期定时器
sudo systemctl enable --now certbot-renew.timer
systemctl list-timers 'certbot*'
# 模拟完整续期演练
sudo certbot renew --dry-run