3authorized_keys的权限要是600!root@B ~# chmod 600 rootsshauthorized_keys 4A机登录B机root@A ~# ssh l root 81 The authenticity of host #3981 81#39 can#39t be establishedRSA key fingerprint is 00a6a887ebc740;最后 就是 ssh 登录服务器,验证自己的公钥是否成功上传了,执行下列命令当然也可以指定私钥文件,比如 如果登录的时候还是让你输入口令,则很有可能是ssh服务器上的 ~sshauthorized_keys 权限有问题,请检查下如果还是遇到登录失败的问题,可以在ssh服务器上查看日志,比如相关文章;1检查authorized_keys文件权限,并设置为700 chmod 700 authorized_keys 2检查etcsshsshd_config文件 将 StrictModes yes 设置为 StrictModes no 将 AuthorizedKeysFile sshauthorized_keys 设置为 AuthorizedKeysFile sshauthorized_keys 3删除rootsshknown_hosts文件 4重启ssh service;ssh是目录,所以要有执行权限,authorized_keys只需要读写权限即可,无需执行,虽然authorized_keys给了执行权限也不会有什么危险,但是从安全策略的权限最小化原理来说,给600足够了。
进入101服务器,将公钥导入到~sshauthorized_keys,cd ~ssh cat ~sshid_rsapub ~sshauthorized_keys ~ssh权限设置为700 ~sshauthorized_keys的权限设置为600 这是Linux的安全要求,如果权限不对,自动登录将不会生效 完毕之后,退出服务器的登录,再使用ssh登录,你就会发现;1 ssh目录的权限必须是700 2 sshauthorized_keys文件权限必须是600 3重启sshdetcinitdsshd restart 测试 客户机执行ssh v user@host v 调试模式会显示一些登陆信息若登陆失败,或者仍然要输入密码,可以在服务器查看日志文件varlogsecure若登陆成功,则以后就可以用’ssh;注意 必须将~sshauthorized_keys的权限改为600, 该文件用于保存ssh客户端生成的公钥,可以修改服务器的ssh服务端配置文件etcsshsshd_config来换文件名,默认是叫authorized_keys复制代码 #160#160#160代码如下cat id_rsapub authorized_keys #160#160#160# 将id_;所以这里还是提示输入公钥密码如果 不设置公钥密码就不需要密码了5注意事项如果没有ssh文件,请ssh 88 IP可以SSH的 随便执行一次会自动生成 如果没有authorized_keys 请touch一个 touch authorized_keys 修改下权限 chmod authorized_keys;hadoop添加了私钥还是不能免密登陆是因为authorized_keys文件权限问题1先查看homeuserssh文件下是否存在公钥私钥文件,有就不用执行第二步再次生成公钥私钥2在每台服务器执行命令sshkeygentrsa,三次回车后,该目录下将会产生id_rsa,id_rsapub私钥公钥文件3将第一台服务器写好了。
3 在服务器上,你的目录下~,建立 ssh 目录,设置权限为700或7554 因为 SecureCRT 生成的公钥是 IETF SECSH 格式,与 OpenSSH 的格式不同,需要转换一下执行命令 sshkeygen i ~sshauthorized_keys ,根据提示,输入存储你公钥的文件名Identitypub或你自己更改的名字;将生成的公钥 Keypub 上传至目标服务器,并将Keypub放置于用户目录的ssh目录,同样ssh目录权限也为700 然后执行 cat Keypub authorized_keys 将公钥导入,并确定authorized_keys权限为 600 秘钥配置好后,可以执行 ssh i Key username@hostname p port ssh 默认秘钥为 id_rsa, 需要加;另外说明一下ssh目录权限是700,authorized_keys文件权限为644重点补充,如果还有其他人也想用自己的公钥登陆服务器,该如何操作呢 正常操作应该为该用户在服务器上创建一个账号,重新执行本次Linux服务器端配置,第2点操作当然,你也可以偷懒,把他的公钥也放到test账号的authorized_keys文件;配置用户的公钥登陆时,配置完authorized_keys居然一直不生效,于是google之,发现原来是因为ssh目录和下面文件的权限问题导致的,因为目录的权限已经超过了sshd的要求权限如果希望ssh公钥生效需满足至少下面两个条件。
1在本地机器中的~ssh目录下执行下命令,sshkeygentdsa将生成两个文件,id_dsa和id_将id_dsapub拷贝到远程机器,并且将id_dsapub的内容添加到~sshauthorized_keys中catid_dsapubauthorized_keys注意目录ssh和文件authorized_keys的权限必须是600完成这些工作后,用户从;#160 #160 最后找到了一个权限问题,即使authorized_keys文件权限问题,因为是笔者在ssh目录下新建的文件的默认权限是rwrwr 664,对于authorized_keys来说权限过大,修改为644后就可以了#160 #160 测试结果如下#160 #160 还有可以免去输入用户的麻烦,这就需要解决;先谈谈SSH有哪些功能,才能谈到每个功能有哪些权限SSH最常见的有三大功能其次是SSH是一个典型的CS应用,服务端运行 sshd 守护进程,监听 TCP22 端口默认情况下,客户端运行 ssh 程序,远程连接 sshd 应用,使用以上三种功能sshd 使用 etcsshsshd_config 和 ~sshauthorized_keys。
评论留言
暂时没有留言!