linux(centos6)下 hadoop安装之ssh配置脚本 permission denied

7 篇文章 0 订阅

配置ssh费老劲了!以前没玩过linux,学到很多东西,命令熟了很多

1.首先是修改 /etc/ssh/sshd_config   ssh的配置文件

其中#行指注释掉得

主要的几个:

Protocol 2 ←去掉#  修改后变为此状态,仅使用SSH2

ServerKeyBits 1024 ← 修改后变为此状态,将ServerKey强度改为1024比特

PermitRootLogin no  ← 修改后变为此状态,不允许用root进行登录,只能切换回非root用户才能登陆

PasswordAuthentication no ← 修改后变为此状态,不允许密码方式的登录,开始设置成yes也可以,就可以在服务器用ssh密码登陆到本机,将公钥认证文件复制过去然后添加到公钥本文件再传回来,再设置成 no

PubkeyAuthentication yes         ← 大家一定注意这个,非常关键,必须设置成yes,允许从公钥认证文件登录,搞了一下午加一晚上才整明白,这个文件里设置的东西太多,出现了 permission denied就改这个文件,无头苍蝇般,一会好用一会不好用,绝大多数不好用

2关于密钥生成后权限配置

这个也被搞了N久,装LINUX,配置网络,装CENTOS6,所有的时间加起来不如ssh耗费的精力多,有的机子好用有的机子不好用,将上面配置改来改去,一直不好用。第二天才发现修改这个就可以了,然后就是一顿试,看改成什么样才行。好像默认的id_rsa就是400,其他的就不知道了,大家可以玩玩看,反正最后的正确设置参考如下:

(1)id_rsa 400,即user只读,g o无权限
(2)id_rsa.pub rm 删除
(3)authorized_keys :u必须有r权限,g o必须没有w权限,其他的都随便,为安全考虑,最终将其设置成400,开始需要设置成600,如上所说,需要服务器传过来公钥本覆盖此文件,覆盖之后再设置成 400
测试过程:chmod ugo authorized_keys   设置之后运行 ssh localhost 看能不能连接 Y能连  N不能连 permission denied
ugo           777   Y
000 N //连续4个看出,user必须有r权限
100 N
200 N
400   Y           
444   Y //g o有r权限也是可以的
544 Y      //u其他权限随意
644 Y
744 Y
433 N     //连续四个看出 g o 不能有w权限其他随意,
410 Y
411 Y

420

学了大半天的脚本编写,写了个简单的ssh配置脚本,前提是有一个配置好的sshd_config文件setssh.sh

为方便不熟的自己练练,整个图片过来了

需要输入一个参数:自己的sshd_config的位置 如 我的是 ./setssh.sh /home/sshd_config ,没写帮助,见笑了

最后别忘了,将公钥本覆盖了以后设置两个东西,

一个是 /etc/ssh/sshd_config的PasswordAuthentication no 然后重启ssh服务(前面说过);

chmod 400 ~/.ssh/authorized_keys 

随便输入 ssh localhost,哈哈

OK了,成功也安全了

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值