0

0

LinuxSSH安全怎么提升_最佳实践总结助你快速突破【教程】

冰川箭仙

冰川箭仙

发布时间:2025-12-17 22:01:36

|

933人浏览过

|

来源于php中文网

原创

Linux SSH安全需四步:禁用密码登录强制密钥认证;修改默认端口并限制用户/IP访问;部署Fail2ban防暴力破解;精简权限、开启详细日志并审计。

linuxssh安全怎么提升_最佳实践总结助你快速突破【教程】

Linux SSH 安全不是靠一两个设置就能搞定的,核心是“减少攻击面 + 增加验证门槛 + 及时发现异常”。下面这些实践,都是生产环境反复验证过的硬核操作,不花哨、不绕弯,直接上手就能见效。

禁用密码登录,强制使用密钥认证

密码登录是暴力破解的主入口,关掉它是最有效的一道防线。启用密钥登录后,攻击者即使知道用户名,没有私钥也进不来。

  • 生成密钥对(本地执行):ssh-keygen -t ed25519 -C "your_email@example.com"(推荐 ed25519,比 rsa 更快更安全)
  • 上传公钥到服务器:ssh-copy-id -i ~/.ssh/id_ed25519.pub user@server_ip
  • 编辑 /etc/ssh/sshd_config,确认以下几行已设置:
PubkeyAuthentication yes
PasswordAuthentication no
PermitEmptyPasswords no

改完记得重启服务:sudo systemctl restart sshd,并**先保留一个已登录的终端窗口**,避免被踢出后连不上。

修改默认端口 + 限制登录用户/IP

虽然“安全靠隐蔽”不绝对,但把 SSH 改到非 22 端口,能过滤掉 90% 的自动扫描流量;再配合用户和 IP 白名单,攻击面直接缩小好几个量级。

  • 改端口:在 /etc/ssh/sshd_config 中取消注释并修改 Port 2222(比如设为 2222 或其他 1024–65535 间未被占用的端口)
  • 只允许特定用户登录:AllowUsers deploy admin(多个用户空格分隔)
  • 只允许内网或固定 IP 访问:AllowUsers deploy@192.168.1.*AllowUsers deploy@203.123.45.67

改完端口后,别忘了更新防火墙规则(如 ufw 或 iptables),放行新端口,同时封掉旧的 22 端口。

启用 Fail2ban 防暴力破解

即使禁了密码登录,SSH 服务本身仍可能被探测或误配置暴露。Fail2ban 能实时监控日志,自动封禁频繁失败的 IP,是低成本高回报的防御补充。

问小白
问小白

免费使用DeepSeek满血版

下载
  • 安装:sudo apt install fail2ban(Debian/Ubuntu)或 sudo yum install fail2ban(CentOS/RHEL)
  • 启用默认 SSH 规则:复制模板 sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local,确保 [sshd] 段中 enabled = true
  • 常用调优项(写在 jail.local 中):
maxretry = 3
bantime = 1h
findtime = 10m

启动服务:sudo systemctl enable fail2ban && sudo systemctl start fail2ban,可用 sudo fail2ban-client status sshd 查看状态。

精简 SSH 服务权限与日志审计

最小权限原则同样适用于 SSH:不用的功能关掉,不该留的日志删掉,该留的必须可追溯。

  • 禁用危险选项(在 sshd_config 中设为 no):PermitRootLogin noX11Forwarding noAllowTcpForwarding no(除非真需要)
  • 开启详细登录日志:LogLevel VERBOSE(记录 key fingerprint 和认证方式,便于事后排查)
  • 定期轮转和审查日志:/var/log/auth.log(Debian)或 /var/log/secure(RHEL),关注 Failed passwordInvalid userConnection closed 等关键词

建议搭配 logwatch 或简单脚本每日邮件摘要关键事件,早发现、早响应。

基本上就这些——不复杂,但容易忽略。做完这四步,你的 SSH 就已经脱离“裸奔”状态,进入可控、可管、可审计的安全基线。后续再叠加多因素(如 Google Authenticator)、跳板机或证书体系,就是更上一层的事了。

相关专题

更多
磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

1350

2023.06.21

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

704

2023.06.29

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

294

2023.06.30

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

776

2023.07.05

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

573

2023.07.06

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

547

2023.07.20

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

297

2023.07.20

linux查看cpu使用率
linux查看cpu使用率

在linux的系统维护中,可能需要经常查看cpu使用率,分析系统整体的运行情况。本专题为大家带来了linux查看cpu使用率的相关文章,感兴趣的朋友千万不要错过了。

381

2023.07.25

excel表格操作技巧大全 表格制作excel教程
excel表格操作技巧大全 表格制作excel教程

Excel表格操作的核心技巧在于 熟练使用快捷键、数据处理函数及视图工具,如Ctrl+C/V(复制粘贴)、Alt+=(自动求和)、条件格式、数据验证及数据透视表。掌握这些可大幅提升数据分析与办公效率,实现快速录入、查找、筛选和汇总。

0

2026.01.21

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
PostgreSQL 教程
PostgreSQL 教程

共48课时 | 7.5万人学习

Git 教程
Git 教程

共21课时 | 2.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号