侧边栏壁纸
博主头像
孔子说JAVA博主等级

成功只是一只沦落在鸡窝里的鹰,成功永远属于自信且有毅力的人!

  • 累计撰写 292 篇文章
  • 累计创建 132 个标签
  • 累计收到 4 条评论

目 录CONTENT

文章目录

解决Linux ubuntu下SSH无法连接的问题

孔子说JAVA
2021-10-02 / 0 评论 / 0 点赞 / 182 阅读 / 2,202 字 / 正在检测是否收录...

SSH服务分为客户端和服务器。如果想用 winscp/putty/xshell 远程登录Linux Ubuntu服务器,就需要安装SSH server。

1、检查是否开启SSH服务

因为Ubuntu默认是不安装SSH服务的,所以在安装之前可以查看目前系统是否安装,通过以下命令: ps -e|grep ssh

输出的结果ssh-agent表示ssh-client启动,sshd表示ssh-server启动。我们是需要安装服务端所以应该看是否有sshd,如果没有则说明没有安装。

2、安装SSH服务

通过以下命令安装SSH服务。

sudo apt-get install openssh-client 客户端
sudo apt-get install openssh-server 服务器
或者 apt-get install ssh 

3、启动SSH服务

sudo /etc/init.d/ssh start

4、修改SSH配置文件

可以通过SSH配置文件更改包括端口、是否允许root登录等设置,配置文件位置: /etc/ssh/sshd_config。

# 打开配置文件
sudo vim /etc/ssh/sshd_config

1)默认是不允许root远程登录的,可以通过配置文件修改允许root远程登录参数。

找到 PermitRootLogin without-password
修改为
PermitRootLogin yes

image-1648784412996

2)默认不允许ssh密码验证,需将 PasswordAuthentication no 改为  PasswordAuthentication yes。

image-1648784424806

5、重启SSH服务

root@ubuntu:~# /etc/init.d/ssh restart

或

service ssh restart

6、远程登录

通过winscp 、putty、xshell 使用ROOT权限远程登录。

启用root用户:sudo passwd root      //修改密码后就启用了。

客户端如果是ubuntu的话,则已经安装好ssh client,可以用下面的命令连接远程服务器。

$ ssh xxx.xxx.xxx.xxx

7、问题

7.1 使用xshell登陆时密码框为灰色,无法输入密码

xshell连接服务器无法用password登录,只能用public key的解决办法。

image-1648784491017

修ssh改配置文件,设置为允许密码登录:

sudo vi /etc/ssh/sshd_config

找到 PasswordAuthentication no 修改为  PasswordAuthentication yes

7.2 无法使用root远程登录

修ssh改配置文件,设置为允许root远程登录:

sudo vi /etc/ssh/sshd_config

找到 PermitRootLogin without-password 修改为 PermitRootLogin yes.

7.3 禁止空密码用户登录

sudo vi /etc/ssh/sshd_config

找到 PermitEmptyPasswords no 修改为 PermitEmptyPasswords yes.

8、SSH介绍

SSH:是一种安全通道协议,主要用来实现字符界面的远程登录,远程复制等功能(使用TCP的22号端口)。SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登录时输入的用户口令。

在RHEL 5系统中使用的是OpenSSH服务器由openssh,openssh-server等软件包提供的(默认已经安装),并以将sshd添加为标准的系统服务。

SSH提供一下两种方式的登录验证:

1、密码验证:以服务器中本地系统用户的登录名称,密码进行验证。

2、秘钥对验证:要求提供相匹配的秘钥信息才能通过验证。通常先在客户机中创建一对秘钥文件(公钥和私钥),然后将公钥文件放到服务器中的指定位置。

  • 注意:当密码验证和私钥验证都启用时,服务器将优先使用秘钥验证。

SSH的配置文件:

sshd服务的配置文件默认在/etc/ssh/sshd_config,正确调整相关配置项,可以进一步提高sshd远程登录的安全性。

配置文件的内容可以分为以下三个部分:

1、常见SSH服务器监听的选项如下:

  • Port 22           //监听的端口为22
  • Protocol 2          //使用SSH V2协议
  • ListenAdderss 0.0.0.0    //监听的地址为所有地址
  • UseDNS no          //禁止DNS反向解析

2、常见用户登录控制选项如下:

  • PermitRootLogin no      //禁止root用户登录
  • PermitEmptyPasswords no   //禁止空密码用户登录
  • LoginGraceTime 2m      //登录验证时间为2分钟
  • MaxAuthTries 6        //最大重试次数为6
  • AllowUsers user       //只允许user用户登录,与DenyUsers选项相反

3、常见登录验证方式如下:

  • PasswordAuthentication yes          //启用密码验证
  • PubkeyAuthentication yes           //启用秘钥验证
  • AuthorsizedKeysFile .ssh/authorized_keys   //指定公钥数据库文件

9、xshell软件下载地址

链接:https://pan.baidu.com/s/1-ZrDoieCGvqmIgR54DlJag 
提取码:xs5z

0

评论区