服务器SSH登录配置需要注意什么?, 怎么设置

配置服务器SSH登录的核心是修改sshd_config文件、启用密钥认证并禁用密码登录,同时配合防火墙规则限制访问来源。

下面我从零开始,一步步带你完成SSH登录配置,包括基础安装、密钥设置、云服务器差异以及安全强化。

10分钟手把手教你通过SSH,使用密钥/账号远程登录Linux服务器(Windows/macOS)
加载中
10分钟手把手教你通过SSH,使用密钥/账号远程登录Linux服务器(Windows/macOS)

如何配置SSH登录服务器?从基础到安全

安装并启动SSH服务

大多数Linux服务器默认安装OpenSSH,可以通过以下命令检查状态:

sudo systemctl status sshd

如果未安装,使用包管理器安装:

  • Debian/Ubuntu:sudo apt update && sudo apt install openssh-server
  • CentOS/RHEL:sudo yum install openssh-server

安装后,启动服务并设置开机自启:

sudo systemctl start sshd
sudo systemctl enable sshd

创建普通用户并配置sudo权限

为了安全,建议不要直接使用root操作,创建一个普通用户:参考2

sudo adduser myuser

并赋予sudo权限(Ubuntu):

sudo usermod -aG sudo myuser

CentOS将用户加入wheel组:

sudo usermod -aG wheel myuser

修改sshd_config文件

核心配置文件是/etc/ssh/sshd_config,修改前备份:

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

使用编辑器打开,修改以下参数:

  • Port 22 → 改为自定义端口,如Port 2222,减少被扫描风险。
  • PermitRootLogin yes → 改为PermitRootLogin no,禁止root直接登录。
  • PasswordAuthentication yes → 暂时保持yes,等密钥配置好后改为no。
  • PubkeyAuthentication yes → 确保启用。

修改后,用sudo sshd -t检查语法是否正确,然后重启服务:

sudo systemctl restart sshd

配置防火墙或安全组

如果服务器使用防火墙,需要放行新端口:

  • 使用ufw(Ubuntu):sudo ufw allow 2222/tcp
  • 使用firewalld(CentOS):sudo firewall-cmd --permanent --add-port=2222/tcp && sudo firewall-cmd --reload
  • 使用iptables:sudo iptables -A INPUT -p tcp --dport 2222 -j ACCEPT(注意保存规则)

如果是云服务器,还需要在安全组添加入站规则,允许自定义TCP端口。

服务器SSH登录配置需要注意什么?, 怎么设置

测试连接

从客户端执行:

ssh -p 2222 myuser@your_server_ip

如果成功,基础配置完成,如果连接失败,检查防火墙是否放行,以及sshd是否正常运行。

使用SSH Config文件简化连接

在客户端创建~/.ssh/config,配置:

Host myserver
    HostName your_server_ip
    Port 2222
    User myuser
    IdentityFile ~/.ssh/id_ed25519

之后只需执行ssh myserver即可连接,不需要每次输入IP和端口。

SSH登录服务器密钥配置与密码配置对比

密码登录虽然简单,但安全性较低,密钥认证使用公钥和私钥,安全性更高。

生成密钥对

在客户端执行:

ssh-keygen -t ed25519 -a 100

也可以使用RSA:ssh-keygen -t rsa -b 4096,建议设置密码短语(passphrase),为私钥增加一层保护。参考2

部署公钥

使用ssh-copy-id将公钥复制到服务器:

ssh-copy-id -i ~/.ssh/id_ed25519.pub -p 2222 myuser@your_server_ip

如果该命令不可用,手动复制公钥内容到服务器~/.ssh/authorized_keys文件,并设置权限600

测试密钥登录

执行:

ssh -p 2222 myuser@your_server_ip

如果无需密码直接登录,说明密钥认证成功,此时可以禁用密码登录:在sshd_config中设置PasswordAuthentication no,重启服务。

密钥管理注意事项

  • 私钥文件权限必须为600,否则SSH会拒绝使用。
  • 建议使用密码短语保护私钥,但每次使用需要输入,可以用ssh-agent缓存。
  • 如果私钥丢失,需要重新生成并部署新公钥,同时移除旧公钥。
  • 多个服务器可以复用同一个密钥对,但建议每个服务器使用不同密钥,便于撤销。

对比分析

服务器SSH登录配置需要注意什么?, 怎么设置

特性 密码认证 密钥认证
安全性 较低,易受暴力破解 较高,依赖密钥文件
便利性 记住密码即可 需要管理密钥文件
配置难度 无需额外配置 需要生成和部署密钥
推荐场景 临时、低安全环境 生产环境、高安全要求

行业共识认为,密钥认证应作为SSH登录的首选方式,多数情况下,使用密钥认证能显著降低被入侵的风险。

云服务器SSH登录配置实战

