zoukankan      html  css  js  c++  java
  • SSH免密码认证

     举例:有机器PC_A(172.0.246),PC_B(172.0.1.140)。现想A通过ssh免密码登录到B。需要A主机的公钥传输出去。

    1.在PC_A主机下生成公钥/私钥对

    [comodo@PC_A ~]$ ssh-keygen -t rsa -P ''
    
    
    -t表示key的类型,rsa表示key类型 -P表示密码,-P '' 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车。运行完之后在/home/comodo/.ssh目录下生成私钥id_rsa和公钥id_rsa.pub

    2.将PC_A主机下的公钥id_rsa.pub复制到PC_B机下

    [comodo@PC_A ~]$ scp id_rsa.pub root@172.0.1.140:/home/comodo/id_rsa.pub

    3.将PC_B主机上的公钥添加到/home/comodo/.ssh/authorzied_keys之中

    [comodo@PC_B ~]$ cat id_rsa.pub >>/home/comodo/.ssh/authorized_keys
    [comodo@PC_B ~]$ chmod 600 /home/comodo/.ssh/authorized_keys 

    4.从PC_A机登录PC_B机

    [comodo@PC_A ~]$ ssh 172.0.1.140
    Last login: Fri Oct 12 10:37:30 2012 from 172-0-1-246.lightspeed.brhmal.sbcglobal.net

    如果也希望从PC_B主机无密码登录PC_A主机,只需对PC_B主机做相同的操作。

    注:

      1:ssh-keygen 会生成 两个文件 id_rsa.pub和id_rsa

      2:authorized_keys文件用来存外来机器的公钥(如果没有可以手动创建)

      3:当使用ssh免密码登录时会自动生成一个known_hosts文件,如登录出现问题时需要删除此文件

      4:如果.ssh文件夹是手动创建 chmod 0700 .ssh

    补:以下方法

    $ ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
    $ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
    $ chmod 0600 ~/.ssh/authorized_keys
  • 相关阅读:
    建立一个简单的通讯录
    建立一个图书管理系统(oc)
    OC 学习第六天(敲代码时遇到的一些错误)
    Serv-U FTP Server 15.1.2学习笔记
    Myeclipse&Tomcat中遇到的部分问题---其一
    MySQL存储过程和函数(三)
    MySQL存储过程和函数(二)
    MySQL存储过程和函数(一)
    mybatis拦截器分页
    Java--最大子序列和实现
  • 原文地址:https://www.cnblogs.com/jimmy-xuli/p/9002707.html
Copyright © 2011-2022 走看看