多台linux服务器ssh相互无密码访问

A服务器:10.1.11.82

B服务器:10.1.11.210

最终目的:让A服务器能无密码的访问B服务器

操作思路:让A服务器单向无密码访问B服务器,只需要在A服务器生成密钥对将生成的公钥上传到服务器B的相关用户目录下的.ssh目录中(没有的话手动创建,注意,它的目录权限是700),并将公钥文件名称改为authorized_keys(注意,这个文件的权限应该是644),请注意.ssh目录及authorized_keys文件的权限,权限不符,会使配置无效。【用 ls -la命令查看所有目录的执行权限】

操作方法如下:

1、在服务器A生成密码对:

在生成的过程中有几个选项让你输入密钥对的保存目录及输入私钥,直接enter就行了。

[[email protected] ~]# 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:
0e:4c:ec:e3:04:98:b0:71:00:91:75:57:ee:56:a1:82 [email protected]
执行上面一步,会在~/.ssh目录下生成两个文件id_rsa和id_rsa.pub,其中id_rsa是私钥,保存在本机;id_rsa.pub是公钥,是要上传到远程服务器的。

2、上传公钥到需要无密码登陆的远程服务器B上并改名为authorized_keys:
远程服务器B上如果没有.ssh目录的话,先手动创建:
[[email protected] ~]# mkdir .ssh
[[email protected] ~]# chmod 755 .ssh

然后从服务器A上传公钥文件到远程服务器B:

[[email protected] ~]# scp .ssh/id_rsa.pub [email protected]:/root/.ssh/authorized_keys

The authenticity of host ’10.1.11.210 (10.1.11.210)’ can’t be established.
RSA key fingerprint is c9:ef:0c:1b:ac:6c:ef:84:a4:a7:e5:d1:20:58:c8:73.
Are you sure you want to continue connecting (yes/no)? yes                              
Warning: Permanently added ’10.1.11.210′ (RSA) to the list of known hosts.    //这一步会将远程服务器B加入到本机(服务器A)的known_hosts列表中
[email protected]′s password:
id_rsa.pub                                                                                        100%  399     0.4KB/s   00:00

3、测试

上传完公钥文件到远程后,马上从服务器A登陆到服务器B,如果没有输入密码登陆到了服务器B,表示成功,如果还要输入密码,则请检查远程服务器B上的.ssh目录权限是否为700,上传的远程服务器上的公钥名是否改为了authorized_keys,权限是否为644

时间: 2024-08-01 05:10:24

多台linux服务器ssh相互无密码访问的相关文章

多台Linux服务器SSH相互访问无需密码

摘录:http://www.linuxidc.com/Linux/2013-02/79156p2.htm 一.环境配置 1.系统:CentOS release 5.6  IP:192.168.4.200  主机名:JW01 2.系统:CentOS release 5.9  IP:192.168.4.244  主机名:JW02 3.系统:CentOS release 5.3  IP:192.168.4.232  主机名:KT01 4.系统:Red Hat  release 4  IP:192.16

linux操作系统-两台linux服务器SSH免密码登录

A为本地主机(即用于控制其他主机的机器) ; B为远程主机(即被控制的机器Server), ip为192.168.100.247 ; A和B的系统都是Linux 在A上的命令 # ssh-keygen -t rsa (连续三次回车,即在本地生成了公钥和私钥,不设置密码) # ssh [email protected]192.168.100.247 "mkdir .ssh;chmod 0700 .ssh" (需要输入密码, 注:必须将.ssh的权限设为700) # scp ~/.ssh/

使用Python之paramiko模块和threading实现多线程登录多台Linux服务器

有时候我们需要在多台Linux服务器上面执行同样的命令,或者同样的操作,如果我们每一台单独登录上去做这样太麻烦了,所以我们可以考虑使用自动化脚本来实现.我这里使用Python多线程的方式,这样速度更快,如果使用Shell只能一台完了执行另外一台效率不高. 针对这样的需要写了一个Python脚本来完成这样的工作,大致实现了我需要的效果 实现代码: #!/usr/bin/python #*-*coding:utf8*-* """ 此脚本适用于批量登录到Linux操作系统,并执行一

Linux本地登录另一台Linux服务器命令

要从Linux下通过SSH登录另一台Linux服务器非常容易--前提是在远 程服务器上拥有一个用户账号.打开Shell终端,执行以下命令 ssh -l login_name hostname 把login_name替换成真实的用户账号,把hostname替换成服务器主机名(或者IP地址).下面这条命令以liu 用户的身份登录到IP地址为192.168.25.99的Linux服务器上. [[email protected] ~]# ssh -l root 192.168.25.99[email p

多台linux服务器时间同步

1,设置A机时间服务器: a,修改 /etc/ntp.conf,如下: # Undisciplined Local Clock. This is a fake driver intended for backup# and when no outside source of synchronized time is available.server 127.127.1.0 # local clock#fudge 127.127.1.0 stratum 10 b, /etc/init.d/ntpd

Linux服务器ssh远程管理

SSH远程管理 SSH(Secure Shell)是一种安全通道协议,主要用来实现字符界面的远程登陆,远程复制等功能.SSH协议对通信双方的数据传输进行了加密处理,其中包括用户登陆时输入的用户口令,与早期的telnet(远程管理),rsh(Remote Shell ,远程执行命令),rcp(远程复制文件)等应用相比,SSH协议提供了更好的安全性. 配置OpenSSH服务端 在RHEL 5系统中,OpenSSH服务器由openssh,openssh-server等软件包提供(默认已安装),并已将s

如何在 Amazon AWS 上设置一台 Linux 服务器

摘要: AWS(Amazon Web Services)是全球领先的云服务器提供商之一.你可以使用 AWS 平台在一分钟内设置完服务器.在 AWS 上,你可以微调服务器的许多技术细节,如 CPU 数量,内存和磁盘空间,磁盘类型(更快的 SSD 或者经典的 IDE)等. AWS(Amazon Web Services)是全球领先的云服务器提供商之一.你可以使用 AWS 平台在一分钟内设置完服务器.在 AWS 上,你可以微调服务器的许多技术细节,如 CPU 数量,内存和磁盘空间,磁盘类型(更快的 S

Linux 通过SSH实现无密码登录

step1. 在deployNode上生成密钥 我当前用户是ceph,在 .ssh/目录下执行命令   ssh-keygen -t rsa [[email protected] .ssh]$ ls ceph.log config id_rsa id_rsa.pub known_hosts 会发现该目录下生成两个文件,id_rsa, id_rsa.pub step2. 将id_rsa.pub复制到其他节点下对应用户目录的.ssh/目录下,并执行命令 cat id_rsa.pub >> autho

scp 将数据从一台linux服务器复制到另一台linux服务器

原文地址:http://www.cnblogs.com/peida/archive/2013/03/15/2960802.html  完整内容参考原文! scp 是secure copy的简写,用于在Linux下进行远程拷贝文件的命令,和它类似的命令有cp,不过cp只是在本机进行拷贝不能跨服务器,而且 scp传输是加密的.可能会稍微影响一下速度.当你服务器硬盘变为只读 read only system时,用scp可以帮你把文件移出来.另 外,scp还非常不占资源,不会提高多少系统负荷,在这一点上