ssh登录提供两种认证方式:口令(密码)认证方式和密钥认证方式。其中口令(密码)认证方式是我们最常用的一种,这里介绍密钥认证方式登录到linux/unix的方法。
使用密钥登录分为3步:
1、生成密钥(公钥与私钥);
2、放置公钥(Public Key)到服务器~/.ssh/authorized_key文件中;
3、配置ssh客户端使用密钥登录。
一、生成密钥公钥(Public key)与私钥(Private Key)
打开Xshell,在菜单栏点击“tools”,在弹出的菜单中选择“User Key Generation Wizard...”(密钥生成向导),如下图:
弹出“User Key Generation Wizard”对话框,在“Key Type”项选择“RSA”公钥加密算法,“Key Length”选择为“2048”位密钥长度,如下图:
点击“Next”,等待密钥生成:
继续下一步,在“Key Name”中输入Key的文件名称,我这里为“key”;在“Passphrase”处输入一个密码用于加密私钥,并再次输入密码确认,如下图:
点击“Next”,密钥生成完毕(Public key Format选择SSH2-OpenSSH格式),这里显示的是公钥,我们可以复制公钥然后再保存,也可以直接保存公钥到文件,如下图。私钥这里不显示,可以在“User Key Mangager...”导出到文件:
点击“Save as file...”按钮,将公钥(Public key)保存到磁盘,文件名为“key.pub”,备用。
二、上传公钥(Public Key)到服务器:
使用到Xshell登录到服务器,进入到“/root/.ssh/”目录,运行rz命令(如果没有rz命令,运行yum install lrzsz安装),将key.pub发送到服务器,然后运行如下命令,将公钥(Public Key)导入到“authorized_keys”文件:
[root@localhost ~]# cd /root/.ssh/
[root@localhost .ssh]# rz
rz waiting to receive.
[root@localhost .ssh]# cat me.pub >> authorized_keys
[root@localhost .ssh]# chmod 600 authorized_keys
[root@localhost .ssh]# ls
authorized_keys known_hosts me.pub
[root@localhost .ssh]# cat authorized_keys
ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEA4VCOWFrARc1m3MfEAL50v2Z2siavO3Ijpr/LZ00EZah8EjfZhqjAc/agkljyXmNGpVDpRdtlYco8h3P5vegXOEgKcX74fDYm0vNdVABVD1XSD8ElNyLTCCNk7rZJbi3htJox3Q1n0vnMmB5d20d9occkAx4Ac94RWNS33EC5CszNTMgAIn+uZl0FlQklS1oSyWFahSTWyA6b33qG7Y5E4b6J/caObnPx6EgtBrgi97gXJHZWyYlGrpWmUuhPqs5XToRB08CVxAyzewtq1MXv0p+Po4L1pbHLRf+TSoZ5RSBZZjY4/JMAzdXHNtnAyO0j0VNGbBXKUcNSAHZ
xshell_public-key_login_upload
三、配置Xshell使用密钥认证方式登录到服务器:
打开Xshell,点击“New”按钮,弹出“New Session Properties”对话框,在“Connection”栏目中,输入刚刚配置好公钥(Public Key)的IP地址和端口,如下图所示:
点击左侧的“Authentication”,切换到认证栏目,在“Method”选择“Public Key”认证,用户名输入“root”(公钥是放在root目录下的.ssh文件夹中),在“User Key”中选择我们刚才生成的私钥“key”,“Passphrase”中输入私钥的加密密码。
点击确定,Xshell配置ssh免密码登录配置完成。
附录:linux ssh-keygen命令生成密钥:
其实,linux下的ssh-keygen下也可以生成密钥,在linux下输入ssh-keygen -t rsa,在提示下,输入密钥的名称(这里为key)和私钥加密密码,既完成密钥生成。生成的两个文件中,“key”为私钥,“key.pub”为公钥。如下图所示:
linux_make_public-key
分享到:
相关推荐
XShell-Xftp-学校版-永久免费可升级-程序员福音,全套的教育版可以免费使用,直接安装即可,官方的教育版,可以使用大部分功能,个人用足够了
通过xshell自动ssh登录,并执行命令
Xshell配色方案Xshell-ColorScheme-master.zip
xshell配色方案xshell-themes-master.zip
超级好用的的SSH工具软件XshellPlus-7、WinSCP-5.21.7-Setup、 PuTTY_0.67.0.0
Xshell-7.0.0077p-家庭免费版.zip
Xshell-7.0.0113p Xftp-7.0.0111p Xftp 和xshell 是一种灵活且轻量级的SFFT/FTP客户端,用于需要安全地通过网络传输文件的用户。使用Xftp7软件能让文件传输被简化,使用拖拽、直接编辑和增强的同步,这些特性在直观...
linux远程连接工具xshell、文件传输工具xftp,内含密钥
xshell和xftp,连接操作linux系统,不需要再繁琐的去安装,只需要解压后,工具可直接使用
NULL 博文链接:https://xls.iteye.com/blog/1446680
xshell 5是一款非常出色的免费SSH客户端。xshell 5功能强悍,具备标签式的环境,动态端口转发,自定义键的映射关系,用户定义的按钮,VB脚本,显示2字节字符和国际语言支持UNICODE,支持SSH1, SSH2, 以及Microsoft ...
Xshell-7.0.0109p Xshell7 free-for-home-school 2022-05-04 个人免费版
ssh_5.3p1-3ubuntu3_all.deb
几个好用的ssh连接工具和ftp连接工具,公司里面不允许用Xshell和Xftp,个人找了几个好用的工具
完全免费直接解压就能用里面有8个相关配件 下载一个直接得到8个 里面TXT有破解码 粘贴就OK了
Xshell6.0.0115和Xftp-6.0.0115个人免费版版,也可以去官方下载,不过需要提供自己的姓名和邮箱,还要接受官方的广告通知,不想或者不知道怎么去官方下载的朋友们可以下载了。
XShell(SSH终端模拟工具) V6.0.0125 中文版_k70_a418_s158121.exe
xshell链接ssh工具,用了3年了,非常好用
XShell-免费版
Xshell 是一个强大的安全终端模拟软件,它支持SSH1、SHH2、以及 Microsoft Windows 平台的TELNET协议。Xshell 通过互联网到远程主机的安全连接以及它创新性的设计和特色帮助用户在复杂的网络环境中享受他们的工作。 ...