zoukankan      html  css  js  c++  java
  • mac/linux ssh 免密码登陆配置及错误处理

    先说一下,mac 和linux 的设置方法是一样的

    一般做法可以参照http://www.tuicool.com/articles/i6nyei

    第一步:生成密钥。在终端下执行命令:

    ssh-kegen -t rsa

    一路回车,各种提示按默认不要改,等待执行完毕。然后执行:

    ls ~/.ssh
    #可以看到两个密钥文件:id_rsa(私钥) id_rsa.pub(公钥)

    第二步:放置公钥到Linux服务器。使用scp命令:

    scp ~/.ssh/id_rsa.pub cssor@cssor.com:/home/cssor/.ssh/

    然后把id_rsa.pub的内容加入到服务器端的默认验证文件authorized_keys,执行:

    #先登录到远程服务器
    cd ~/.ssh
    cat -n id_rsa.pub > authorized_keys

    第三步:配置本地ssh config文件。执行:(这部可有可无,加上之后以后登录就不用敲一长串服务器域名了,敲个别名就行了,建议加上)

    vi ~/.ssh/config
    Host zhangsan  #别名,域名缩写(注释记得删掉)
        HostName 192.168.100.100  #完整的域名
        User zhangsan  #登录该域名使用的账号名
        IdentityFile ~/.ssh/id_rsa #私钥文件的路径

    经过以上操作以后,已经大功告成,感谢一同事帮忙,虽然他用的是Ubuntu系统。 
    使用ssh zhangsan或ssh zhangsan@192.168.100.100就可以直接登录到远程服务器了

    问题处理

    如果按照上述方法操作了还是无法登陆,可先用密码登陆远程服务器然后输入命令:

    用root用户登陆查看系统的日志文件:$tail /var/log/secure -n 20

    会提示类似信息:

    …………
    
    
    Oct  7 10:26:43 MasterServer sshd[2734]: Authentication refused: bad ownership or modes for file /home/zhangsan/.ssh/authorized_keys
    
    Oct  7 10:26:48 MasterServer sshd[2734]: Accepted password for zhangsan from ::1 port 37456 ssh2
    
    Oct  7 10:26:48 MasterServer sshd[2734]: pam_unix(sshd:session): session opened for user zhangsan by (uid=0)
    
    Oct  7 10:36:30 MasterServer sshd[2809]: Accepted password for zhangsan from 192.168.1.241 port 36257 ssh2
    
    Oct  7 10:36:30 MasterServer sshd[2809]: pam_unix(sshd:session): session opened for user zhangsan by (uid=0)
    
    Oct  7 10:38:28 MasterServer sshd[2857]: Authentication refused: bad ownership or modes for directory /home/zhangsan/.ssh

    最新的日志啥意思呢? 就是说 /home/hadooper/.ssh 这个路径的文件夹权限不对

    修改如下:

    chmod 700 ~/.ssh
    
    chmod 600 ~/.ssh/authorized_keys 

    如果不是这个.ssh 文件夹,而是用户目录,比如/home/zhangsan ,那就是你个整个文件夹的权限不对。(注:文件权限分两种 ownership or modes)

    我的问题是,我的账号有root权限,我的登陆账号不是root,但是是我的文件夹的所有者的权限是root:root ,估计ssh识别不了,所以用下面的命令更改一下所

    有文件夹的权限就可以了

    chown -R zhangsan:zhangsan zhangsan/

    至此我的问题解决了,如果你的日志中的错误信息是其他的,那就另行百度吧。 另注:我不是zhangsan

  • 相关阅读:
    Java8新特性Function、BiFunction使用
    Java8 stream用法-备忘录
    springboot使用过滤器Filter
    dockerfile命令说明及使用
    RestTemplate对象,进行get和post简单用法
    Jackson动态处理返回字段
    springboot-jjwt HS256加解密(PS:验证就是解密)
    SpringBoot2.1.3修改tomcat参数支持请求特殊符号
    mysql存储过程 带参数 插入 操作
    性能测试如何计算设置并发数
  • 原文地址:https://www.cnblogs.com/zendu/p/5595972.html
Copyright © 2011-2022 走看看