ubuntu免密码ssh登录远程服务器

日常工作中,经常需要登录远程服务器进行工作,而每次敲那一长串命令和密码,非常耗时,虽然命令可以写在脚本里直接执行,但是密码还是每次得敲,而且公司的密码,一般都设置得很复杂,一两次还好,每次都敲,也烦也耗时;使用密码登录还有一个最大的弊端就是不安全,你每次登录,密码就会在网络中游走一次,这是非常不安全的,很多公司规定不能使用这种方式登录,所以这里跟大家分享一下使用密钥登录 

机器1:个人电脑 Ubuntu14.04 LTS系统 

机器2: 阿里云服务器 ubuntu16.04 LTS系统 

步骤1:在我的机器上生成ssh密钥对 命令:

ssh-keygen -t rsa

 在这过程中会提示输入密码, 密码可以不输入 直接enter 接着会提示密钥对的保存路径 也可以不输入 使用默认的路径 ~/.ssh/目录(“~”是当前用户的home路径) 进入~/.ssh/, ls -l 可以看到刚才生成的密钥对,如下所示 id_rsa、 id_rsa.pub、 known_hosts 其中 id_rsa是私钥,一定要保存好,切勿泄露,id_rsa.pub是公钥,需要放到远程机器上的 

步骤2:上传公钥到远程服务器上 使用命令  

scp ~/.ssh/id_rsa.pub

用户名@服务器ip:~/.ssh/authorized_keys scp是linux下跨机器复制命令,详细用法请自行google, 这个命令需要注意的是,ssh需要使用默认的端口 如果不是默认的端口,则不能使用该命令进行远程拷贝 ,上面的命令是把 本机的id_rsa.pub里面的内容赋值到远程服务器的~/.ssh/authorized_keys文件里,注意 如果authorized_keys文件本来有内容 , 则会被覆盖 所以,如果怕被覆盖,可以使用其他名字上传 如:scp ~/.ssh/id_rsa.pub 用户名@服务器ip:~/.ssh/abcde 这样,我们的公钥就会保存在acbde的文件里,然后 使用密码登录上远程服务器,进入~/.ssh/文件夹,使用命令 cat abcde>>authorized_keys 注意,这里一定要使用>> 不能使用单个> 单个也会覆盖,两个表示追加。 到这里基本完成了,尝试使用命令登录ssh xxx@xxx.xxx.xxx.xxx -p xx 如果没有提示输入密码,那么就算是操作成功了


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值