文章目录
一 问题描述
- 本次问题出现的环境,真机ubuntu环境下,安装ssh服务和开放22端口,后出现连接异常
二 问题思路分析
- 首先还是跟之前的思路一样,检查网络是否通常
ping 服务器ip
C:\Users\HP>ping 192.168.1.25
正在 Ping 192.168.1.25 具有 32 字节的数据:
来自 192.168.1.25 的回复: 字节=32 时间=8ms TTL=64
来自 192.168.1.25 的回复: 字节=32 时间=3ms TTL=64
来自 192.168.1.25 的回复: 字节=32 时间=3ms TTL=64
来自 192.168.1.25 的回复: 字节=32 时间=3ms TTL=64
192.168.1.25 的 Ping 统计信息:
数据包: 已发送 = 4,已接收 = 4,丢失 = 0 (0% 丢失),
往返行程的估计时间(以毫秒为单位):
最短 = 3ms,最长 = 8ms,平均 = 4ms
- 确保22端口,是否正常开放结果
root@kongyueshang:~# sudo ss -tuln | grep :22
tcp LISTEN 0 128 0.0.0.0:22 0.0.0.0:*
tcp LISTEN 0 128 [::]:22 [::]:*
解释一下命令:
命令 | 解释 |
---|---|
sudo |
使用管理员权限执行命令,因为端口状态需要特权访问权限。 |
ss |
Socket统计工具,用于查看套接字信息。 |
-t |
仅显示TCP协议的套接字。 |
-u |
仅显示UDP协议的套接字。 |
-l |
仅显示监听状态的套接字。 |
-n |
直接显示IP地址和端口号,而不做反向解析。 |
grep |
22: 在输出中过滤包含":22"的行,即过滤出22端口的相关信息。 |
- 然后,我怀疑是防火墙的问题,关闭防火墙之后,再次尝试,仍然出现无法连接的情况
三 解决方法
- 一顿有效思考之后,还是没有任何头绪,就去网络上,最终找到了解决方法。
3.1 来自网络的解决方案
- ssh默认配置为了安全考虑,禁止root权限,进行远程。所以我们使用root用户一直连接不上。
- 可以修改解决配置文件
/etc/ssh/sshd_config
,开放root用户进行登录
- 注意:在学习阶段,可以使用root进行远程,但是不建议在实际的环境中这样做!
- 修改内容如下即可,重点是
PermitRootLogin yes
,其他的可以了解一下:
#LoginGraceTime 2m
#PermitRootLogin prohibit-password
PermitRootLogin yes
StrictModes yes
#MaxAuthTries 6
#MaxSessions 10
- LoginGraceTime 2m: 此选项指定SSH客户端连接到服务器后,允许进行身份验证的最长时间。在这里,2m表示2分钟,如果客户端在2分钟内没有完成身份验证,连接将被终止。
PermitRootLogin prohibit-password
: 用于配置是否允许以root用户直接登录,prohibit-password
选项表示不允许使用密码登录,但允许使用其他认证方式(例如SSH密钥)登录。PermitRootLogin yes
: 该行指定允许以root用户直接登录,且可以使用密码进行登录。请注意,允许root用户直接通过SSH登录可能会增加系统安全风险,通常不建议这样做。StrictModes yes
: 此选项指定SSH服务器在检查用户家目录和SSH配置文件的权限时是否启用严格模式。如果设置为yes,SSH服务器会拒绝权限设置不正确的目录和文件。MaxAuthTries 6
: 此选项指定在单个连接中允许的最大身份验证尝试次数。如果身份验证尝试次数超过这个值,连接将被终止。在这里,6表示最多允许6次尝试。MaSessions 10
: 此选项指定单个用户可以同时打开的最大SSH会话数。在这里,10表示允许最多同时打开10个会话。
3.2 操作方法
3.2.1 命令式:终端配置
- 目前我们的毛病都是:道理我懂,实践大便。所以,这里详细记录一下,具体的操作,同时复习一下,linux的基础操作命令。
- 使用vim编辑器修改文件
vi /etc/ssh/sshd_config
使用 vi
命令打开文件后,可以通过以下步骤修改文件内容:
- 按下
i
键:这将使 vi 进入 “插入” 模式,允许输入并编辑文件内容。 - 进行所需修改:使用键盘编辑文件内容,就像在普通文本编辑器中一样。
- 保存修改:编辑完成后,按下
Esc
键退出插入
模式。然后输入:w
(不带引号),按下Enter
键。这个命令会保存修改但不退出vi
。 - 退出
vi
:要退出vi
,输入:q
(不带引号),然后按下 ‘Enter’ 键。如果有未保存的修改,vi
不会退出,需要先保存修改。
- 保存修改的同时退出
vi
,可以将命令组合在一起,像这样输入::wq
,然后按Enter'
键。
vi 的基本命令总结:
- 按 ‘i’ 进入 “插入” 模式(开始编辑)。
- 按 ‘Esc’ 退出 “插入” 模式(返回普通模式)。
- 输入 ‘:w’ 保存修改(在普通模式下)。
- 输入 ‘:q’ 退出 vi(在普通模式下)。
- 输入 ‘:wq’ 保存并退出 vi(在普通模式下)。
3.2.2 面板式:1panel配置
- 安装1panel的内容参看安装1panel教程
- 完成登陆后,打开主机->ssh配置->全部配置,然后添加
PermitRootLogin yes
3.2.3 摆烂式:用户连接
- 使用非root是可以正常连接的,但是可能有时候操作权限不够。
- 推荐使用1panel中的终端进行连接检测
四 结语
- 今天的总结,就到这里了,很高兴能和大家分享有用的知识!