ssh默认端口配置

ssh有两层含义: 一是SSH(Secure Shell),由 IETF 的网络小组(Network Working Group)所制定的应用层安全外壳协议,用于专为远程登录会话和其他网络服务提供安全性的协议。 二是基于SSH协议实现的远程登录工具。服务端程序为sshd,客户端为ssh命令。

因此ssh的默认端口配置分为服务端与客户端。

1.ssh服务端默认端口配置

(1)登录服务器,打开sshd_config文件。

vi /etc/ssh/sshd_config

(2)找到Port 22,在下方插入一行想要的端口号,注意不要跟现有端口号重复。

...
# If you want to change the port on a SELinux system, you have to tell
# SELinux about this change.
# semanage port -a -t ssh_port_t -p tcp #PORTNUMBER
Port 22
Port 36000
...

ssh服务程序默认监听端口是22,上面保留了22端口,防止因为各种权限和配置问题,导致连22端口不能访问。等一新配置的端口生效,再关闭22端口。 (3)重启ssj服务。

systemctl restart sshd

(4)尝试通过新端口远程登录,或者进入该服务器直接本地访问SSH。

ssh -p36000 root@9.77.9.126

如果成功,说明36000已经完全可以使用了,接下来可以根据上述步骤把sshd_config的Port 22注释掉即可。

2.ssh客户端默认端口配置

ssh 可以从用户级配置文件和系统级配置文件中获取更多的配置数据,这样我们可以在使用ssh时省掉很多繁杂的命令选项。使用ssh命令进行远程登录时,实际上可以不使用-p选项显示指明端口,我们可以通过配置文件的方式来设置ssh命令默认端口。实际上ssh获取配置数据会以下面的顺序进行:

1.command-line options
2.user's configuration file (~/.ssh/config)
3.system-wide configuration file (/etc/ssh/ssh_config)

因此更改配置文件~/.ssh/config或/etc/ssh/ssh_config的Port选项即可。

...
Port 36000
...

关于ssh客户端配置文件的内容说明,具体参见ssh_config(5),使用命令man 5 ssh_config即可打开。


参考文献

[1]修改ssh默认端口 [2]ubuntu.ssh [3]ubuntu.ssh_config

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券