SSH 远程登录端口(远程登录端口)相关操作汇总

admin2025-09-14
 一、查看SSH远程登录端口相关信息查看SSH服务配置的端口(即当前远程登录使用的端口,默认22):grep-i"port"/etc/ssh/sshd_config。执行后,未带#注释的“PortXXX”...

 

一、查看 SSH 远程登录端口相关信息

  1. 查看 SSH 服务配置的端口(即当前远程登录使用的端口,默认 22):grep -i "port" /etc/ssh/sshd_config。执行后,未带 #注释的 “Port XXX” 对应的 XXX 就是当前配置的远程登录端口,带 #的是默认注释项,无需关注。
  2. 查看 SSH 端口实际监听状态(确认端口是否正常运行、是否能接收连接):ss -tuln | grep -E "ssh|22"。其中 - t 表示只看 TCP 端口(远程登录用 TCP),-u 看 UDP(可忽略),-l 看正在监听的端口,-n 显示端口号(不显示服务名),grep 过滤 SSH 相关或默认 22 端口的结果,输出中 “LISTEN” 开头且包含端口号的行,说明该端口正在正常监听。
  3. 若系统未安装 ss 命令(较少见),先安装 net-tools 工具:yum install -y net-tools(CentOS/RHEL 系统)或 apt install -y net-tools(Ubuntu/Debian 系统),再用 netstat 查看监听状态:netstat -tuln | grep -E "ssh|22",结果含义与 ss 命令一致。
  4. 查看 SSH 服务当前运行状态(间接确认端口是否可用):systemctl status sshd(CentOS/RHEL 系统)或 systemctl status ssh(Ubuntu/Debian 系统),输出中 “active (running)” 表示服务正常运行,若服务异常,端口也无法正常使用。


 

二、修改 SSH 远程登录端口(默认 22,自定义需改)

  1. 编辑 SSH 服务配置文件:vi /etc/ssh/sshd_config(vi 编辑器)或 nano /etc/ssh/sshd_config(nano 编辑器,更简单)。
  2. 找到端口配置行:在文件中查找 “Port” 相关内容,默认是 “Port 22”,若前面有 #,先删除 #取消注释,再将 22 改为自定义端口(需选 1024-65535 之间未被占用的端口,如 1234)。
  3. 保存并退出编辑器:vi 编辑器按 Esc 键,输入:wq 后按回车;nano 编辑器按 Ctrl+O 保存,再按 Ctrl+X 退出。
  4. 检查配置文件是否有误(避免改后服务启动失败):sshd -t,若执行后无任何输出,说明配置正确;若有错误提示,需重新编辑配置文件修正。
  5. 重启 SSH 服务使新端口生效:systemctl restart sshd(CentOS/RHEL 系统)或 systemctl restart ssh(Ubuntu/Debian 系统)。
  6. 开放新端口的防火墙规则(否则外部无法通过新端口连接):firewall-cmd --add-port=XXX/tcp --permanent(将 XXX 换成自定义的新端口,如 1234),执行后再刷新防火墙:firewall-cmd --reload。
  7. 验证新端口是否生效:ss -tuln | grep XXX(XXX 为新端口),若有 “LISTEN” 开头的行,说明新端口已正常监听;同时建议保持当前 SSH 连接不变,用新窗口通过新端口测试登录(如 ssh 用户名 @服务器 IP -p XXX),确认能登录再关闭原连接,防止配置错误导致无法远程。


 

三、SSH 服务及端口相关问题检测与修复

  1. 检测 SSH 配置文件语法错误:sshd -t,有错误会提示具体问题(如端口号格式错误、配置项写错),无错误则无输出,需根据提示修正配置文件。
  2. 检测端口是否被占用(避免改端口时选到已用端口):ss -tuln | grep XXX(XXX 为要检查的端口),若有输出说明端口已被占用,需换其他端口;若无输出则端口可用。
  3. 重启 SSH 服务(端口配置修改后、服务异常时需执行):systemctl restart sshd(CentOS/RHEL)或 systemctl restart ssh(Ubuntu/Debian),重启后需验证服务状态和端口监听情况。
  4. 停止 SSH 服务(特殊场景,如临时维护,不建议日常操作):systemctl stop sshd(CentOS/RHEL)或 systemctl stop ssh(Ubuntu/Debian),停止后无法远程登录,需在服务器本地启动服务。
  5. 设置 SSH 服务开机自启(确保服务器重启后远程登录端口能自动生效):systemctl enable sshd(CentOS/RHEL)或 systemctl enable ssh(Ubuntu/Debian),执行后重启服务器测试,确认 SSH 服务能自动启动、端口正常监听。


 

四、补充说明

SSH 远程登录端口默认是 22,修改端口可提高安全性(减少暴力破解),但需注意:自定义端口需在 1024-65535 之间,且需开放对应防火墙端口;所有操作需用 root 权限执行(若当前是普通用户,需先执行 su root 切换到 root);操作过程中务必保留一个正常的 SSH 连接,避免配置错误导致远程失联。
远程登录端口 SSH端口
评论
请先登录再发表评论!