【Python自动化管理】

2021-07-01  本文已影响0人  西布鲁克

使用SSH协议访问远程服务器

SSH(Secure Shell)是一种由IETF的网络工作小组制定、创建在应用层和传输层基础上的安全协议,为计算机上的Shell提供安全的传输和使用环境。

SSH协议

SSH除了提供安全的传输和登录以外,还可以进行批量命令执行。

使用密钥登录远程服务器

远程登录Linux服务器,默认采用密码认证的方式,另外一种应用更广泛、更安全也更方便的方式是使用密钥认证登录。密钥认证的原理如下:

  1. 使用密钥登录时,远程服务器向用户发送一段随机字符串
  2. 客户端SSH服务使用用户的私钥加密该字符串后发送给远程服务器
  3. 远程服务器再使用事先存储的公钥对加密字符串进行解密
  4. 如果解密成功,说明客户端可信,允许客户端直接登录

生成密钥的步骤如下:

  1. 客户端执行密钥生成命令
ssh-keygen -t rsa

ssh-keygen执行完以后,用户的~/.ssh目录下会存在一个名为id_rsa的私钥文件与一个名为id_rsa.pub的公钥文件。

  1. 将公钥文件id_rsa.pub文件上传到远程服务器,并讲文件内容保存到服务器端~/.ssh/authorized_keys中(没有authorized_keys文件可以手工新建)
cat id_rsa.pub >> authorized_keys
  1. 在客户端执行ssh命令重新登录验证
ssh root@xxx.xxx.xxx.xxx
上一篇下一篇

猜你喜欢

热点阅读