在Microsoft Azure上更改Linux SSH端口的问题

时间:2017-05-20 02:59:07

标签: linux sockets azure ssh

我正在尝试在Azure上托管的Ubuntu框中更改22端口的SSH端口。根据这个答案How to change SSH ports in Microsoft Azure properly?,你可以改变公众'港口,同时保持私人' ssh port at 22.

然而,答案有点过时,因为据我所知,Azure上没有提及公共/私人端口。在网络安全组设置中,只有'源端口范围'和'目的地端口范围'。

使用默认设置

Source port range: *
Destination port range: 22

我可以通过shell登录确定即

ssh -i my_key me@azure_ip

当我将源端口范围更改为特定端口时,我想将其用作“公共”端口。 ssh端口

Source port range: new_ip 
Destination port range: 22

然后尝试

ssh -i my_key me@azure_ip -p new_ip

然后连接只是超时而我无法连接。

然后我尝试更改服务器上sshd_config中的端口,将源端口范围保留为*,并将目标端口范围更改为新的ip,但获得了一个公共密钥'错误

有什么想法吗? (我很乐意改变公共端口和/或私人端口)

1 个答案:

答案 0 :(得分:1)

目前,在ARM模块中,我们不能将NSG用于NAT一个端口到另一个端口。 作为解决方法,我们可以更改sshd_config端口设置,以下是步骤:
1. SSH到此VM,更改sshd_config这样的设置,将端口22更改为端口33320:

root@jasonvm:~# vi /etc/ssh/sshd_config
# Package generated configuration file
# See the sshd_config(5) manpage for details

# What ports, IPs and protocols we listen for
Port 33320

2。重启ssh服务:

root@jasonvm:~# service ssh restart
root@jasonvm:~# netstat -ant
Active Internet connections (servers and established)
Proto Recv-Q Send-Q Local Address           Foreign Address         State      
tcp        0      0 0.0.0.0:33320           0.0.0.0:*               LISTEN     
tcp        0      0 10.0.0.4:33188          52.240.48.24:443        TIME_WAIT  
tcp        0      0 10.0.0.4:44470          168.63.129.16:80        TIME_WAIT  
tcp        0      0 10.0.0.4:33320          114.224.98.58:58180     ESTABLISHED
tcp        0      0 10.0.0.4:33186          52.240.48.24:443        TIME_WAIT  
tcp        0      0 10.0.0.4:22             114.224.98.58:58088     ESTABLISHED
tcp        0      0 10.0.0.4:33182          52.240.48.24:443        TIME_WAIT  
tcp        0      0 10.0.0.4:44464          168.63.129.16:80        TIME_WAIT  
tcp        0      0 10.0.0.4:33180          52.240.48.24:443        TIME_WAIT  
tcp6       0      0 :::33320                :::*                    LISTEN 

3。向NSG添加入站规则: enter image description here

完成后,我们可以使用新的端口和公共IP地址来ssh这个VM:

ssh user@xxx.xxx.xxx.xxx 33320