sftp配置免密以及权限配置

场景:机器A通过sftp免密登录机器B

机器A有用户redis、 nginx,    机器B有用户monitor、 bak用户

需求:机器A在nginx用户环境下,sftp机器B的bak目录

注意:因为sshd为了安全,对属主的目录和文件权限有所要求。如果权限不对,则ssh的免密码登录不生效。

极其重要:被登录的机器(机器B)的家目录/home/bak、.ssh、id_rsa、 id_rsa.pub、authorizied_keys对其他用户不能有w(写)权限,(可使用chmod go-w  目录或文件命令取消写权限),机器A的id_rsa文件权限必须为600, 否则会出错。

参考下面的权限配置即可:
用户目录权限为 755 或者 700,就是不能是77x、777,
.ssh目录权限一般为755或者700。
id_rsa.pub 及authorized_keys权限一般为644
id_rsa权限必须为600

步骤:

1、在机器A操作:切换nginx用户,查看 /home/nginx/.ssh目录是否存在,查看.ssh是否有id_rsa和id_rsa.pub两个文件。如果存在,则跳过这一步,如果不存在,则在机器A运行ssh-keygen -t rsa,将会生成.ssh目录和公钥和私钥两个文件。

2、在机器B操作:切换bak用户,查看/home/bak/是否存在.ssh目录,如果存在,则再查看其他用户对.ssh权限是否有写权限,(注意:只有bak用户才能拥有对.ssh的写权限,否则配置出错)。

如果其他用于对.ssh有写权限,则调整.ssh目录权限为700。

进入.ssh目录,建立authorized_keys文件,并将机器A的id_rsa.pub的内容复制到authorized_keys中。修改chmod 600 authorized_keys的权限为600

 

 3、在机器A的nginx用户下,sftp bak@192.168.74.103测试:

中间输入一次yes就可以了。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

圣诞节不感冒

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值