本文介绍如何修改 Windows 和 Linux 服务器的默认远程端口。

修改 Windows 服务器默认远程端口

本节以 Windows Server 2008 为例介绍如何修改 Windows 服务器默认远程端口。

  1. 远程连接并登录到 Windows 实例。
  2. 运行regedit.exe打开注册表编辑器。
  3. 找到如下注册表子项:HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp\PortNumber

    云服务器443端口开了但使用telnet无法打开端口 云服务器 端口_网络

     

    云服务器443端口开了但使用telnet无法打开端口 云服务器 端口_端口号_02

     
  4. 在弹出的对话框中,选择十进制,在数值数据中输入新的远程端口号,在本例中即 3399。单击确定。

    云服务器443端口开了但使用telnet无法打开端口 云服务器 端口_运维_03

     
  5. (可选)如果您开启了防火墙,需要将新的端口号添加到防火墙并设置允许连接。 具体方法参见设置 ECS 实例远程连接防火墙
  6. 登录 ECS管理控制台,找到该实例,选择更多 > 重启。

    云服务器443端口开了但使用telnet无法打开端口 云服务器 端口_网络_04

  7. 实例重新启动后,在实例的右侧单击管理,进入实例详情页面。选择本实例安全组。

    云服务器443端口开了但使用telnet无法打开端口 云服务器 端口_网络_05

  8. 在安全组列表页面,找到相应的安全组,单击配置规则。
  9. 在安全组规则页面,单击添加安全组规则。根据实际的使用场景来定义安全规则,允许新配置的远程端口进行连接。关于如何设置安全组参见添加安全组规则

    云服务器443端口开了但使用telnet无法打开端口 云服务器 端口_开发工具_06

     
  10. 以上步骤完成后,远程访问服务器,在远程地址后面添加新远程端口号即可连接实例。例如:192.168.1.2:3399。

    云服务器443端口开了但使用telnet无法打开端口 云服务器 端口_服务器_07

     
    说明 调整 3389 端口后,使用 Mac 的远程桌面连接客户仅支持默认的 3389 端口。

修改 Linux 服务器默认远程端口


本节以 CentOS 6.8 为例介绍如何修改 Linux 服务器默认远程端口。

说明 不要直接修改 22 端口,先添加需要的默认远程端口。之所以先设置成两个端口,测试成功后再关闭一个端口,是为了防止在修改配置文件及网络调试过程中,万一出现新端口无法连接的情况下,还能通过 22 端口进行登录调试。

  1. 远程连接并登录到 Linux 实例。
  2. 运行 vim /etc/ssh/sshd_config 命令。
  3. 在键盘上按“I”键,进入编辑状态。添加新的远程服务端口,本节以 1022 端口为例。在Port 22下输入Port 1022。
  4. 在键盘上按“Esc”,输入:wq退出编辑状态。
  5. 执行以下命令重启实例,之后您可以通过 22 端口和 1022 端口 SSH 登录到 Linux 实例。 /etc/init.d/sshd restart
  6. (可选)配置防火墙。使用 CentOS 7 以前的版本并开启默认防火墙 iptables 时,应注意 iptables 默认不拦截访问,如果您配置了 iptables 规则,需要执行iptables -A INPUT -p tcp --dport 1022 -j ACCEPT配置防火墙。然后执行service iptables restart 重启防火墙。 说明 CentOS 7 以后版本默认安装 Firewalld。如果您已经启用 firewalld.service,需要放行 TCP 1022 端口:运行命令 firewall-cmd --add-port=1022/tcp --permanent。返回结果为 success 即表示已经放行 TCP 1022 端口。
  7. 登录 ECS管理控制台,找到该实例,选择管理。
  8. 进入实例详情页面。选择本实例安全组。

    云服务器443端口开了但使用telnet无法打开端口 云服务器 端口_网络_05

  9. 在安全组列表页面,找到相应的安全组,单击配置规则。
  10. 在安全组规则页面,单击添加安全组规则。根据实际的使用场景来定义安全规则,允许新配置的远程端口进行连接。关于如何设置安全组参见添加安全组规则
  11. 使用 SSH 工具连接新端口,来测试是否成功。登录时在 Port 一栏输入新修改的端口号,在本例中即 1022。

    云服务器443端口开了但使用telnet无法打开端口 云服务器 端口_网络_09

     
  12. 使用 1022 端口连接成功后,再次运行vim /etc/ssh/sshd_config命令,将 Port 22 删除。
  13. 运行 /etc/init.d/sshd restart 命令重启实例,服务器默认远程端口修改完成。再次登录时使用新端口号登录即可。