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 发现就进去了。

ssh-keygen生成公私钥免密码登录远程服务器的更多相关文章

  1. 实现利用公钥私钥免密码登录Linux服务器

    原理 客户端生成公钥私钥,把公钥拷贝给linux服务器,用自己的私钥连接服务器.实现如下: 如果是两台Linux服用器A和B,A来实现免密码登录B A执行ssh-keygen -t rsa 就会在/r ...

  2. MAC下ssh免密码登录远程服务器

    生成密钥.在终端下执行命令: ssh-keygen -t rsa 一路回车,各种提示按默认不要改,等待执行完毕.然后执行: ls ~/.ssh #可以看到两个密钥文件:id_rsa(私钥) id_rs ...

  3. 通过终端使用ssh-keygen免密码登录远程服务器

    使用终端ssh登录远程Linux服务器,每次不输入如密码 原理:使用keygen认证,实现免密码验证即可登录服务器. Linux(包括Mac OS): $ ssh-keygen /*生成密钥*/ $ ...

  4. linux SSH免密码登录远程服务器

    背景:无密码登录,所谓的无密码登录其实是指通过证书认证的方式登录,使用一种‘公私钥’认证的方式来进行ssh登录 在linux系统中,ssh是远程登录的默认工具,因为该工具的协议使用了RSA/DSA的加 ...

  5. ssh免密码登录远程服务器(不采用securecrt登录)

      http://blog.csdn.net/leexide/article/details/17252369       Linux/UNIX下使用ssh-keygen设置SSH无密码登录 标签:  ...

  6. openssh设置免密码登录远程服务器

    主机 host | 远程机器 server 目标:从host登录到server,免密码输入 host机器: ssh-keygen -t rsa 在~/.ssh/中会生成两个文件 id_rsa.pub和 ...

  7. OpenFire后台插件上传获取webshell及免密码登录linux服务器

    1.目标获取 (1)fofa.so网站使用搜索body="Openfire, 版本: " && country=JP,可以获取日本存在的Openfire服务器.如图 ...

  8. python实现免密码登录lunx服务器

    import paramikoimport oshostname='192.168.76.10'username='root'# password='123456'ssh=paramiko.SSHCl ...

  9. ssh免密码登陆远程服务器

    ssh免密码登陆远程服务器 在使用windows下的cygwin或者在linux下使用Terminal进行远程服务器登陆测试的时候总是会要求输入账号密码,对于此我们可以使用ssh将公钥放在服务器上的方 ...

随机推荐

  1. LAMP 2.1Apache不记录指定文件类型日志

    访问日志只需要记地址,不用记录图片. 对无用的图片日志做标记,针对标记做限制.打开 vim /usr/local/apache2/conf/extra/httpd-vhosts.conf 把 Erro ...

  2. adb eclipse 截屏

    DDMS  左侧  选中设备 右上角有一个相机样式的按钮"screen capture"

  3. 解决html中的乱码问题

    1.最简单粗暴的方法就是加一个meta标签,不过值得我们注意的是我们的meta标签是与我们的head标签是同一级的,所以千万不能将meta标签加到我们的head标签中. <meta http-e ...

  4. 如何判断一个字符串是否是UTF8编码

    UTF8是以8bits即1Bytes为编码的最基本单位,当然也可以有基于16bits和32bits的形式,分别称为UTF16和UTF32,但目前用得不多,而UTF8则被广泛应用在文件储存和网络传输中. ...

  5. 算法Sedgewick第四版-第1章基础-003一封装日期

    1. package ADT; import algorithms.util.StdOut; /**************************************************** ...

  6. Linux脚本设计4——一些实用程序

    实用程序1:列目录 #!/bin/bash path=`echo $PATH | sed 's/:/ /g'` for d in $path do echo $d done 这是一个for循环,注意p ...

  7. Android proguard代码混淆

    为什么要代码混淆? Android的安装文件是apk格式.APK是AndroidPackage的缩写.是由android sdk编译的工程打包生成的安装程序文件. Apk其实是zip文件,但是后缀名被 ...

  8. 《Linux内核设计与实现》读书笔记(八)- 中断下半部的处理

    在前一章也提到过,之所以中断会分成上下两部分,是由于中断对时限的要求非常高,需要尽快的响应硬件. 主要内容: 中断下半部处理 实现中断下半部的机制 总结中断下半部的实现 中断实现示例 1. 中断下半部 ...

  9. How to publish a pointcloud of ros msgs in a topic from a pcd file?

    How to publish a pointcloud of ros msgs in a topic from a pcd file? Two methods 1. modified source 2 ...

  10. 从零开始安装 Ambari (3) -- 安装 Ambari

    1. 安装 yum -y install ambari-server 2. ambari server 需要一个数据库存储元数据,默认使用的 Postgres 数据库.默认的用户名和密码是: amba ...