大家好,又见面了,我是全栈君。
说明:今天来了一个小伙伴,因为业务需要,要登录一台测试系统,问我密码是多少,我说我配置的密钥登录的,估计他不太熟悉,所以我简单的演示了一下配置过程给他看,顺便也记录了下整个配置过程。
1、关于密钥登录系统的原理
关于配置原理,可以参考https://help.aliyun.com/knowledge_detail/41493.html,现在阿里云的官方文档写的很详细,我也不想粘贴复制了。
2、服务端的配置过程
a)生成密钥对(这里我只是做个测试,所以一路回车就好了)
[root@LVS-DR02 ~]# ssh-keygen -t rsa Generating public/private rsa key pair. Enter file in which to save the key (/root/.ssh/id_rsa): Created directory '/root/.ssh'. Enter passphrase (empty for no passphrase): Enter same passphrase again: Your identification has been saved in /root/.ssh/id_rsa. Your public key has been saved in /root/.ssh/id_rsa.pub. The key fingerprint is: ce:6a:a7:fc:e6:d4:f4:21:98:5c:3b:f1:03:01:9d:7a root@LVS-DR02.saltstack.com The key's randomart p_w_picpath is: +--[ RSA 2048]----+ | .o.. | | o. | | .+ | | ..+E= | | S.= + | | o o + o | | + . . | | ..oo | | .+*o | +-----------------+
b)查看密钥的位置(默认存在家目录的.ssh下)*:
[root@LVS-DR02 ~]# cd /root/.ssh/ [root@LVS-DR02 .ssh]# ll total 8 -rw------- 1 root root 1679 Jun 26 20:13 id_rsa -rw-r--r-- 1 root root 409 Jun 26 20:13 id_rsa.pub
c)设置Linux主机:
把id_rsa.pub 复制为authorized_keys,放在需要登陆的linux主机的~/.ssh目录下 [root@LVS-DR02 .ssh]# cat id_rsa.pub >>authorized_keys
d)设置ssh服务参数
SSH 服务默认开启了证书认证支持。编辑 SSH 服务配置文件(默认为/etc/ssh/sshd_config),确保如下参数没有显示的置为 no。否则,将参数值修改为yes,或者删除或注释(在最开头添加 # 号)整行配置。
[root@LVS-DR02 .ssh]# vim /etc/ssh/sshd_config 将下面两行的注释取消 #RSAAuthentication yes #PubkeyAuthentication yes
e)下载私钥到远程计算机(公钥相当于锁,私钥相当于钥匙)
[root@LVS-DR02 .ssh]# sz -y id_rsa
3、客户端的配置
a)如下图所示,进入xshell的登录界面
b)选择基于Public Key的登录验证方式
c)导入key
d)选择导入
e)这里我们将之前从服务端sz -y导入的id_rsa改名为LVS-RS02,主要也是为了对应不同的服务
f)这样我们就可以很方便的登录到系统中了
补充方法:
1)在windows的xshell下生成密钥
2)选择默认的RSA密钥类型,保持密钥长度为2048
3)生成密钥对的过程
4)默认的密钥名称为id_rsa_2048
5)为了避免每次登陆输入密码,这里我保持密码为空
6)保存复制的公钥
7)将公钥拷贝到服务端的.ssh目录下
[root@LVS-DR01 .ssh]# cat id_rsa_2048.pub ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAzoNEC5+T6dl+p5nD78/SPcqdFPecSNVHF7R6FhY0cxCHDSWUTORU4isGIRJOwmr3o+7kgpY8o4ACw8FgYY2xt3jjFo8t1xlcnKZ4s0VxyqRrVFe4xZa2dGxyaQ6q13Bwno+yE93+nfXK2W1+aBDuouGgaFX2av9lGWJqfzXoHh+yKATF367ErnUBIQbM0N/rPBzggxtyKCHekOu1605Fie/xcQTZJbvm2dkCwMJg1gx2B4qgBKIbLi+Q==[root@LVS-DR01 .s total 16 -rw------- 1 root root 1675 Jun 29 09:46 id_rsa -rw-r--r-- 1 root root 380 Jun 29 16:14 id_rsa_2048.pub -rw-r--r-- 1 root root 409 Jun 29 09:46 id_rsa.pub -rw-r--r-- 1 root root 976 Jun 29 09:48 known_hosts [root@LVS-DR01 .ssh]# ls -la total 20 drwx------ 2 root root 80 Jun 29 16:15 . dr-xr-x---. 18 root root 4096 Jun 29 15:50 .. -rw------- 1 root root 1675 Jun 29 09:46 id_rsa -rw-r--r-- 1 root root 380 Jun 29 16:14 id_rsa_2048.pub -rw-r--r-- 1 root root 409 Jun 29 09:46 id_rsa.pub -rw-r--r-- 1 root root 976 Jun 29 09:48 known_hosts 将公钥内容保存到authorized_keys文件中,设置文件权限为600 [root@LVS-DR01 .ssh]# cat id_rsa_2048.pub>>authorized_keys [root@LVS-DR01 .ssh]# chmod 600 authorized_keys
8)登陆验证
9)使用用户的密钥
10)选择身份验证方式
11)登陆成功
Connecting to 10.10.10.101:2222... Connection established. To escape to local shell, press 'Ctrl+Alt+]'. Last login: Thu Jun 29 16:45:21 2017 from 10.10.10.1
到此,所有配置均已完成
12)配置思路
a、生成密钥对:
b、将公钥传输至远程服务器对应的家目录的指定文件
c、进行测试
转载于:https://blog.51cto.com/molewan/1942173
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/108392.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...