本人在使用阿里云服务器时,发现每次重启实例,ssh都连接不上,后来才发现不知道什么时候设置了扫描,每次实例重启都会重置ssh端口号,故记一下配置ssh端口号的步骤。
-
查看sshd服务状态
sudo systemctl status sshd.service
得到以下结果表明服务正常运行(active running),并可以看到监听的端口号(Server listening on 0.0.0.0 port 8703.)
● sshd.service – OpenSSH server daemon
Loaded: loaded (/usr/lib/systemd/system/sshd.service; enabled; vendor preset: enabled)
Active: active (running) since Fri 2024-05-24 17:25:03 CST; 15s ago
Docs: man:sshd(8)
man:sshd_config(5)
Main PID: 3568 (sshd)
Tasks: 1 (limit: 10882)
Memory: 1.1M
CGroup: /system.slice/sshd.service
└─3568 /usr/sbin/sshd -D -oCiphers=aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,aes256-ctr,aes256-cbc,aes128-gcm@openss>May 24 17:25:03 iZbp12fr26jletf8wnnsstZ systemd[1]: Starting OpenSSH server daemon…
May 24 17:25:03 iZbp12fr26jletf8wnnsstZ sshd[3568]: Server listening on 0.0.0.0 port 8703.
May 24 17:25:03 iZbp12fr26jletf8wnnsstZ systemd[1]: Started OpenSSH server daemon. -
如果没有运行,就使用下面的命令启动,再检查检查端口号
sudo systemctl start sshd.service
-
修改端口号
找到根目录下的
/etc/ssh/sshd_config
文件,进行编辑,找到大概17行左右的port 8703
,修改为自定义的端口号即可,默认是22。如果是被注释的
# port 22
删掉#解除注释即可。 -
重启sshdf服务
sudo systemctl restart sshd.service
注意:
- 有时候ssh连接不上需要在云服务器实例控制台重置一下实例密码
- 这里修改的是sshd_config端口号不是ssh_config,如果需要修改ssh端口号,同理
附:
关闭ssh服务命令:
sudo systemctl stop sshd.service
;
开机自启服务:systemctl enable sshd.service
;
关闭开机自启服务:systemctl disable sshd.service
又出现了这个问题,重设端口号后必须在云服务器实例控制台重置一下实例密码,即便密码没变。