当前位置:   article > 正文

欧拉系统(openEuler 22.03) SSH配置及报错处理_openeuler使用ssh

openeuler使用ssh

由于centos的停止更新,公司要求系统部署在欧拉上,用的人少,导致错误不好解决,今天使用finalshell连接服务器时出错,一想应该是ssh导致连不上,于是进行以下操作。

切记!不要直接安装ssh。先检查本机电脑上是否有ssh。

1.输入 rpm -qa | grep ssh
  1. [root@localhost ~]$ rpm -qa | grep ssh
  2. libssh-0.9.6-7.oe2203sp2.x86_64
  3. openssh-8.8p1-20.oe2203sp2.x86_64
  4. openssh-server-8.8p1-20.oe2203sp2.x86_64 //服务端
  5. libssh2-1.10.0-5.oe2203sp2.x86_64
  6. openssh-clients-8.8p1-20.oe2203sp2.x86_64 //客户端

       此处,.oe2203表明我下载的是欧拉22.03版本,前面是各个包的版本。如果有以上文件,证明服务器上有ssh。

2.如果没有以上文件,则证明无ssh,下载对应linux版本的包。此处为22.03
  1. yum install openssh-server-8.8p1-20.oe2203sp2.x86_64 //服务端
  2. yum install openssh-clients-8.8p1-20.oe2203sp2.x86_64 //客户端
3.若缺少文件,则输入以下指令:
# yum install openssh*
4.修改sshd_config文件(服务端)

        一般网上会让你修改ssh_config!但因为是服务端,所以修改sshd_config的配置。ssh_config是客户端的配置文件!笔者因为是新手所以在这里浪费了很多时间。

仅对以下部分作修改:

  1. #输入指令:vim /etc/ssh/sshd_config
  2. PermitRootLogin yes
  3. PasswordAuthentication yes
  4. PermitEmptyPasswords no
  5. Port 22
  6. 以上配置前原本都是有#的,这是注释的意思,把前面的#去掉就好
5.重启ssh
  1. #如果是第一次,则启动ssh服务
  2. systemctl start sshd.service
  3. #设置为开机自启
  4. systemctl enable sshd.service
  5. #如果之前已经启动过ssh服务,则重启ssh服务
  6. systemctl restart sshd

6.错误排查(仅教方法,以本人所碰到的问题为例,授人以渔)

        本人遇到报错,提示让我输入systemctl status sshd -l查询问题,输入后发现一脸懵逼。出现以下场景:

         从这个图里面可以获取的信息:active:activating 证明ssh服务是在跑的,但是11718这个有异常,所以开始排查,输入以下指令:

sshd -t

 根据提示,说明sshd_config 第160行有报错。输入:

vim /etc/ssh/sshd_config

一直下拉到160行,对应为:PubkeyAcceptedKeyTypes,这是加密方式,一种可能是后面跟的加密方式有问题,在后面自行补充或删除。

另一种就是我这种输入的变量名不合法:我发现有人把Ciphers移动到了 上一行,导致Ciphers未生效,于是回车将其还原至原有位置。

重新输入 sshd -t,发现仍有报错,发现是ciphers有问题,报:bad ssh2 cipher spec

输入:ssh -q cipher 会告诉你现在有哪些使用的ciphers,将原有的ciphers行注释,另起一行输入查询结果。后续若报Mac的错误同理,输入ssh -q mac 后将原有Macs注释,另起一行输入查询结果后Esc退出wq保存。

  1. #Cipher 原有的数据
  2. Cipher 输入查询结果,以逗号隔开

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/在线问答5/article/detail/879632
推荐阅读
相关标签
  

闽ICP备14008679号