秘钥登录,免密码登录!

什么什么高手 2017-06-13

case1

需求:DB服务器需要免密码访问AP服务器

1.公钥私钥的作成(被访问服务器中做成(ap#1、ap#2))

①su - batch

②$ ssh-keygen -t rsa -b 2048
※这个过程直接按Enter键

③公钥做成authorized_keys
$ cd /home/batch/.ssh
$ cat id_rsa.pub >> authorized_keys
$ chmod 600 authorized_keys

④为了稍作区分,分别作成访问ap#1,ap#2的私钥,其实他们是同一个东西
$ mv id_rsa id_rsa_ap01 (ap#2:id_rsa_ap02)

④SSH登录设置
authorized_keys的开头加入下面的内容
no-pty,no-port-forwarding,no-X11-forwarding,no-agent-forwarding,from="DB#1IP,DB#2IP", ssh-rsa ・・・

⑤将做成的私钥存到DB服务器的「/tmp」
# tar cvf /tmp/key_ap01.tar id_rsa_ap01(AP#2:key_ap02.tar)

2.私钥的存放
登录到DB服务器
# cd /home/batch
# mkdir key
# chown batch:batch key
# chmod 700 key
# ls -ld key
# cd key

# tar xvf /tmp/key_ap01.tar(ap#2:key_ap02.tar)
# ls -l

3.通过scp转送文件判断是否配置完好
①DB服务器

# su - batch
$ cd /tmp
$ touch scp_test.txt
$ scp -i /home/batch/key/id_rsa_ap01 /tmp/scp_test.txt batch@ap01:/tmp/.
$ scp -i /home/batch/key/id_rsa_ap02 /tmp/scp_test.txt batch@ap02:/tmp/.
※初回使用时、询问登录到known_host

②ap服务器中确认是否收到相应文件
# ls -l /tmp/scp_test.txt

case2

访问元服务器里面操作,然后将公钥存放到对象服务器,这样就可以实现免密码登录到对象服务器。
1.生成公钥和私钥

ssh-keygen -t rsa -N ""

2.cd /root/.ssh/

3.通过ll查看刚才生成的公钥和私钥

id_rsa
id_rsa.pub
4.ssh连接到对象服务器

ssh 192.168.100.31
[email protected]'s password:

5.将public key拷贝到对象服务器上
ssh-copy-id -i ~/.ssh/id_rsa.pub [email protected]

6.再次ssh连接到对象服务器时,不再需要输入密码。
ssh 192.168.100.31

总结:被访问的机器里放公钥,需要访问的机器里放私钥

相关推荐