SSH配置服务器怎么弄?SSH服务器配置步骤有哪些

SSH 配置是保障服务器远程管理安全与效率的基石。无论你是首次接触云服务器的新手,还是需要优化生产环境的运维工程师,掌握一套正确、安全的 SSH 配置方案,都能直接降低被暴力破解与未授权访问的风险,本文将从基础连接、密钥认证、安全加固到实用调优,为你提供一套完整可落地的配置指南,并融入酷番云服务器环境下的实战经验,帮助你一步到位完成配置。

核心结论:用密钥认证 + 禁用密码登录 + 修改默认端口

在绝大多数场景下,最安全的 SSH 配置组合是:生成强密钥对、将公钥部署到服务器、关闭密码认证、并将 SSH 端口从 22 改为高位端口,这套方案能抵御 99% 的自动化扫描攻击,同时保持连接体验流畅,以下所有配置均可在 CentOS、Ubuntu、Debian 等主流 Linux 发行版上直接执行。

第一步:基础连接与首次配置

拿到服务器后,先通过密码方式登录,确认网络与端口连通:

ssh root@你的服务器IP

登录成功后,立即执行系统更新(Ubuntu/Debian 用 apt update && apt upgrade -y,CentOS/RHEL 用 yum update -y),然后检查 SSH 服务状态:

systemctl status sshd

确保服务正常,再开始后续配置。不建议在未配置密钥前直接修改端口,以免意外锁死自己。

第二步:生成密钥对并部署公钥

本地电脑(非服务器)生成 RSA 或 Ed25519 密钥对,推荐使用 Ed25519,它的安全性更高且密钥更短。

ssh-keygen -t ed25519 -C "your_email@example.com"

一路回车即可,默认生成在 ~/.ssh/id_ed25519

SSH配置服务器怎么弄?SSH服务器配置步骤有哪些

~/.ssh/id_ed25519.pub,然后将公钥复制到服务器:

ssh-copy-id -i ~/.ssh/id_ed25519.pub root@你的服务器IP

如果没有 ssh-copy-id,可手动追加:

cat ~/.ssh/id_ed25519.pub | ssh root@你的服务器IP "mkdir -p ~/.ssh && chmod 700 ~/.ssh && cat >> ~/.ssh/authorized_keys && chmod 600 ~/.ssh/authorized_keys"

之后用密钥登录测试:

ssh -i ~/.ssh/id_ed25519 root@你的服务器IP

第三步:修改 SSH 配置文件加固安全

编辑服务器上的 /etc/ssh/sshd_config,建议先备份:

cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

然后修改如下关键项:

Port 2222                 # 修改默认端口,避免被扫描
PermitRootLogin no        # 禁止 root 直接登录,用普通用户 + sudo
PubkeyAuthentication yes  # 开启公钥认证
PasswordAuthentication no # 关闭密码认证,防止暴力破解
ChallengeResponseAuthentication no
UsePAM no
MaxAuthTries 3            # 限制最大认证尝试次数
LoginGraceTime 20         # 登录超时秒数
AllowUsers youruser       # 仅允许指定用户登录,多个用空格分隔

修改完成后检查语法并重载:

sshd -t
systemctl reload sshd

务必在一个已连接会话中测试新端口和密钥登录,确认无误后再断开旧连接,避免失联。

第四步:创建普通用户并赋予 sudo 权限

出于安全惯例,日常操作不应使用 root,创建一个普通用户:

adduser youruser
usermod -aG sudo youruser   # Ubuntu/Debian
# 或者 usermod -aG wheel youruser  # CentOS/RHEL

SSH配置服务器怎么弄?SSH服务器配置步骤有哪些

然后将公钥复制到新用户的 authorized_keys 中,之后所有 SSH 登录都使用该用户,需要管理员权限时用 sudo

第五步:防火墙与端口放行

修改端口后,务必在防火墙中放行新端口,以 UFW 为例:

ufw allow 2222/tcp
ufw delete allow 22/tcp
ufw reload

云服务商的安全组也需要同步更改。酷番云经验案例:在酷番云控制台的安全组中,我们通常建议将入方向规则设置为“仅允许指定 IP 访问 SSH 端口”,比如只放行你公司的固定出口 IP,这样做即使 SSH 密钥泄露,外部攻击者也无法从其他 IP 发起连接,结合酷番云的高防云服务器,还能自动拦截 SYN Flood 等 DDoS 攻击,让 SSH 服务更稳定。

第六步:进阶优化SSH 会话保活与多因素认证

会话保活

经常遇到 SSH 长时间无操作断开,可以修改客户端 ~/.ssh/config

Host myserver
    HostName 你的服务器IP
    Port 2222
    User youruser
    IdentityFile ~/.ssh/id_ed25519
    ServerAliveInterval 60
    ServerAliveCountMax 3

服务端在 sshd_config 中也可设置:

ClientAliveInterval 60
ClientAliveCountMax 3

多因素认证(可选)

