基于Xshell使用密钥方式连接远程主机

连接远程主机,就验证身份而言,一般有两种方式,一种是通过用户密码;另一种通过公钥的方式(Public Key)。

图1  xshell支持验证登录用户的方式

下面就使用Public Key的方式来实现连接,通过工具ssh-kengen生成密钥对。

注意:操作之前需要ping通本机和目的主机(如果ping不通,可能的原因是防火墙、SELinux没关闭,或者网关设置有问题等)

使用XShell,这里使用的是XShell manager 5,目的主机为CentOS6,将需要连接的远程主机称为目的主机。

目的主机安装ssh服务端,并开启

[root@node1 ~]$ yum install -y openssh-server   # 安装openssh服务端
[root@node1 ~]$ yum install -y openssh-clients #安装openssh客户端,可以不安装
[root@node1 ~]$ service sshd start     # 临时开启sshd服务
[root@node1 ~]$ chkconfig sshd on      # 永久开启sshd服务,服务器重启也生效
[root@node1 ~]$service sshd status     # 查看sshd服务运行状态
openssh-daemon (pid ) 正在运行... # 显示正在运行

生成ssh密钥对(包括私钥和公钥)

[root@node1 ~]$ (umask ; ssh-keygen)     #  生成ssh密钥对,并将权限设置为600
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): # 回车
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:
fd::::a6:7d::c7::d2::3d::0e::2f root@node1
The key's randomart image is:
+--[ RSA ]----+
| .o.+ |
| o B * . |
| o. O % |
| E .. O + |
| .S o |
| o |
| . o |
| o |
| |
+-----------------+
[root@node1 ~]$ cd .ssh/
[root@node1 .ssh]$ ll # 查看密钥/公钥对信息,权限都为600
总用量
-rw-------. root root 5月 : id_rsa     # 私钥
-rw-------. root root 5月 : id_rsa.pub # 公钥
[root@node1 .ssh]$

修改sshd连接配置文件vim /etc/ssh/sshd_config

PasswordAuthentication no        # 不允许密码验证登录
PubkeyAuthentication yes # 允许公钥验证登录
AuthorizedKeysFile .ssh/id_rsa.pub # 指定公钥文件路径

将ssh密钥对导出到本机,建议创建一个目录专用放置密钥对

#]sz id_rsa
#]sz id_rsa.pub

重载sshd服务

[root@node1 .ssh]$ service sshd reload
重新载入 sshd: [确定]

使用XShell连接

ssh root@IP

图2  选择密钥文件

图3  导入私钥并确定

注意:点击确定之后还要重新连接一次

图4  连接成功

客户端使用私钥去验证,而远程主机使用公钥验证。

基于Xshell使用密钥方式连接远程主机的更多相关文章

  1. Xshell通过ssh方式连接Linux服务器,通过Xftp进行文件传输

    准备工作: 一.Linux服务器一台,并配置ssh(本文以腾讯云服务器为例). 1.生成秘钥 打开腾讯云控制台,依次选择:总览->云服务器->SSH秘钥 点击创建秘钥,输入秘钥名称,点击确 ...

  2. 通过Xshell来访问和连接Linux

    Xshell初使用:Xshell资源下载 刚刚接触Xshell是在javamail中的telnet收发邮件,然而这个我们并不常用,用的最多的是Xshell进行访问和连接远程主机. 通过Xshell来访 ...

  3. ssh通过密钥进行连接

    sshd服务提供两种安全验证的方法: 基于口令的安全验证:经过验证帐号与密码即可登陆到远程主机. 基于密钥的安全验证:需要在本地生成"密钥对"后将公钥传送至服务端,进行公共密钥的比 ...

  4. xshell使用密钥登陆linux

    一.环境CentOS 7.4xshell 6 二.介绍远程ssh连接服务器 默认是用的密码验证的方式,而且还是root账号,这样的验证方式会有安全隐患,容易被人暴力破解root密码.如果改成用密钥登陆 ...

  5. 使用SSH密钥方式登录ubuntu Linux,指令(ssh-keygen 和 ssh-copy-id)

    实验目的 从myVM1(本地主机)上登录myVM2(远程主机).采用密钥方式,不输入密码. 测试环境 主机:window7 sp1 64位 专业版 虚拟机:VMware workstation 12 ...

  6. 在windows主机中,利用XSHELL生成“密钥”进行虚拟机与物理机的传输

    首先你要有虚拟机,其次你要可以互相ping通(主机与虚拟机) 接着你要有xshell 软件  没有的话可以点击链接下载 Xshell  6  提取码:cj5t 打开Xshell软件  在工具栏中选择“ ...

  7. Xshell登录Vagrant方式

    Xshell登录Vagrant方式 我上一篇文章 介绍了vagrant 如何创建虚拟机集群,在上篇文章的基础上,用xshell 登录 虚拟机发现 默认是无法使用账号密码登录root账号,只能使用vag ...

  8. 使用TortoiseGit,设置ssh方式连接git仓库。

    开始设置之前的准备:建立项目文件夹,初始化git仓库(右键 git  init),右键打开 git bash ,git pull “仓库地址”, 把网站上的仓库代码拉取下来. TortoiseGit使 ...

  9. 使用ssh连接远程主机

    在linux系统中,ssh是远程登录的默认工具,因为该工具的协议使用了RSA/DSA的加密算法.该工具做linux系统的远程管理是非常安全的. ssh登录远程主机(服务器)一般有两种方式:无密钥方式  ...

