1.1.1 环境说明

A服务器  IP地址:10.0.0.10  ssh端口:921  用户:chenliang

B服务器  IP地址:10.0.0.41  ssh端口:921  用户:chenliang

1.1.2 案例实践一

##需求:

01:A服务器的chenliang用户想通过免密钥认证的方式去连接B服务器的chenliang用户

02:B服务器的chenliang用户不需要通过免密钥方式去连接A服务器的chenliang用户


##第一种方法:

01:在A服务器的chenliang用户的家目录下生成密钥对

    A:执行命令ssh-keygen -t rsa 然后一路回车

    B:在家目录下的.ssh目录下会生成以下两个文件

       id_rsa        #A服务器的私钥

       id_rsa.pub    #A服务器的公钥

02:在A服务器的chenliang用户下将自己的公钥拷贝(用命令)到B服务器

    A:ssh-copy-id -i /home/chenliang/.ssh/id_rsa.pub "-p 921 [email protected]"  

       a:提示"Are you sure you want to continue connecting (yes/no)?"#这里输入yes

       b:提示“[email protected]'s password:”#这里输入B服务器上chenliang用户的密码

    B:在A服务器的/home/chenliang/.ssh/目录下会生成一个known_hosts文件

03:在B服务的chenliang用户下的/home/chenliang/.ssh/目录下会生成一个authorized_keys文件,

    文件中记录的是密钥串(A服务器chenliang用户的公钥与B服务器上chenliang用户的密码合成

    的一个密钥串)

04:在A服务器的chenliang用户下免密钥连接B服务器的chenliang用户

    ssh -p 921 [email protected]


##第二种方法:

01:在A服务器的chenliang用户的家目录下生成密钥对(ssh-keygen -t rsa)

    id_rsa        #A服务器的私钥

    id_rsa.pub    #A服务器的公钥

02:在B服务器的chenliang下创建相关目录

    A:创建/home/chenliang/.ssh目录,并更改权限700

       mkdir /home/chenliang/.ssh  && chmod 700 /home/chenliang/.ssh

    B:创建/home/chenliang/.ssh/authorized_keys文件,更改权限600

       touch /home/chenliang/.ssh/authorized_keys && chmod 600 /home/chenliang/.ssh/authorized_keys  

03:把A服务器chenliang用户的公钥(id_rsa.pub)内容拷贝

    到B服务器chenliang用户下.ssh/authorized_keys文件中

04:A服务器连接B服务器

    A:第一次:ssh -p 921 [email protected]

       a:提示"Are you sure you want to continue connecting (yes/no)?"#这里输入yes

       b:提示“[email protected]'s password:”#这里输入B服务器上chenliang用户的密码   

    B:此时/home/chenliang/.ssh/目录下会生成一个known_hosts文件,

       文件中记录的是密钥串(A服务器的公钥与B服务器上chenliang用户

       的密码合成的一个密钥串)

    C:后面用ssh -p 921 [email protected]连接就不用再输入密码了

1.1.3 案例实践二

##需求:

01:A服务器的chenliang用户想通过免密钥认证的方式去连接B服务器的chenliang用户

02:B服务器的chenliang用户也相通过免密钥认证的方式去连接A服务器的chenliang用户


##操作步骤

01:在A服务器的chenliang用户的家目录下生成密钥对

    echo -e "\n"|ssh-keygen -t rsa -N ""

02:在B服务器的chenliang用户的家目录下生成密钥对

    echo -e "\n"|ssh-keygen -t rsa -N ""

03:在A服务器的chenliang用户下把自己的公钥复制到B服务器上

    ssh-copy-id -i /home/chenliang/.ssh/id_rsa.pub "-p 921 [email protected]"   

    ^=会提示你输入10.0.0.41服务器上chenliang用户的密码

04:在B服务器的chenliang用户下把自己的公钥复制到A服务器上

    ssh-copy-id -i /home/chenliang/.ssh/id_rsa.pub "-p 921 [email protected]"   

    ^=会提示你粤语10.0.0.10服务器上chenliang用户的密码

05:A服务器与B服务器相互免密钥访问,看是否成功

    ssh -p 921 [email protected]

    ssh -p 921 [email protected]