SSH(Secure Shell Protocol,安全的壳程序协议)它可以通过数据包加密技术将等待传输的数据包加 密后再传输到网络上。ssh协议本身提供两个服务器功能:一个是类似telnet的远程连接使用shell的服务 器;另一个就是类似ftp服务的sftp-server,提供更安全的ftp服务。
原理以及过程
在A上使用ssh连接B机
A向B发送连接请求
B收到请求后,将自己的公钥发给A
A收到公钥后,用公钥加密B的登陆密码,生成加密密文,发送给B
B收到加密密文后,用自己的私钥解密,得到解密信息,然后与B的登陆密码做比较,正确则允许A登陆。
ssh免密连接
配置步骤:
1.选择其中一台主机,如host0作为master节点;
2.主机,每台主机上都执行ssh-keygen创建密钥,直接敲三次回车,将会在主机的/root/.ssh/目录下创建新的文件:id_rsa(私钥)、id_rsa.pub(公钥),authorized_keys为存放公钥认证的文件,若需免密登录到远程节点,则需要在远程节点的authorized_keys文件中保存本机的公钥。
3.在每台主机上执行ssh-copy-id host0 #将每台主机的公钥拷贝到host0节点;
4.将host0的/root/.ssh/authorized_keys文件scp到十台主机的/root/.ssh/目录中,包括host0自身。
. 配置root用户 ssh免密登录
进入被连主机的/etc/ssh/sshd_config这个文件
vi /etc/ssh/sshd_config
1
把文件中 “#PermitRootLogin prohibit-password”修改为“PermitRootLogin yes”。
两个被连接的主机都要改。
然后重启ssh服务:
/etc/init.d/ssh restart
1
在两台机器上的root用户下分别执行命令
ssh-keygen -t rsa
1
执行下面两个命令将ssh公钥拷贝到对方机器,ip为对方机器ip:
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.199.183
1
然后在另一台机器上执行以上命令,更换ip即可。