随机推荐

  1. Elasticsearch学习笔记(二)Search API 与 Query DSL

    一. Search API eg: GET /mall/product/_search?q=name:productName&sort=price desc 特点:search的请求参数都是以 ...

  2. tomcat安装与项目部署

    1.tomcat依赖:jdk jre,环境变量配置  java_home  jre_home 2.tomcat安装: 下载:http://tomcat.apache.org/    download ...

  3. 更改linux终端中用户名颜色

    用户名的设置在-下.bashrc文件中,更改PS1变量的值,如果没有就自己加一行 PS1='\[\e[32m\][\u@\h \W]#\[\e[m\] ' 32代表的是绿色前景色,\[\e[m\]是关 ...

  4. SqlServer父节点与子节点查询及递归

    在最近老是用到这个SQL,所以记下来了: 1:创建表 CREATE TABLE [dbo].[BD_Booklet]( [ObjID] [int] IDENTITY(1,1) NOT NULL, [P ...

  5. 极致21点开发DAY2

    今天完成的主要内容时MainScene场景中设置面板的开发.游戏逻辑:点击设置按钮,弹出音乐设置弹框,弹框内容包括音乐的打开与关闭,退出游戏. 点击退出游戏,弹出退出游戏确认面板.效果图: 1.首先在 ...

  6. Nginx技术研究系列4-Nginx监控-Nginx+Telegraf+Influxb+Grafana

    搭建了Nginx集群后,需要继续深入研究的就是日常Nginx监控. Nginx如何监控?相信百度就可以找到:nginx-status 通过Nginx-status,实时获取到Nginx监控数据后,如何 ...

  7. HTTP请求中POST与GET的区别

      本文章已收录于:   一.原理区别 一般我们在浏览器输入一个网址访问网站都是GET请求;再FORM表单中,可以通过设置Method指定提交方式为GET或者POST提交方式,默认为GET提交方式. ...

  8. codeforces #305 E Mike and friends

    原问题可以转化为:给定第k个字符串,求它在L-R的字符串里作为子串出现了多少次 定义子串为字符串的某个前缀的某个后缀(废话) 等价于我们把一个字符串插入到trie里,其过程中每个经过的节点和其向上的f ...

  9. activiti5/6 系列之--BpmnModel使用

    BpmnModel对象,是activiti动态部署中很重要的一个对象,如果BpmnModel对象不能深入的理解,那可能如果自己需要开发一套流程设计器,使用bpmn-js使用前端或者C/S展现流程流转而 ...

  10. Tomcat基本

    Tomcat web 应用服务器基础 jdk+tomcat安装 1.运行Tomcat为什么要装jdk? http://blog.sina.com.cn/s/blog_753bc97d0102w5rd. ...