发布日期:2025-03-11 来源: 阅读量()
在SSH服务端配置中,首要任务是修改默认端口。通过将 密钥认证配置建议采用ED25519算法生成密钥对: 通过客户端配置文件 常用高效命令组合: 使用Ansible进行批量配置管理,创建 建议配合日志监控工具,实时分析 通过端口变更、密钥认证和服务参数调优的三层防护体系,结合客户端配置优化与自动化管理工具,可构建企业级SSH安全防护架构。定期审计配置文件和监控登录日志,能有效预防暴力破解和中间人攻击,确保建站主机的远程管理安全。基础安全加固配置
/etc/ssh/sshd_config
中的Port 22
更改为非标准端口(例如8888),可显著降低自动化扫描攻击风险。建议配合以下强化设置:
UseDNS no # 禁用DNS反向解析
MaxAuthTries 3 # 限制单次登录尝试次数
PermitRootLogin no # 禁止root直接登录
PasswordAuthentication no # 强制密钥认证
ssh-keygen -t ed25519 -C "your@email"
,并将公钥通过ssh-copy-id -i ~/.ssh/key.pub user@host -p 端口号
部署到目标服务器。高效命令与连接优化
~/.ssh/config
实现快速连接:
Host webserver
HostName 192.168.1.100
Port 8888
User admin
IdentityFile ~/.ssh/web_ed25519
Compression yes # 启用数据压缩
ServerAliveInterval 60 # 保持连接活跃
ssh -L 3306:localhost:3306 webserver
ssh webserver "sudo systemctl restart nginx"
rsync -avzP -e 'ssh -p 8888' /local/path user@host:/remote/path
自动化安全配置管理
ssh_harden.yml
剧本:
hosts: all
tasks:
name: Update sshd_config
lineinfile:
path: /etc/ssh/sshd_config
regexp: "^{{ item.regex }}$
line: "{{ item.line }}
with_items:
{ regex: '^#Port 22', line: 'Port 8888' }
{ regex: '^UseDNS', line: 'UseDNS no' }
notify: restart sshd
/var/log/auth.log
中的异常登录尝试,并设置fail2ban自动封锁恶意IP。
# 和服务
# published
# head
# title
# info
# SSH
# datetime
# 公钥
# 数据压缩
# 有效预防
# 建站
# 优化配置
# 端口号
# 断点续传
# 非标准
# 服务端
# 并将
# 配置文件
# 配置管理
# 客户端