SSH(Secure Shell)协议是Linux服务器远程管理的生命线,其安全性直接关系到业务系统的稳定运行。服务器配置SSH的核心上文小编总结在于:必须摒弃默认的“22端口+密码+Root登录”这一高风险组合,转而构建“自定义高位端口+高强度密钥对认证+普通用户提权”的多层防御体系。 只有通过深度定制配置文件并结合云厂商的安全组策略,才能有效抵御暴力破解与各类网络攻击,确保服务器在公网环境下的绝对安全。

修改默认端口与禁用Root直接登录
绝大多数自动化攻击脚本都会针对互联网上的IP地址进行全端口扫描,并默认尝试连接SSH的22端口。修改默认端口是降低服务器被扫描频率的第一道防线,能够过滤掉绝大多数低级别的恶意扫描。
在服务器端,我们需要编辑/etc/ssh/sshd_config文件,将#Port 22前的注释去掉,并将其修改为一个高位随机端口,例如Port 22345。必须禁止Root用户直接远程登录,Root账户拥有系统的最高权限,一旦被攻破,攻击者将获得完全的控制权,应将配置文件中的PermitRootLogin yes修改为PermitRootLogin no。
完成修改后,务必重启SSH服务使配置生效,管理员需要先以普通用户身份登录,然后通过sudo -i或su -命令切换至Root环境进行管理操作,这种权限分离机制虽然增加了一步操作,但极大地提升了系统的安全性。
强制使用密钥对认证并关闭密码登录
密码认证虽然方便,但在面对字典攻击和撞库攻击时显得脆弱不堪。SSH密钥对认证(公钥与私钥)基于非对称加密算法,其安全性远高于传统密码,是服务器加固的核心环节。
在本地客户端生成密钥对(推荐使用ED25519或RSA 4096位算法),将生成的公钥内容上传至服务器的~/.ssh/authorized_keys文件中,并确保该文件的权限设置为600,所属用户组正确,随后,修改服务器端配置文件,设置PubkeyAuthentication yes以开启密钥认证。

为了彻底杜绝暴力破解的风险,在确认密钥登录无误后,必须立即关闭密码登录功能,在sshd_config中设置PasswordAuthentication no,这一步是“不可逆”的安全门槛,一旦执行,任何持有密码但没有私钥的尝试都将被拒绝。
酷番云实战经验案例:安全组与系统配置的双重联动
在长期的云服务器运维实践中,我们发现许多用户仅关注系统内部的SSH配置,而忽略了云平台层面的“安全组”策略。酷番云建议用户采用“系统配置+安全组白名单”的双重锁定方案。
以酷番云的云服务器产品为例,曾有一位电商客户频繁遭遇SSH暴力破解导致CPU负载飙升,我们的技术团队协助其进行了深度加固:在酷番云控制台的安全组设置中,仅放行客户办公网段的特定IP访问自定义的SSH端口,直接在流量入口处拦截了99%的异常连接;在服务器内部配置了密钥登录并禁用了密码认证。
独家经验在于: 在修改SSH端口前,务必先在酷番云的安全组中放行新端口,否则会导致连接断开且无法找回,酷番云的控制台提供了“VNC远程登录”功能,这是防止因配置错误导致失联的“最后救生圈”,通过这种云平台与操作系统层级的深度结合,该客户的服务器在后续的一年中未再发生任何安全告警,且运维效率未受影响。
主动防御策略与连接优化
除了被动的防御配置,主动限制连接频率也是保护SSH的重要手段,利用/etc/hosts.allow和/etc/hosts.deny文件(TCP Wrappers),或者更先进的Fail2Ban工具,可以动态封禁那些尝试多次失败登录的IP地址。Fail2Ban能够扫描日志文件并自动更新防火墙规则,对于遏制持续的暴力破解极为有效。

为了优化连接体验,可以适当调整客户端的ServerAliveInterval和ServerAliveCountMax参数,防止因网络波动导致长时间无操作连接断开。限制SSH的并发连接数(通过MaxStartups参数)可以防止小规模的DDoS攻击耗尽系统资源。
相关问答
Q1:修改了SSH端口后,使用SCP或SFTP传输文件时该如何指定端口?
A:在使用SCP或SFTP命令时,需要通过-P参数(大写P)指定新的端口号,使用SCP命令传输文件的语法为:scp -P 22345 /local/path/user@remote_ip:/remote/path,如果是使用图形化工具(如FileZilla或Xshell),则在连接设置中将端口号从默认的22修改为您配置的自定义端口即可。
Q2:如果不小心把自己锁在服务器外面(例如密钥丢失或配置错误),该如何找回权限?
A:如果是酷番云的云服务器用户,最直接有效的方法是登录酷番云控制台,使用网页版的VNC远程控制台,VNC连接直接绕过SSH层,相当于连接了服务器本地的显示器和键盘,通过VNC登录后,您可以检查/etc/ssh/sshd_config文件的配置是否正确,或者重置密码、重新上传公钥,从而恢复SSH访问权限。
服务器SSH配置并非一劳永逸,而是一个持续优化的过程。安全性与便捷性往往是一对矛盾体,但在服务器管理领域,安全性必须拥有最高优先级,通过上述的端口定制、密钥认证、权限分离以及云安全组的联动配置,您可以为服务器构建一套铜墙铁壁般的防护体系,如果您在配置过程中遇到任何问题,或者有更独家的运维技巧,欢迎在评论区分享您的经验,让我们共同探讨服务器安全的最优解。
图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/312759.html


评论列表(2条)
这篇文章的内容非常有价值,我从中学习到了很多新的知识和观点。作者的写作风格简洁明了,却又不失深度,让人读起来很舒服。特别是端口部分,给了我很多新的思路。感谢分享这么好的内容!
这篇文章的内容非常有价值,我从中学习到了很多新的知识和观点。作者的写作风格简洁明了,却又不失深度,让人读起来很舒服。特别是端口部分,给了我很多新的思路。感谢分享这么好的内容!