有奖捉虫:云通信与企业服务文档专题,速来> HOT
文档中心 > 云服务器 > 运维指南 > 其他 > 修改云服务器远程默认端口

操作场景

由于使用系统默认端口的风险较大,容易被攻击软件扫描以及攻击,为避免因端口攻击而无法远程连接云服务器,您可将云服务器默认远程端口修改为不常见的端口,提高云服务器的安全性。
修改服务端口需在安全组规则与云服务器中进行同步修改,才能使该端口的修改正式生效。如下操作将为您介绍如何修改云服务器的默认远程端口。请根据云服务器操作系统类型,选择不同的修改方式:

操作步骤

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

说明
如下操作以 Windows Server 2012 操作系统为例,由于操作系统版本和语言不同,详细操作步骤略有区别。
2. 在操作系统界面中,单击

,打开 Windows PowerShell 窗口。
3. Windows PowerShell 窗口中,输入 regedit,按 Enter,打开注册表编辑器窗口。
4. 在左侧的注册表导航中,依次展开 HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Control > Terminal Server > Wds > rdpwd > Tds > tcp 目录。
5. 
找到 tcp 中的 PortNumber
,并将 PortNumber 数据(即3389端口号)修改为1024-65535之间未被占用端口。如下图所示:


6. 在左侧的注册表导航中,依次展开 HKEY_LOCAL_MACHINE > SYSTEM > CurrentControlSet > Control > Terminal Server > WinStations > RDP-Tcp 目录。
7. 找到 RDP-Tcp中的 PortNumber,并将 RDP-Tcp 中的 PortNumber 数据(端口号)修改为与 tcp 中的 PortNumber 数据(端口号)一致的端口号。


8. (可选)如果您的云服务器开启了防火墙,需将新的端口添加至防火墙并设置允许连接:
8.1 Windows PowerShell 窗口中,输入 wf.msc,按 Enter,打开 “高级安全 Windows 防火墙” 窗口。
8.2 高级安全 Windows 防火墙窗口中,选择入站规则,单击新建规则。如下图所示:


8.3 新建入站规则向导窗口的 规则类型步骤中,选择端口,单击下一步
8.4 新建入站规则向导窗口的协议和端口步骤中,选择 TCP,并将特定本地端口填写为 步骤5 设置的端口号,单击下一步。如下图所示:


8.5 新建入站规则向导窗口的操作步骤中,选择允许连接,单击下一步
8.6 新建入站规则向导窗口的配置文件步骤中,使用默认配置即可,单击下一步
8.7 新建入站规则向导窗口的名称步骤中,填写规则名称,单击完成
9. 在 Windows PowerShell 窗口中,输入 services.msc,按 Enter,打开 服务 窗口。
10. 服务 窗口中,找到 Remote Desktop Services,并右键单击 Remote Desktop Services,选择重新启动,重启远程登录服务。
11. 参见 修改安全组规则,将协议端口为 TCP:3389 的安全组规则修改为 步骤5 设置的端口号。



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

说明
在修改 Linux 云服务器默认远程端口前,建议您先添加 SSH 端口号,并测试新的端口号可以成功连接云服务器,再删除默认的22端口。避免新的端口号无法连接时,仍可使用默认的22端口连接云服务器。
如下操作以 CentOS 7.3 操作系统为例,由于操作系统版本和语言不同,详细操作步骤略有区别。
2. 执行如下命令,修改配置文件。
vim /etc/ssh/sshd_config
3. 
i 切换至编辑模式
,增加新端口内容,在 #Port 22 下新增一行 Port 新端口号,建议把 Port 22 的注释删除(即删除前面的#,因为 openssh 实现设置监听 socket 最大是16,为了避免多余端口造成的消耗,建议将不用的端口注释掉)。如下图所示: 例如 Port 23456


4. Esc,输入 :wq,保存内容并返回。
5. 执行如下命令,使配置修改后生效。
systemctl restart sshd.service
6. (可选)配置防火墙。
CentOS 7 以前版本的 Linux 云服务器默认使用 iptables 服务作为防火墙。如果云服务器配置了 iptables 规则,则需要执行如下操作配置防火墙:
6.1.1 执行如下命令,配置防火墙。
iptables -A INPUT -p tcp --dport 新端口号 -j ACCEPT
例如,新端口号为23456,则执行如下命令:
iptables -A INPUT -p tcp --dport 23456 -j ACCEPT
6.1.2 执行如下命令,重启防火墙。
service iptables restart
CentOS 7 及以后版本的 Linux 云服务器默认使用 Firewalld 服务作为防火墙。如果云服务器已经启用 firewalld.service,则需要执行如下操作配置防火墙: 执行如下命令,放行 步骤3 新增的端口号。
firewall-cmd --add-port=新端口号/tcp --permanent
例如,新增的端口号为23456,则执行如下命令:
firewall-cmd --add-port=23456/tcp --permanent
返回结果为 success 即表示放行成功。
7. 参见 修改安全组规则,将协议端口为 TCP:22 的安全组规则修改为 步骤3 新增的端口号。



验证操作

Windows 云服务器的验证

1. 以本地计算机为 Windows 操作系统为例,打开远程桌面连接对话框。
2. 计算机后面,输入 Windows 服务器的公网 IP:修改后的端口号,单击连接。如下图所示:


3. 根据界面提示,输入实例的管理员账号和密码,单击确定。 进入 Windows 云服务器的操作系统界面,即表示连接登录成功。
说明
如果您使用 RDP 文件登录 Windows 云服务器,请先修改 RDP 文件中的 full address:s 参数。如下图所示:



Linux 云服务器的验证

1. 以 PuTTY 远程登录软件为例,打开 PuTTY 客户端。
2. 在 PuTTY Configuration 窗口中,输入 Linux 云服务器的公网 IP,将 Port 设置为新的端口号,单击 Open。如下图所示:


3. 根据界面提示,输入 Linux 云服务器的用户名和密码,按 Enter。 进入如下界面,即表示连接登录成功。


4. 使用新端口连接 Linux 云服务器成功后,执行如下命令,注释22默认端口。
vim /etc/ssh/sshd_config
5. i 切换至编辑模式,在 Port 22 前输入#,注释该端口。
6. Esc,输入 :wq,保存内容并返回。
7. 执行如下命令,使配置修改后生效。下一次登录时,使用新的端口远程登录 Linux 云服务器即可。
systemctl restart sshd.service