SSH
为Secure Shell的缩写,是一种网络安全协议
专为远程登录会话和其他网络服务提供安全性的协议。
- 在Linux中,SSH的主要用途有∶
用户加密实现远程登录、服务器之间的免密登录。
SSH协议默认采用RSA算法实现非对称加密
需要两个密钥∶
公开密钥( public key:简称公钥)
私有密钥(private key:简称私钥)
公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。
CentOS 7 配置
ssh-keygen
一路回车
ssh-copy-id + 主机名
将钥匙分发给主机
例如ssh-copy-id hadoop1
Ubuntu 18.04 配置
- 进入root用户,安装ssh,
apt-get install ssh
,用ssh localhost
检测 - 重置root用户的密码,
passwd root
,可以输入登录root时的密码。为了解决permission denied,please try again问题!!! - 允许以 root 用户通过 ssh 登录:
vi /etc/ssh/sshd_config
,找到 PermitRootLogin prohibit-password ,取消注释,并改为 PermitRootLogin yes。然后重启ssh,service ssh restart
- SSH免密登录设置:
ssh-keygen -t rsa
生成公钥和私钥,连续敲三个回车。分发给自己和其他两个虚拟机,ssh-copy-id hadoop1
ssh-copy-id hadoop2
ssh-copy-id hadoop3
,过程中输入yes和对应的密码 - ping一下看连接上了吗
ping -c 1 主机名