`

配置ssh无需密码直接登录

 
阅读更多


Your aim

You want to use Linux and OpenSSH to automize your tasks. Therefore you need an automatic login from host A / user a to Host B / user b. You don't want to enter any passwords, because you want to call ssh from a within a shell script.

How to do it

First log in on A as user a and generate a pair of authentication keys. Do not enter a passphrase:

a@A:~> ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/a/.ssh/id_rsa): 
Created directory '/home/a/.ssh'.
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/a/.ssh/id_rsa.
Your public key has been saved in /home/a/.ssh/id_rsa.pub.
The key fingerprint is:
3e:4f:05:79:3a:9f:96:7c:3b:ad:e9:58:37:bc:37:e4 a@A

Now use ssh to create a directory ~/.ssh as user b on B. (The directory may already exist, which is fine):

a@A:~> ssh b@B mkdir -p .ssh
b@B's password: 

Finally append a's new public key to b@B:.ssh/authorized_keys and enter b's password one last time:

a@A:~> cat .ssh/id_rsa.pub | ssh b@B 'cat >> .ssh/authorized_keys'
b@B's password: 

From now on you can log into B as b from A as a without password:

a@A:~> ssh b@B hostname
B

A note from one of our readers: Depending on your version of SSH you might also have to do the following changes:

  • Put the public key in .ssh/authorized_keys2
  • Change the permissions of .ssh to 700
  • Change the permissions of .ssh/authorized_keys2 to 640

对于putty,由于它的private key格式跟linux产生的不同,因此需要使用puttygen转换,方法可参见如下的文章:

http://hi.baidu.com/jyj888/blog/item/69dad2c388cd2138e4dd3b2d.html

 

分享到:
评论

相关推荐

    ssh无密码登陆配置

    通过配置SSH服务实现服务器间无需密码即可相互登陆

    ssh_信任主机

    实现从主机A直接 SSH 到主机B,C,无需密码 在LINUX配置主机信任时,对对端机(被免口令登录机器)的目录权限和文件权限相关说明:对端机的authorized_keys改为只有当前用户读取权限: $ chmod 600 authorized_keys ...

    linux远程登录ssh免密码配置方法

    很简单,使用ssh-keygen 在主机A上生成private和public密钥,将生成的public密钥拷贝到远程机器主机B上后,就可以使用ssh命令无需密码登录到另外一台机器主机B上。 三、步骤 主机A: 1、 生成公钥和私钥文件id_rsa和...

    【精品】SecureCRT支持SSH(SSH1和SSH2)等

    SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。 SecureCRT支持SSH,同时支持Telnet和rlogin协议。SecureCRT是一款用于连接运行包括Windows、UNIX和...

    putty telnet、rlogin和ssh客户端 windows平台

     答:这是因为putty不像telent那样会直接显示密码,而是不显示密码,只要你输入的密码是正确的,  即使不显示只要输完密码后直接回车即可进入,不用在乎光标不动。  当输入密码错误敲下回车时会出现 denice 以...

    无需密码通过ssh执行rsync来同步文件的方法

    执行以下操作时,服务器将会提示需要用户使用密码登录。 代码如下: rsync -avz -e ssh /home/ramesh/ ramesh@192.168.200.10:/backup/ramesh/ 2.使用ssh-keygen生成密匙 现在我们来设置ssh,以便在执行ssh操作时不...

    ssoterm:单点登录 ssh 主机菜单

    这是一个无需重复输入密码即可登录远程主机的菜单包装器。 它面向管理大型资产并易于配置的管理员。 用户在启动时会被提示输入密码,密码存储在进程内存中,但不会在 ps 输出中显示。 ###依赖 ssopass 是必需的。 ...

    一款功能强大的SSH远程终端工具

    Xshell-7是一款功能强大的SSH远程终端工具...同时安装过程简单快捷,用户无需复杂的配置即可快速上手。安装完成后,用户可以通过新建会话的方式连接到远程服务器,输入服务器的IP地址、用户名和密码即可成功建立连接。

    wt:无需复杂的登录参数即可通过SSH运行Linux命令

    重量无需复杂的登录过程,即可通过SSH运行Linux命令。 使用wt(将wt命令名更改为适合您的服务器... 要在服务器上运行命令: 乒乓球在执行此操作之前,您必须将服务器设置为无密码的SSH登录。 待办事项:在上写简短摘要

    VxTerm 世界范围内第一个可以做到全自动化运维的强大的Telnet、SSH、Serial、MUD远程连接远程终端运维工具

    支持Private/Public Key无密码登录验证。 8、支持保护配置文件中的密码功能,会话配置文件在非本机环境中无法使用。 VxTerm是目前唯一一个可以以一个文件的方式助您完成全自动化运维的超级工具!

    putty,linux远程登陆工具

     答:这是因为putty不像telent那样会直接显示密码,而是不显示密码,只要你输入的密码是正确的,  即使不显示只要输完密码后直接回车即可进入,不用在乎光标不动。  当输入密码错误敲下回车时会出现 denice 以...

    putty 免安装 telnet

     答:这是因为putty不像telent那样会直接显示密码,而是不显示密码,只要你输入的密码是正确的,  即使不显示只要输完密码后直接回车即可进入,不用在乎光标不动。  当输入密码错误敲下回车时会出现 denice 以...

    SecureCRT中文免注册激活版

    SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。 SecureCRT支持SSH,同时支持Telnet和rlogin协议。SecureCRT是一款用于连接运行包括Windows、UNIX和VMS...

    Linux服务器批处理远程命令执行工具

    Linux服务器批处理远程命令执行工具。纯java实现的ssh协议(jsch),...服务器无需配置ssh对等协议或安装任何agent插件。并发远程主机主机连接,顺序返回执行结果。并发命令执行,可配置顺序或随机(阻塞)返回执行结果

    autossh-tunnel:使用autossh设置并保持通向远程站点的ssh隧道活动,屏幕

    autossh隧道使用autossh屏幕设置并保持ssh隧道到远程... 为了方便起见,我们牺牲了一些安全性,以便您可以轻松地从cron启动ssh隧道,而无需在每次重新启动后重新输入密码。 为了减少这种不安全感,将在远程站点上使用以

    Putty使用技巧(中文教程)

    6. 用 PuTTYgen 来生成密钥,以后可以不用密码登录服务器了 1. 开始用 PuTTYgen 创建密钥 2. 用密钥登录服务器的流程 7. Pagent 加载密钥,每次开机后只需要输入一次密钥口令 8. 用 SSH 来传输文件 1. PSCP 的...

    Ghoster:使用单个服务器通过 SSH 公开您的本地服务,很棒的 ngrok.io 替代方案

    GhoS 上海之三 Ghoster 是一个用 NodeJS 编写的单实例 SSH 服务器,允许您将防火墙后面的实例转发给公众。 它的工作原理是托管实例,并允许其他人在只安装 SSH 的情况下转发他们的服务。...无需在用户端安装

    SecureCRT-v6.58H

    SecureCRT是一款支持SSH(SSH1和SSH2)的终端仿真程序,简单地说是Windows下登录UNIX或Linux服务器主机的软件。 SecureCRT支持SSH,同时支持Telnet和rlogin协议。SecureCRT是一款用于连接运行包括Windows、UNIX和VMS...

    嵌入式系统/ARM技术中的Linux 下通过脚本实现远程自动备份

    设置无需密码的ssh登陆,方法如下:  假设A,B两服务器,现在需要在A机上用root登陆B机,而不需要输入密码,那我们可按照下面的步骤来做:  1)在A机上生成钥匙对,执行以下命令:  ssh-keygen -t rsa  ...

    linux远程主机命令工具增强版

    1、主控端、被控端通过ssh加密通信,且被控端无需做任何设置; 2、命令格式和在bash下直接输入、编写shell脚本等方式完全一致; 3、透明支持所有命令、变量、单引号,双引号等特殊字符,和在本地执行无差异; 4、...

Global site tag (gtag.js) - Google Analytics