linux、sftp密钥免密登录

本文分为三种情况:

  1. 平常服务器之间的免密访问
  2. 分享给别人密钥,使用密钥登录服务器
  3. sftp使用密钥登录

一、服务器之间的免密登录

经常用于服务器之间脚本传输文件避免明文密码,一些软件集群之间的信任等。

A机器登录B机器无需输入密码:

  1. 登录A机器,使用需要免密的用户登录
ssh-keygen -t rsa

将会生成密钥文件和私钥文件: id_rsa、id_rsa.pub
2. 将 .pub 文件复制到B机器的 ~/.ssh 目录, 并

cat id_rsa.pub >> ~/.ssh/authorized_keys
  1. 完成,从A机器登录B机器的目标账户,不再需要密码了;
    (直接运行 #ssh user@目标ip )

备注:
客户机器A的~/.ssh/id_rsa文件权限最好限制为700、
服务器端B机器~/.ssh/authorized_keys权限最好限制为400
最后登录时注意登录的用户是否与操作用户对应。
相互登录,把A/B机操作对调一下就可以了

使用密钥文件登录指定服务器

  1. 使用需要免密的用户登录目标服务器
ssh-keygen -t rsa

将会生成密钥文件和私钥文件: id_rsa、id_rsa.pub
2. 将 .pub 文件复制 ~/.ssh 目录, 并

cat id_rsa.pub >> ~/.ssh/authorized_keys
  1. 下载 id_rsa。使用此密钥文件即可免密登录目标服务器

sftp密钥登录

  1. 使用需要免密的用户登录目标服务器
ssh-keygen -t rsa

将会生成密钥文件和私钥文件: id_rsa、id_rsa.pub
2. 将 .pub 文件复制 ~/.ssh 目录, 并

cat id_rsa.pub >> ~/.ssh/authorized_keys
  1. 修改ssh配置文件
vi  /etc/ssh/sshd_config 
#Subsystem sftp /usr/lib/openssh/sftp-server 
Subsystem sftp internal-sftp
  1. 重启ssh服务
  2. 下载 id_rsa。使用此密钥文件即可免密登录目标服务器
sftp -oIdentityFile=私钥地址 用户名@ip

备注:
SFTP 其实就是SSH File Transfer Protocol,所以与ssh密钥登录并无二致。


当然密钥登录还有许多参数和功能,本文只是最简单的实现功能。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值