如果对安全要求极高,可以安装 Google Authenticator 插件,在密码(或密钥)之外增加动态验证码,配置步骤:

apt install libpam-google-authenticator
google-authenticator

然后在 /etc/pam.d/sshd 增加一行,并在 sshd_config 中设置 AuthenticationMethods publickey,keyboard-interactive,这样即使密钥泄露,没有手机验证码也无法登录。

SSH配置服务器怎么弄?SSH服务器配置步骤有哪些

第七步:常见问题排查

  • 连接超时:检查安全组防火墙端口是否放行,服务端 sshd 是否监听新端口(netstat -tlnp | grep ssh)。
  • Permission denied (publickey):确认公钥内容与权限,~/.ssh 目录必须为 700,authorized_keys 必须为 600。
  • 登录后立即断开:大概率是 UserPAM 配置冲突,尝试将 UsePAM no 并重载。
  • 找不到 sshd_config:部分系统使用 /etc/ssh/sshd_config,若使用容器或特殊发行版,可用 sshd -T 查看实际生效配置。

相关问答

问:修改 SSH 端口后,如何防止自己忘记新端口导致无法登录?

:建议先在本地维护一个 ~/.ssh/config 文件,为每个服务器配置好主机别名和端口,这样登录时只需输入 ssh myserver,无需记忆端口,同时在服务器安全组中临时保留旧端口放行规则,待新端口稳定运行一周后再删除。更保险的方法是添加定时任务(cron)自动备份 SSH 配置文件到本地,一旦出错可快速恢复。

问:密钥认证和密码认证能同时开启吗?为什么推荐只留密钥?

:可以同时开启,但不推荐,同时开启意味着攻击者仍有尝试密码的通道,暴力破解工具(如 Hydra)依然可能猜中弱密码。关闭密码认证后,即使没有密钥文件,任何密码尝试都会被拒绝,从根源上杜绝暴力破解,如果你担心丢失密钥,可以将私钥加密存储(生成时设置口令),并使用硬件安全密钥或密码管理器保管,这样安全性远高于同时开启密码认证。

图片来源于AI模型,如侵权请联系管理员。作者:酷小编,如若转载,请注明出处:https://www.kufanyun.com/ask/776792.html

(0)
上一篇 2026年9月3日 13:37
下一篇 2026年9月3日 13:40

相关推荐

  • 配置紧固件如何选择?配置紧固件怎么选

    配置紧固件是机械装配与工业设备安全运行的基石,其选型、扭矩设定及材质匹配直接决定结构可靠性,核心结论:只有将紧固件配置从经验依赖转向数据驱动,并借助云平台实现全生命周期管理,才能根本消除松动、断裂等隐患,提升设备综合效率,紧固件配置的三大核心要素规格匹配是基础,螺纹直径、螺距、长度必须与连接件孔位精确对应,过盈……

    2026年7月19日
    0624
  • cocos2d怎么配置?cocos2d环境搭建教程

    Cocos2d-x作为一款成熟的开源跨平台游戏引擎,其配置环节直接决定了项目后期的编译效率、运行性能以及包体大小,高效且规范的Cocos2d配置,核心在于精准管理环境依赖、深度优化编译参数以及合理规划资源策略,这不仅是项目能够顺利构建的基础,更是保障游戏在多终端流畅运行的关键壁垒, 许多开发者往往忽视初始配置的……

    2026年4月6日
    02773
    • 服务器间歇性无响应是什么原因?如何排查解决?

      根源分析、排查逻辑与解决方案服务器间歇性无响应是IT运维中常见的复杂问题,指服务器在特定场景下(如高并发时段、特定操作触发时)出现短暂无响应、延迟或服务中断,而非持续性的宕机,这类问题对业务连续性、用户体验和系统稳定性构成直接威胁,需结合多维度因素深入排查与解决,常见原因分析:从硬件到软件的多维溯源服务器间歇性……

      2026年1月10日
      020
  • 联想x100e笔记本配置怎么样,联想x100e配置参数如何

    联想x100e笔记本配置定位基础,但通过升级与云化可焕发新生联想x100e作为早期上网本代表,搭载AMD平台与11.6英寸屏幕,核心配置在如今看来已属入门,但凭借轻巧机身和低功耗设计,在特定场景下仍有可用价值,通过内存升级、固态硬盘更换以及结合酷番云远程桌面服务,能够将这台老旧设备转化为轻量级云终端,满足文档处……

    2026年8月17日
    0511
  • centos7 yum配置本地源,centos7怎么配置本地yum源

    在CentOS 7系统中,配置YUM本地源是提升软件包管理效率、解决网络依赖瓶颈以及保障系统稳定性的关键举措,核心结论在于:通过挂载系统镜像或ISO文件构建本地仓库,不仅能规避外网带宽限制带来的下载延迟,还能在无网络环境下确保软件安装与系统更新的顺利进行,是企业级运维中不可或缺的基础优化技能, 相比于公网源,本……

    2026年3月31日
    03575

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注