ARM虚拟机防止默认远程端口直接暴露在公网方法

来源:互联网 发布:水杯推荐 知乎 编辑:程序博客网 时间:2024/06/05 08:05

由于Azure的公网IP范围是公开的,ARM虚拟机网卡如果关联了公网IP,则默认的远程端口(Windows为3389;Linux为22)相当于对所有人都是开放的,这就不排除有人会利用这一点长期恶意检测并攻击所有Azure公网IP的3389/22端口,以达到非法控制服务器并利用其进行非法行为的目的,例如盗取数据、种植木马、散播病毒或挖矿牟利等等。

本文基于此来探讨如何降低这种攻击风险并提高服务器安全性的方法。

一、              修改默认远程端口

说明:虚拟机可以通过修改其内部默认的远程端口来防范此类攻击行为,如果使用了NSG,则需要在NSG中开放新端口

Windows服务器修改方法

示例:WindowsServer 2012 R2 DataCenter

注册表修改端口

[HKEY_LOCAL_MACHINE\SYSTEM\ CurrentControlSet\Control\TerminalServer\ Wds\rdpwd\Tds\tcp]


[HKEY_LOCAL_MACHINE\SYSTEM\CurrentContro1Set\Control\TerminalServer\ WinStations\RDP-Tcp]


防火墙放开对应端口规则(TCP、UDP)






相同的方法创建UDP规则,这里不再赘述。(也可以不添加UDP)


重启服务器后我们使用公网IP+ 33899端口进行远程测试登录成功


Linux服务器修改方法

示例:CentOS7.2

登录服务器,打开sshd_config文件

 

找到#Port22,默认是注释掉的,先把前面的#号去掉,再插入一行设置成你想要的端口号,注意不要跟现有端口号重复

 

保存后退出,重启sshd服务


此时我们验证可以使用33899端口登录后即可将22端口再注释掉。这样做的目的是防止新端口无法登录时可以使用22端口进行排错。

二、              启用堡垒机

说明:

1.      设置一台面对公网的堡垒机

2.      取消目标服务器的公共IP或将默认远程端口3389/22从NSG中禁止公网访问

3.      所有远程管理必须先远程到堡垒机再进行操作

示例:WindowsServer 2012 R2 DataCenter

取消目标服务器公共IP关联后Windows虚拟机连接功能不可用


从堡垒机内部使用内网IP进行RDP/SSH连接


尝试在没有关联公共IP的服务器中访问外网我们发现,虽然ping返回超时,但是可以正常访问外网资源。


三、              启用负载均衡器

说明:由于Azure现在的4层负载均衡器为免费使用,我们可以利用负载均衡器做端口映射来实现修改公网访问默认远程端口的目的。

示例:WindowsServer 2012 R2 DataCenter

取消目标Windows服务器的公共IP关联后连接功能不可用


创建负载均衡器


添加后端池


添加入站NAT规则


添加负载均衡器后,Windows虚拟机连接功能为可用,可以直接下载RDP文件进行远程


或使用LB公共IP +33899端口进行远程登录验证,可以成功登录

 

阅读全文
0 0
原创粉丝点击