修改ssh默认端口

1 . 登录服务器,打开sshd_config文件

vim /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 10022

SSH默认监听端口是22,如果你不强制说明别的端口,”Port 22”注不注释都是开放22访问端口。上面我保留了22端口,防止之后因为各种权限和配置问题,导致连22端口都不能访问了,那就尴尬了。等一切都ok了,再关闭22端口。

Ok,继续,我增加了10022端口,大家修改端口时候最好挑10000~65535之间的端口号,10000以下容易被系统或一些特殊软件占用,或是以后新应用准备占用该端口的时候,却被你先占用了,导致软件无法运行。


3 . 重启SSH服务,最好也重启下服务器

systemctl restart sshd
如果没有systemctl的话可以执行:/etc/init.d/sshd restart 或 /etc/init.d/ssh restart

如果没有报错的话就生效了,可以 ss -ntl 或 netstat -ntl 查看一下端口。

4 . 尝试通过10022端口登录SSH,或者进入该服务器直接本地访问SSH如下:

[root@centos7 ~]#ssh root@localhost -p 10022

如果成功,说明10022已经完全可以使用了,接下来你就可以根据上述步骤把sshd_configPort22注释掉就OK了,大工造成!

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即可打开。

最后修改:2023 年 01 月 15 日
如果我的文章帮到你了,欢迎随意赞赏