开头是一些解决问题会用到的指令:
sudo service ssh status 查看当前ssh的工作状态和信息
sudo service ssh restart 重新启动ssh服务(每次修改sshd_config后都要运行一下)
sudo nano /etc/ssh/sshd_config 修改文件
sudo - 获得超级用户权限
/etc/ssh/sshd_config:关于ssh服务的配置文件,这个文件非常有意思,可以修改端口port,修改AuthorizedKeysFIle,这也解释了为什么我们要将公钥追加到.ssh/authorized_keys......
/etc/hosts.allow:list of hosts that are allowed to access the system.
2023年9月25日在使用ssh服务连接服务器时我遇到了一些问题,问题解决过程如下。
在使用cmd窗口ssh连接服务器时windows出现了“connection reset”的报错,在服务器运行“sudo service ssh status”查看ssh运行信息,出现了“rexec line 39: Deprecated option RSAAuthentication”的报错,依照网上的建议,我修改了服务器/etc/ssh/sshd_config第39行,将它注释掉:
sudo nano /etc/ssh/sshd_config 修改文件
sudo service ssh restart 重新启动ssh服务(每次修改sshd_config后都要运行一下)
这篇解答了为什么要注释掉。
重新连接,windows仍然出现“connection reset”,在网上找了一些方法,有修改防火墙等方法一一排除后发现“vi /etc/hosts.allow”可以让报错发生改变,如下:
sudo - 获取超级用户权限
vi /etc/hosts.allow 使用vi修改host.allow文件
重新尝试连接服务器,windows出现了新的报错“Permission denied (publickey).”又在网上找了一些方法,奏效了,修改服务器文件/etc/ssh/sshd_config里的PasswordAuthentication no为PasswordAuthentication yes。