1. 配置描述

目标系统:银河麒麟v10系统(后简称kylin系统),cpu为麒麟990

当前系统:win10系统,远程连接采用FinalShell软件

2.问题描述

使用win10远程连接kylin系统时,遇到连接失败问题,后发现是因为kylin系统没有安装ssh服务。

3.安装ssh服务

*此步骤均在root用户下执行

(1)查看是否已安装ssh服务

apt list --installed | grep ssh

中标麒麟怎么打开docker 中标麒麟打开ssh_中标麒麟怎么打开docker

 若存在上述红框中的内容,则可跳过此步。否则,运行按照如下方式进行ssh服务的下载

(2)安装ssh服务

###kylin系统好像是在debina基础上发行的,若你使用的是debina,ubuntu,linux mint等系列的linux发行版,那么敲入以下命令:
apt-get install openssh-server 或
apt-get install sshd
#如果你用的是redhat,fedora,centos等系列linux发行版,那么敲入以下命令:
sudo yum install sshd 或
sudo yum install openssh-server

(3)启动ssh服务 

通常情况下,安装好ssh服务后会自动启动,若使用下述命令查看sshd服务未启动,则需要手动启动并设置开机自启。

systemctl status sshd #查看sshd服务状态
systemctl start sshd #启动sshd服务
systemctl stop sshd #关闭sshd服务
systemctl is-enabled sshd #查看sshd服务是否设置开机自启
systemctl enable sshd #设置开机自启
systemctl disable sshd #关闭开机自启

(4)遇到的问题

在测试systemctl disable sshd命令是否可以关闭开机自启时,遇到将ssh.service服务移除的问题。导致上述命令均无法使用。如下图:

中标麒麟怎么打开docker 中标麒麟打开ssh_linux_02

 刚开始以为自己记错了,以为设置sshd的开机自启应该是systemctl enable/disable ssh.service命令,但是本人在CentOS系统中,采用systemctl enable/disable sshd却没有问题。在此处只能运行systemctl start ssh.service重新启动ssh服务,即可解决问题。

4.密码方式登录

*此步骤在普通用户(mason)下即可。

(1)查看ip地址——ifconfig

中标麒麟怎么打开docker 中标麒麟打开ssh_服务器_03

(2)远程登录

在win10系统中,采用FinalShell进行登录,只需要输入目标系统的ip地址和用户名密码即可进行登录。

中标麒麟怎么打开docker 中标麒麟打开ssh_linux_04

5.密钥方式登录

为了更进一步的提高系统安全,可以生成 SSH 密钥对,然后强制使用基于密钥的认证,并禁用密码认证。

(1)生成密钥对

输入下列命令生成RSA密钥对:

mason@mason-L410-KLVU-WDU0B:~$ ssh-keygen -t rsa #生成密钥对
Generating public/private rsa key pair.
Enter file in which to save the key (/home/mason/.ssh/id_rsa)

按回车后确认生成的密钥默认路径为:~/.ssh/id_rsa

设置私钥密码,并且在提示确认的时候再次输入该口令。为了安全起见,请不要使用和您登录您的账户相同的密码。

默认情况下,将~/.ssh/目录的权限设置为 rwx------或者以八进制标注表示的 700。这是为了确保只有对应的用户 mason 能够查看其内容。如果有必要,可以使用以下命令来进行确认:

中标麒麟怎么打开docker 中标麒麟打开ssh_服务器_05

 使用cp ./.ssh/id_rsa.pub ./.ssh/authorized_keys 命令复制id_rsa.pub 文件中公钥到 authorized_keys文件中,如果 authorized_keys 文件已经存在了,将密钥追加到该文件的末尾。

中标麒麟怎么打开docker 中标麒麟打开ssh_中标麒麟怎么打开docker_06

 (2)远程连接

通过U盘将~/.ssh/id_rsa文件拷贝到当前windows系统。并打开FinalShell进行如下设置:

中标麒麟怎么打开docker 中标麒麟打开ssh_服务器_07

 (3)关闭密码登录

在windows系统下测试密钥登录成功后,再关闭密码登录,方法是使用文本编辑器中打开/etc/ssh/sshd_config 配置文件,并将 PasswordAuthentication 选项修改为如下内容:PasswordAuthentication no。最后重启sshd服务,即可实现无法通过密码登录的设置。

至此,仅可通过密钥对进行远程登录。