云服务器厂商如简米云、酷番云、AWS,在创建实例时通常提供密钥对选项,如果选择密钥对,会自动配置公钥,你只需下载私钥,初次登录时:

ssh -i /path/to/private_key -p 22 user@public_ip

安全组配置

云服务器安全组相当于虚拟防火墙,需要添加入站规则:

  • 简米云:在安全组中,添加自定义TCP,端口为你的SSH端口,授权对象为你的IP(如x.x.x.x/32)。
  • 酷番云:类似,添加规则,来源为你的IP,协议端口为TCP:22(或自定义端口)。
  • AWS:在安全组中,添加入站规则,类型为SSH,源为你的IP。

如果修改了端口,记得同步更新安全组规则。

SSH连接排查步骤

当连接失败时,按以下顺序排查:

  • 检查安全组规则是否放行了端口。
  • 检查服务器防火墙是否放行,sudo ufw statussudo firewall-cmd --list-all
  • 检查SSH服务状态:sudo systemctl status sshd
  • 检查密钥文件权限:ls -l ~/.ssh/id_ed25519,应为-rw-------
  • 查看认证日志:sudo tail -f /var/log/auth.log,定位具体错误。

使用fail2ban防护

fail2ban能自动阻止多次失败的登录尝试,安装:

sudo apt install fail2ban  # Ubuntu
sudo yum install fail2ban  # CentOS

配置/etc/fail2ban/jail.local,添加:参考2

