zoukankan      html  css  js  c++  java
  • ssh免密登录linux

    一、远程linux 创建 用户设置密码

    adduser username      #添加用户名
    passwd username       #添加登录密码,适合adduser之后没提示设置密码的情况

    vi /etc/sudoers (给用户设置root 权限 sudo su -),如不想设置root权限也可跳过该步骤

    # User privilege specification
    root ALL=(ALL) ALL
    username ALL=(ALL) ALL                     #此句为添加语句

    二、在客户端电脑生成公钥私钥

    如果客户端已有公钥私钥可跳过该步骤

    ssh-keygen -t rsa   #然后一路回车即可

    执行完该命令,会在 ~/.ssh 文件夹下生成 id_rsa和id_rsa.pub

    三、把公钥传到要登录的linux 账户

    ~/.ssh/id_rsa.pub 文件发送到服务器指定账户的authorized_keys中,这样以后用指定的用户名登录该服务器就不在需要输入密码

    ssh-copy-id -i ~/.ssh/id_rsa.pub username@host -p 22

    接下来即可免密登录linux

    ssh username@host -p 22

    四、客户端配置别名登录

    vim ~/.ssh/config

    Host haha
      HostName host
      User username
      Port 22
      # PreferredAuthentications publickey 
      # IdentityFile ~/.ssh/id_rsa      
    #设置指定认证方式,可加快连接速度
    #如果客户端有多对秘钥,也可通过该方式指定

    接下来登录服务器只需要输入:

    ssh haha

    五、采坑

    Permission denied (publickey,gssapi-keyex,gssapi-with-mic,password)

    一般情况下不会遇到以下问题,如果遇到了多半是因为服务器上的权限有问题,服务器上的~/.ssh/authorized_keys有严格的权限,过高过低都不行

    chmod 700 /home/username            #设置用户权限
    chmod 700 ~/.ssh                    #设置ssh 权限
    chmod 600 ~/.ssh/authorized_keys    #设置 authorized_keys 权限

    如果是新创建的用户,没做过权限修改一般不会遇到这个问题

    网上有说 修改sshd_config 可以参考,

    sudo vim /etc/ssh/sshd_config
    
    PubkeyAuthentication    yes
    PasswordAuthentication yes
    #用root用户登入
    PermitRootLogin yes
    
    
    sudo systemctl restart sshd

    笔者尝试修改该没什么作用,放这做个参考吧

  • 相关阅读:
    访问修饰符
    SqlServer 查运行进程
    SqlServer 作业计时执行存储过程,杀超时进程
    VS快捷键操作
    sql server 命令
    vs 加载 dev控件
    TreeList显示[+] [-] 线条样式
    佳能MG2580S清零
    Dev WaitDialog 使用
    导出.txt / .pdf / .xls
  • 原文地址:https://www.cnblogs.com/xbblogs/p/13534763.html
Copyright © 2011-2022 走看看