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

前提条件

使用本教程进行操作前,请确保您已经注册了阿里云账号。如还未注册,请先完成账号注册

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

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

  1. 远程连接并登录到Windows实例。具体操作,请参见连接Windows实例
  2. 修改注册表子项PortNumber的值。
    1. 按快捷键 Win(Windows 徽标键)+R,启动运行窗口。
    2. 输入regedit.exe后按回车键打开注册表编辑器。。
    3. 在左侧导航栏,单击HKEY_LOCAL_MACHINE > System > CurrentControlSet > Control > Terminal Server > WinStations > RDP-Tcp
    4. 在右侧列表中找到注册表子项PortNumber并右键单击,选择修改
    5. 在弹出的对话框中,在数值数据的文本框中输入新的远程端口号,在本示例中即3399。在基数区域单击十进制,然后单击确定

      修改DWORD值
  3. 可选: 如果您开启了防火墙,需要将新的端口号添加到防火墙并设置允许连接。
  4. 在ECS管理控制台重启ECS实例。具体操作,请参见重启实例
  5. 为该实例添加安全组规则,允许新配置的远程端口进行连接。具体操作,请参见添加安全组规则
  6. 远程访问服务器,在远程地址后面添加新远程端口号即可连接实例。例如:192.168.1.2:3399。

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

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

本节以CentOS 6.8为例介绍如何修改Linux服务器默认远程端口。
说明 不要直接修改22端口,先添加需要的默认远程端口。之所以先设置成两个端口,测试成功后再关闭一个端口,是为了在修改配置文件及网络调试过程中,万一新端口无法连接,还能通过22端口进行登录调试。
  1. 远程连接并登录到Linux实例。具体操作,请参见连接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,需要运行命令firewall-cmd --add-port=1022/tcp --permanent放行TCP 1022 端口。返回结果为success即表示已经放行TCP 1022端口。
  7. 为该实例添加安全组规则,允许新配置的远程端口进行连接。具体操作,请参见添加安全组规则
  8. 使用SSH工具连接新端口,来测试是否成功。
    1. 登录时在Port文本框中输入修改后的端口号,在本示例中即1022。

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