[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
bantime = 3600

重启fail2ban:sudo systemctl restart fail2ban,这样,多次尝试登录失败的用户会被暂时封禁。

业内专家指出,云服务器安全配置中,SSH管理是重中之重,建议使用密钥认证并配合fail2ban等工具。

国内服务器SSH登录配置常见问题与优化

国内服务器用户常面临的问题包括:默认端口22被频繁扫描,弱密码容易被攻破,网络不稳定导致连接断开。

服务器SSH登录配置需要注意什么?, 怎么设置

更换端口

修改sshd_config中的Port为不常用端口,如2222、10022等,同时更新防火墙和安全组规则。

限制IP访问

通过防火墙只允许你信任的IP连接:

sudo iptables -A INPUT -p tcp --dport 2222 -s your_ip -j ACCEPT
sudo iptables -A INPUT -p tcp --dport 2222 -j DROP

使用ufw:sudo ufw allow from your_ip to any port 2222 proto tcp

使用AllowUsers

在sshd_config中添加:

AllowUsers myuser

只允许特定用户登录,其他用户即使有密钥也无法连接。

配置KeepAlive

避免空闲连接断开:

ClientAliveInterval 60
ClientAliveCountMax 3

常见误区

  • 误认为修改端口后就绝对安全,实际上还需要禁用密码登录和限制IP。
  • 只使用密钥但忘记设置私钥权限,导致登录失败。
  • 修改sshd_config后未重启服务,导致配置不生效。

综合优化

建议同时启用密钥认证、禁用密码登录、更换端口、限制IP,如果考虑SSH登录服务器配置价格,这些措施几乎零成本,但能大幅提升安全性。

国内服务器如果使用云厂商,Web控制台通常提供远程连接功能,可以作为应急备用通道。

SSH登录服务器配置常见问题解答

问题1:SSH登录失败,提示”Permission denied (publickey)”怎么办?
检查公钥是否已添加到authorized_keys,确认sshd_config中PubkeyAuthentication设为yes,并重启服务,私钥文件权限必须为600,且所属用户正确。

问题2:我改了端口后SSH连不上了,如何处理?
如果当前会话还在,不要退出,先测试新端口,如果已断开,通过云控制台VNC或物理控制台登录,检查sshd_config错误或防火墙是否放行,建议保留至少一个管理通道。

问题3:密码登录和密钥登录哪个更便宜?
从直接成本看,两者均无额外费用,但密钥登录能避免因密码泄露导致的数据损失,长期来看性价比更高,多数情况下,推荐使用密钥登录。

通过以上配置,你的服务器SSH登录将更加安全可靠,检查你的服务器,确保配置符合最佳实践,避免因配置不当带来的风险。

首发原创文章,作者:王坚‌,如若转载,请注明出处:https://test.idctop.com/article/527460.html

(0)
服务器存储价格主要由哪些因素决定,怎么选择更划算?
上一篇 2026年7月29日 05:05
戴尔服务器128g内存2tb硬盘多少钱一台,值得买吗
下一篇 2026年7月29日 05:07

相关推荐

  • 广州与上海服务器地域选择,究竟哪个更优?有何差异与考量?

    选择服务器部署在广州还是上海?这绝非简单的“二选一”,而是需要深入理解两地作为中国互联网核心枢纽的独特优势、差异点,并结合您的具体业务需求、用户分布、成本预算及合规要求进行综合决策的核心战略问题,两地犹如中国数字经济的“双子引擎”,共同驱动着庞大的在线生态,但引擎的调校方向各有侧重, 物理位置:网络时延的基石广……

    2026年2月5日
    18330
  • 大模型读综述命令怎么用?大模型读综述指令详解

    大模型读综述命令的核心价值在于“精准引导”而非“简单提问”,直接扔给大模型一篇几万字的PDF并要求“总结全文”,是效率最低的使用方式,真正的专业用法,是将大模型视为一个需要明确指令的“研究助理”,通过结构化的命令框架,强制模型激活深度推理能力,从而提取出高密度的知识图谱,关于大模型读综述命令,说点大实话,大多数……

    2026年3月4日
    17000
  • CDN行业如何选择服务商?,cdn加速哪家便宜

    2026年,CDN行业已从单纯的内容加速演进为集边缘计算、安全防护与智能调度于一体的数字基础设施,企业选型需综合考量性能、安全与成本三大维度,其中边缘AI与零信任架构成为关键分水岭,2026年CDN行业核心趋势与市场格局市场规模与增长数据根据IDC 2026年第一季度报告,全球CDN市场规模突破350亿美元,同……

    2026年7月22日
    1800
  • 大模型比赛创意陈述好用吗?大模型比赛创意陈述实际效果和使用感受

    大模型生成的创意陈述在真实项目中具备显著效率优势,但需人工深度介入才能保障质量;经过半年实测,其可用性呈“高起点、中上限、低下限”特征——工具本身强大,但成败关键在使用者的领域经验与编辑能力,为什么我们先用大模型写创意陈述?传统创意陈述撰写耗时:平均3–5天/份(含调研、脑暴、撰写、修改)人工瓶颈明显:资深创意……

    2026年4月15日
    6400
  • 阿里云cdn加速181,阿里云cdn加速181

    阿里云CDN加速181并非官方标准产品型号,而是指代阿里云CDN服务在2026年针对高并发、低延迟场景下的核心加速策略或特定计费/配置代码,其核心结论是:通过智能调度与边缘计算深度融合,实现全球99.99%可用性及毫秒级响应,是当前企业出海及国内高流量业务的首选基础设施,在2026年的数字生态中,网络加速已不再……

    2026年5月26日
    6000
  • 营业执照cdn是什么,营业执照cdn怎么配置

    营业执照CDN加速并非独立产品,而是指将营业执照等静态资质文件部署至CDN节点以提升访问速度,但鉴于其涉及敏感隐私与合规风险,2026年主流合规实践强烈建议采用私有化存储或加密链接方案,而非直接公开加速,营业执照CDN的技术逻辑与合规边界在数字化转型深水区,企业官网加载速度直接影响转化率,但资质文件的处理需严守……

    2026年5月27日
    4800
  • Cloudflare免费CDN怎么设置?如何配置CDN加速

    Cloudflare免费版CDN设置的核心在于通过DNS解析将流量指向其全球节点,实现静态资源加速、基础WAF防护及HTTPS加密,无需额外付费即可显著提升网站打开速度与安全性,对于许多个人站长、初创企业以及小型博客运营者而言,服务器带宽昂贵且物理距离导致的延迟是长期痛点,Cloudflare作为全球领先的边缘……

    2026年6月28日
    3000
  • socket.io cdn怎么用?socket.io cdn引入报错怎么解决

    使用Socket.IO CDN是解决实时通信延迟和服务器带宽压力的最佳方案,它能通过全球节点分发静态资源,显著降低首屏加载时间并提升WebSocket连接的稳定性,在构建实时应用时,开发者往往面临一个痛点:如何在保证低延迟的同时,避免将宝贵的服务器带宽浪费在静态资源的传输上,传统的做法是将Socket.IO客户……

    2026年6月12日
    3310
  • 服务器学生个人申请怎么操作?学生云服务器购买条件

    2026年服务器学生个人申请的核心在于精准匹配实名认证资质、选对厂商教育专属通道并把控轻量级配置成本,零门槛拿下高性价比云资源,为何2026年学生申请云服务器成为刚需算力下沉与AI原住民的实战需求根据中国信通院2026年云计算发展白皮书显示,超过78%的高校理工科课题要求独立部署测试环境,从大模型微调到分布式系……

    2026年4月28日
    5400
  • cdn质量差怎么办,cdn加速

    2026年CDN质量的核心评判标准已从单一的“节点数量”转向“智能调度精度”与“边缘计算协同能力”,选择CDN需综合考量延迟稳定性、安全防御深度及性价比,而非盲目追求低价或大厂品牌,在数字化转型进入深水区的2026年,内容分发网络(CDN)已不再仅仅是加速工具,而是企业数字基础设施的“神经末梢”,随着AI生成内……

    2026年6月30日
    2500

发表回复

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