无密码通过命令行或者脚本访问Linux服务器

最近要频繁通过ssh和scp等命令访问在阿里租用的Linux服务器,总是要输入密码不胜其烦,而且要通过脚本备份文件,脚本里写密码既麻烦也不安全,于是找了一个无需密码访问的方案,记录一下以备不时之需。

简单说就是通过密钥访问,具体过程如下。

  1. 假设两台机器,sourcedest,source要通过ssh或者scp访问dest上的资源,dest是被访问者。
  2. 在source系统里运行如下命令

ssh-keygen -t rsa
默认会生成一对密钥,私钥存放在当前用户.ssh目录下的id_rsa文件中,公钥存放在id_rsa.pub文件中,密码可以为空。

  1. 用scp或者ftp命令把id_rsa.pub文件上传到dest系统。
  2. 登录dest系统,在当前用户命令行运行如下命令

cat id_rsa.pub >> ~/.ssh/authorized_keys

  1. 最后还可以运行下面这个命令来保护一下你的authorized_keys文件

chmod 700 ~/.ssh/authorized_keys

Source: https://blogs.oracle.com/jkini/entry/how_to_scp_scp_and

    原文作者:蓝色瓦力
    原文地址: https://www.jianshu.com/p/197a5a372402
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