• ssh-keygen生成公私钥免密码登录远程服务器


    1.终端输入命令:ssh-keygen -t rsa

      ssh-keygen命令专门是用来生成密钥的。该命令有很多选项,这里列出了最基本的四个:

    -t 用来指定密钥类型(dsa | ecdsa | ed25519 | rsa | rsa1);

    -P 用来指定密语

    -f 用来指定生成的密钥文件名

    -C 用来添加注释

    2.需要你输入一个钥匙的名称,不输入默认为:id_rsa (私钥) 和 id_rsa.pub(公钥)

       通常在企业里面一台服务器有很多人使用,因此默认的名称很可能已经有人使用了,所以这里可以输入一个你自己的名字为好。

    3. 输入密钥名称后,回车,会让输入密码。

    4. 因为我们要免密码登录,所以别填,直接回车2次即可。

    5.此时密钥已经生成好了,直接去家目录下面查看即可。默认存储在 C:Users用户名.ssh 目录下。如果本地的是UNIX操作系统,

    vim /etc/ssh/sshd_config -->去掉以下三行的注释
    RSAAuthentication yes
    PubkeyAuthentication yes
    AuthorizedKeysFile  .ssh/authorized_keys

     重启sshd,service sshd restart或者systemctl restart sshd.service,这时支持远程ssh连接。 

    6.此时我们要把公钥(.pub结尾的那个)放到,你想要控制的那台服务器上面对应 [ 登录用户 ] 的目录下面(例如:/home/登录用户名/),上传到服务器。

    7.服务器的root 的家目录下面的.ssh文件夹下面,没有authorized_keys的话,就把传上去的公钥改名为这个名字,否则就把刚才的xxx.pub里面的内容追加到里面的authorized_keys的末尾.

       追加命令: cat xxxx.pub >> authorized_keys。

       注意:如果是第一次运行SSH,那么.ssh目录需要手动创建,此目录必须为空文件夹,特别注意的是.ssh目录,authorized_keys 文件的权限问题,权限设置 600

    8.此时可以尝试免密码登录了,第一次客户机登录服务机时 有一个询问:没有密码登录的询问,回答yes 就可以了,以后就免密登录了。ssh root@192.168.5.31 发现就进去了。

  • 相关阅读:
    NSPredicate的用法、数组去重、比较...
    CocoaPods安装和使用教程
    UITableView学习笔记
    Linux dpkg 命令
    Linux rpm 软件包管理命令
    Linux chmod 文件权限命令
    Linux vi 命令
    分库分表背后那些事儿
    Spring Cloud Feign原理及性能
    linux "No space left on device" 磁盘空间解决办法
  • 原文地址:https://www.cnblogs.com/xuey/p/7477467.html
Copyright © 2020-2023  润新知