概要:

  首先 自己生成秘钥

  其次 用已经生成的秘钥 实现 用秘钥登陆的功能(在别的机器上部署的道理相同)

  辅助: 登陆工具 Tera Term                  linux版本:centos 5

  前提条件:用testuser登陆

1.创建一个用户

  添加组 groupadd testuser

  添加用户 adduser testuser -g testuser

  设置密码  passwd testuser

2.首先生成RSA秘钥(红色部分需要输入,剩下默认回车就可以)

$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/testuser/.ssh/id_rsa): ← 回车
Created directory '/home/testuser/.ssh'. ← ~/.ssh 文件夹不存在,则生成
Enter passphrase (empty for no passphrase): ← 密码
Enter same passphrase again: ← 再输入密码
Your identification has been saved in /home/testuser/.ssh/id_rsa.
Your public key has been saved in /home/testuser/.ssh/id_rsa.pub.

注意: 在没有使用上面的命令之前 /home/testuser/文件夹中并没有.ssh/文件夹,执行命令之后,才出现。

目录结构

  /home

    ./testuser

      ./ssh

         id_rsa

         id_rsa.pub

2.当上面文件生成后,键入命令

cd /home/testuser/.ssh/

cat id_dsa.pub >> /home/testuser/.ssh/authorized_keys

发现./ssh目录下面又增加了authorized_keys文件

3.修改文件权限

  文件权限

cd /home/testuser/.ssh/
chmod - authorized_keys

  文件夹权限

cd /home/testuser
chmod -R .ssh/

4.修改配置文件

  修改配置文件 /etc/ssh/sshd_config

  修改之前最好先备份一下 cp /etc/ssh/sshd_config /etc/ssh/sshd_config_bak 

RSAAuthentication yes 打开RSA形式的ssh认证
PubkeyAuthentication yes 认证形式为publickey
AuthorizedKeysFile .ssh/authorized_keys 认证文件为.ssh/authorized_keys(上面2生成的文件)

红色部分为注释不需要写

5.重新启动ssh服务

  /sbin/service sshd restart

6.验证

  将上面步骤2生成的id_rsa文件取得,作为秘钥拿到本地 切记第二张图所用的密码为步骤2生成秘钥输入的密码

  

  

  

ssh 密码登陆的更多相关文章

  1. ssh密码登陆的原理,密码的公私钥和sshkey的不是一回事

    密码登录的原理: 密钥加密: 创建分发密钥.分发到服务端的ssh-copy-id的本质是拷贝公钥到对面服务器的,authorized_keys文件下就会多了一个密钥文件信息.就会被拷贝入下面. 客户端 ...

  2. ssh 密码连接报错 permission denied

    背景:ssh连接openstack  king时,出错permission denied (publickey,gssapi-keyex,gssapi-with-mic) 原因:king未开启ssh ...

  3. SSH配置免密码登陆

    1.使用SSH-keygen,然后一路回车使之生成id_rsa何id_rsa.pub文件,id_rsa.pub为公匙文件. 2.使用命令:cat ~/.ssh/id_rsa.pub >> ...

  4. ssh 免密码登陆

    远程ssh登陆服务器或者其他机器时或者scp时,需要输入密码,感觉很麻烦,于是研究如何免密码登陆. step1:Client端生成公钥和密钥 执行命令 ssh-keygen 进入目录~/.ssh里面, ...

  5. ssh免密码登陆

    Ssh免密码登陆设置 准备工作:1.确保两个主机里没有id_rsa.pub和authorized_keys的文件(这两个文件会影响实验的结果)# find / -name id_rsa.pub可查看是 ...

  6. Jenkins进阶系列之——09配置Linux系统ssh免密码登陆

    ssh认证的完整描述:https://www.ibm.com/developerworks/cn/linux/security/openssh/part1/ 说明:点我去查看 今天我们只说生成ssh的 ...

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

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

  8. hadoop搭建杂记:Linux下ssh免密码登陆

    关于ssh免密码登陆的问题 关于ssh免密码登陆的问题 linux下可以用ssh-keygen来生成公钥/私钥对 ①生成id_rsa和id_rsa.pub公钥/私钥对,自动在~/.ssh下生成文件(亦 ...

  9. ubuntu系统使用SSH免密码登陆

    ubuntu系统使用SSH免密码登陆 | 浏览:5160 | 更新:2014-02-13 19:15 1 2 3 4 5 6 7 分步阅读 百度经验:jingyan.baidu.com 我们通常使用U ...

随机推荐

  1. 链表的C语言实现

    #ifndef _CONST_H_#define _CONST_H_ #include <stdio.h>#include <stdlib.h> typedef enum { ...

  2. 《简明python教程》笔记一

    读<简明Python教程>笔记: 本书的官方网站是www.byteofpython.info  安装就不说了,网上很多,这里就记录下我在安装时的问题,首先到python官网下载,选好安装路 ...

  3. C# 只移除最后一个字符

    string str = "|||"; Console.WriteLine(str.Substring(0, str.Length - 1)); Console.WriteLine ...

  4. php : 基础(4)

    流程控制 循环结构 循环的中断 循环中,有两种中断语句可以使用: break: 用于完全终止某个循环,让执行流程进入到循环语句后面的语句: continue: 用于停止当前正在进行的当次循环,而进入到 ...

  5. Cocos2d-x 核心概念 - 导演(Director)

    导演类(Director) 用于管理场景对象,采用的是单例模式(单例模式能保存一致的配置信息,方便管理场景对象) 获得导演实例的语句如下 local director = cc.Director:ge ...

  6. docker compose 笔记

    https://www.youtube.com/watch?v=Uez88TWOECg 是基于这个视频做的笔记. Docker Compose: Compose is a tool for defin ...

  7. Javascript中的链表

    function LinkedList() { // 辅助类,表示加入链表的每一项 var Node=function(element){ this.element=element; this.nex ...

  8. PHP中的逻辑运算符的优先级

    在三元运算中(expr1)?(expr2):(expr3); and,or,xor的优先级要小于三元运算符,所以需要添加括号例:如果$a为true,$b为fals,$a and $b?"tr ...

  9. js 作用域

    js 作用域 js作用域链查找,子函数能取到父函数中定义的变量. 前段时间误写成如下形式: 这只是普通的函数调用,没有父子的关系,child()函数会在全局查找pi变量,没找到所以报错. 最近发现原来 ...

  10. SIGPIPE了解

    当未连接成功相机网络,在socket请求中 if (_session->prepareSession("192.168.1.1") != ICH_SUCCEED)    // ...