Linux上ssh免秘钥互登
两台机器分别为:
master:192.168.1.10
sever1:192.168.1.20
1、检查机器名和连通性
a.查看/etc/hostname
[root@master master]# more /etc/hostname
master
[master@sever1 ~]$ more /etc/hostname
sever1
b.查看/etc/hosts
[master@sever1 ~]$ more /etc/hosts
127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 sever1
::1 localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.1.10 master
192.168.1.20 sever1
c.修改ssh config配置 /etc/ssh/sshd_config
PubkeyAuthentication yes #号去掉 AuthorizedKeysFile .ssh/authorized_keys
另外在该文件中显示,AuthorizedKeysFile .ssh/authorized_keys,keys存储路径在”.ssh“的文件夹的authorized_keys文件里。
2.生成秘钥文件
由于刚开始是没有.ssh目录的,所有需要创建,有的话就不再创建。
在master操作:
[master@master ~]$ mkdir .ssh
[master@master ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/master/.ssh/id_rsa):
Enter passphrase (empty for no passphrase):
Enter same passphrase again:
Your identification has been saved in /home/master/.ssh/id_rsa.
Your public key has been saved in /home/master/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:fXev+pN/A3hbytQBouTfgN2rgBFWDEDUFE60n9rEbdA master@master
The key's randomart image is:
+---[RSA 2048]----+
| o+=*=. |
| o+.o.. . |
| .o+.+Eo . |
| .o=+o . . |
| S=oo= + o|
| .+..+ B +.|
| . .. = =..|
| . +oo.|
| .ooo+|
+----[SHA256]-----+
[master@master ~]$ ll .ssh
总用量 8
-rw-------. 1 master master 1679 10月 30 17:09 id_rsa
-rw-r--r--. 1 master master 395 10月 30 17:09 id_rsa.pu
在.ssh 目录下生成了 id_rsa(私钥) id_rsa.pub(公钥)
chmod 600 authorized_keys
在sever1上操作:
mkdir .ssh
把master .ssh/authorized_keys 复制到server1 .ssh 目录下
[master@sever1 .ssh]$ scp id_rsa.pub 192.168.1.10:/home/master/
master@192.168.1.10's password:
id_rsa.pub 100% 395 146.3KB/s 00:00
在server1 创建秘钥文件
ssh-keygen -t rsa cat id_rsa.pub >> authorized_keys
把sever1 的 公钥 id_rsa.pub 复制到master上的authorized_keys 中
[master@sever1 .ssh]$ scp id_rsa.pub 192.168.1.10:/home/master/
master@192.168.1.10's password:
id_rsa.pub 100% 395 146.3KB/s 00:00
在master上 cat id_rsa.pub >>.ssh/authorized_keys
操作检查:
在master上
[master@master .ssh]$ more authorized_keys
ssh-rsa ***SotejwKqLFN67gQsc8oZhdirqPLUxn9ZeWRLj7z3fxDeDvL0fDJg3lQYVuMFyBN8qHPWYv36pttHSzeCVetxC3
fFv7QMtZ036AawoiCMJTtteNFCkcaVnvEn8CJHrFH3D7AR master@master
ssh-rsa ***PxJEBChJ2QVVfY1soOpZCzgP60lYhx7AsdPe8L2OV69QnGjdSNGGCedppufAxexW0jEObES7FUa4vwtLgw8+S5
8QT52SpWm8rYC9FtQlfg3hwcAAgLnPdsEJj5pMhj4g5W2R master@sever1
在server1上
[master@sever1 .ssh]$ more authorized_keys
ssh-rsa ***8i1ZYqsRM3XRmRR6iGIqV63oW763l3BR7+E5Y76mA1jNYnhl1fLOU4V6xYx
fFv7QMtZ036AawoiCMJTtteNFCkcaVnvEn8CJHrFH3D7AR master@master
ssh-rsa ***8L2OV69QnGjdSNGGCedppufAxexW0jEObES7FUa4vwtLgw8+S5Jj9m0SYO7
8QT52SpWm8rYC9FtQlfg3hwcAAgLnPdsEJj5pMhj4g5W2R master@sever1
但是在master 和server1 上分别ssh 依旧是需要密码的,该怎么解决?
在master 和server1 分别执行 chmod 700 .ssh
验证:
在master上执行
[master@master ~]$ ssh 192.168.1.20
Last login: Tue Oct 30 17:40:13 2018 from 192.168.1.1
[master@sever1 ~]$
在server1上执行
[master@sever1 ~]$ ssh 192.168.1.10
Last login: Tue Oct 30 17:40:10 2018 from 192.168.1.1
[master@master ~]$
验证通过。
另计:
会在当前用户的主目录下生成一个.ssh文件夹用于保存:密钥、authorized_keys、等文件。
1:)生成密钥
ssh-keygen -t rsa (一直回车就行)
2:将公钥复制进入一个名字为"authorized_keys"中。
这个名字是默认的,不能改变,
因为系统就是根据这个文件来判断那些机器的公钥已经保存在这里了,
可以进行免钥登录。
cat id_rsa.pub >> authorized_keys
(这是放在本地的authorized_keys,是为了能够ssh localhost)
3:分发密钥 (这是最主要的!因为目的主机有client机器的公钥才能免密登录)
ssh-copy-id 目的主机IP
Linux上ssh免秘钥互登的更多相关文章
- linux下ssh免秘钥登录
1.检查防火墙是否关闭 (1)切换到root用户 (2)查看防火墙状态 service iptables status 这是没有关闭 (3)设置关闭 service iptables stop 2.检 ...
- Linux SSH 免秘钥登录
SSH 免秘钥登录 ssh:是一种安全加密协议 ssh username@hostname ssh gongziyuan.com:以当前用户登录该机器(如果不是当前用户,需要这么干:ssh ...
- Linux之间配置免秘钥访问
环境说明 [root@localhost1 ~]# cat /etc/redhat-release CentOS release 6.5 (Final) [root@localhost1 ~]# un ...
- ssh免秘钥登陆实现
1.用处 搭建集群或者工作中登陆跳板机经常需要做免秘钥互相登陆彼此服务器. 2. 准备工作 假设A主机10.20.0.1想通过ssh登录到B主机10.20.0.2上. 那么客户端(A主机)需要 ...
- ssh免秘钥配置
1.要求:两台相同的系统,这里设置server1控制server2的服务器 2.先在两台服务器上都安装好ssh 输入命令下载: yum install -y openssh-clients opens ...
- Centos7 配置ssh 免秘钥登陆
1.yum install -y openssh 2.servier1: ssh-keygen -t rsa #有提示的直接enter 3.server 2: ssh-keygen -t rsa # ...
- linux普通用户免秘钥登录(xshell工具环境)
一.xshell生成密钥 1)工具->新建用户密钥生成向导 2)选择密钥类型.密钥长度(默认即可) 3)生成密钥(生成公钥和私钥) 4)为密钥加密,增加密码(可选),建议加上 5)将公钥保存为文 ...
- 服务器做ssh免秘钥登陆
集群内服务器做非root用户免秘钥登陆:1.node1新建用户abc1,制作公钥.私钥(一路回车键即可)ssh-keygen –t rsa将自动在/home/abc1/.ssh/目录下创建公私钥文件如 ...
- ssh免秘钥
用过好几次免秘钥,但是每次都会忘了应该把copy谁的公钥到另外用户的.ssh文件夹 这里专门记录一次 注意点: A要使用ssh免密登录到B用户下(可以使远程服务器),就把A的用户下的.ssh文件的id ...
随机推荐
- C#连接内存数据库redis【1、安装配置】
Redis是一个不错的缓存数据库,读取数据速度效率都很不错.今天大家共同研究下redis的用法.结合网上的资料和自己的摸索,先来看下安装与配置把. 咱们主要看在WINDOWS上怎样使用REDIS数据库 ...
- win10下用Anaconda安装TensorFlow | 后附JetBrains测试
从意识上认识Anaconda(音标:[ˌænəˈkɑ:ndə])/(拼读:安娜康达). Anaconda:水蟒的意思,如图logo像不像水蟒.其最后五个字母是conda(包管理器),而Anaconda ...
- Vue调试工具vue-devtools安装详解
https://blog.csdn.net/github_37360787/article/details/80284418
- Redis ==> 集群的三种模式
一.主从同步/复制 通过持久化功能,Redis保证了即使在服务器重启的情况下也不会丢失(或少量丢失)数据,因为持久化会把内存中数据保存到硬盘上,重启会从硬盘上加载数据. 但是由于数据是存储在一台服务器 ...
- java+实现文件的上传和下载
项目截图 路径配置 将localhost:8080/up6全部替换为实际项目路径 使用mysql文件夹下的脚本创建数据表. 创建后可以在数据库中看到创建好的数据表 2.修改数据库连接 3.修改上传地址 ...
- java文件分片上传,断点续传
百度的webUploader的前端开源插件实现的大文件分片上传功能 前端部分 前端页面代码如下,只需要修改自己的文件上传地址接口地址: <!DOCTYPE html> <html l ...
- Golang中基础的命令行模块urfave/cli
前言相信只要部署过线上服务,都知道启动参数一定是必不可少的,当你在不同的网络.硬件.软件环境下去启动一个服务的时候,总会有一些启动参数是不确定的,这时候就需要通过命令行模块去解析这些参数,urfave ...
- SqlServer数据库查看被锁表以及解锁Kill杀死进程
步骤1.查看锁表进程 2.杀死进程 --1.查询锁表进程 spid.和被锁表名称 tableName select request_session_id spid,OBJECT_NAME ...
- linux如何设置磁盘配额?
环境:CentOS7 需求: zhang3 用户在 /dev/sdb1 上,只能使用100M的空间,建立 200个文件. 注意事项:XFS 不能对 / 开启配额 ...
- Linux 基础整理
Linux系统的启动过程大体上可分为五部分:内核的引导:运行init:系统初始化:建立终端 :用户登录系统. 用户登录 Linux的账号验证程序是login,login会接收mingetty传来的用户 ...