Simple
精灵王
精灵王
  • 粉丝16
  • 发帖数23
  • 铜币168枚
  • 威望230点
  • 银元150个
阅读:3555回复:3

Linux系统公私钥免密登入

楼主#
更多 发布于:2013-02-18 10:23
相信大家对登入各个Linux系统时经常输入root与password,在内网多了,那将是多么麻烦的事。
此帖引导大家如何配置自己的多台Linux系统可以在受信任的Liunx机器上通过ssh公私密钥来免密码登入,在保证安全同时也方便大家工作。
首先有两台机器:192.168.1.100,192.168.1.200
用户名都用root登入。(注:以下所需输入代码都用代码格式,其余将是普通文本)
1.先查看root用户下是否有 .ssh 目录。如果没有则新建,并授予755权限。
cd ~
mkdir .ssh
chmod 755 .ssh
2.生成公私密钥。比如现在我们是要从192.168.1.100上免密码登入192.168.1.200,所以先在192.168.1.100上建立密钥:
cd .ssh
ssh-keygen -t rsa
bash-3.00$ ssh-keygen -t rsa
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:
c7:d4:5c:83:43:ec:cb:bd:59:32:21:64:7a:c5:57:a1 root@mylinux
出现如上提示我们就一路回车就可以。然后在 .ssh 目录下会生产两个文件,id_rsa(私钥), id_rsa.pub(公钥)
然后将id_rsa.pub的文件内容拷贝到192.168.1.200上的 ~/.ssh/authorized_keys文件中。
cat id_rsa.pub | ssh root@192.168.1.200 "cat - >> ~/.ssh/authorized_keys"
然后提示你出入192.168.1.200的root账户密码。上述shell将把id_rsa.pub的内容复制到192.168.1.200的authorized.keys文件上,并且加入192.168.1.200不存在这个文件,就会自动创建,并且,有存在这个文件的话就把内容追加到这个文件上。
3.现在192.168.1.100已经可以通过ssh免密码来登入192.168.1.200了。但192.168.1.200不能免密码登入192.168.1.100。在192.168.1.200上同样通过上面的步骤操作即可。实现相互登陆了。
4.可能会出现的问题:在使用cat id_rsa.pub | ssh root@192.168.1.200 "cat - >> ~/.ssh/authorized_keys"这条shell时,可能有会提示:
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
   WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!    
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
这是因为之前已经有旧的无效的ssh key在目标机器上,只需删除相应的即可。
cd ~/.ssh
vi know_hosts
把相应的id删除就可以了。

最新喜欢:

dongnandongna...
dongnan
总版主
总版主
  • 粉丝52
  • 发帖数2198
  • 铜币13984枚
  • 威望6066点
  • 银元155个
  • 社区居民
  • 最爱沙发
  • 忠实会员
  • 喜欢达人
  • 原创写手
沙发#
发布于:2013-02-18 10:47


给力实用 ..

cat id_rsa.pub | ssh root@192.168.1.200 "cat - >> ~/.ssh/authorized_keys"
替换成这句更简洁。
ssh_copy_id -i ~/.ssh/id_rsa.pub root@192.168.1.200
欢迎关注微信公众号: 运维录
Simple
精灵王
精灵王
  • 粉丝16
  • 发帖数23
  • 铜币168枚
  • 威望230点
  • 银元150个
板凳#
发布于:2013-02-22 17:58
dongnan

给力实用 ..

cat id_rsa.pub | ssh root@192.168.1.200 "cat - >> ~/.ssh/authorized_keys"
替换成这句更简洁。
ssh_copy_id -i ~/....
回到原帖
可以试试。我最开始学习Linux就是从这个免密码登入开始的。不过现在Linux学的不三不四。。。
kinggoo
管理员
管理员
  • 粉丝31
  • 发帖数109
  • 铜币461枚
  • 威望589点
  • 银元200个
  • 社区居民
  • 忠实会员
地板#
发布于:2013-02-22 22:48
dongnan

给力实用 ..

cat id_rsa.pub | ssh root@192.168.1.200 "cat - >> ~/.ssh/authorized_keys"
替换成这句更简洁。
ssh_copy_id -i ~/....
回到原帖
对头
会不会我不知道,反正我在努力!
游客

返回顶部