ssh(ssh-keygen)配置免输入密码登录远程主机的方法

环境:
本地主机:ha01
eth0: 192.168.1.100 //对外IP地址

远程主机:ha02
eth0: 192.168.1.200 //对外IP地址

本地主机ha01配置:


代码如下:

[root@ha01 /]# cd /etc/ssh
[root@ha01 ssh]# ssh-keygen -t rsa -N "" (该步骤生成key公私密钥对,-N ""表示密钥对短语为空)
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa):
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
82:2c:74:43:8e:16:f4:ef:ac:91:0f:d7:6f:a6:f3:59 root@ha01

复制公共密钥到远程主机(原始方法):
若ha02服务器上/root/.ssh/authorized_keys文件不存在


代码如下:

[root@ha01 ssh]# scp /root/.ssh/id_rsa.pub root@192.168.1.200:/root/.ssh/authorized_keys

若authorized_keys文件存在
ha01上执行:

代码如下:

[root@ha01 ssh]# scp /root/.ssh/id_rsa.pub root@192.168.1.200:/root/.ssh/

ha02上执行:

代码如下:

[root@ha02 /]# cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys

复制公共密钥到远程主机(新方法):
可以使用ssh-copy-id方便安全的将公共密钥复制到远程主机

ha01上执行:

代码如下:

[root@ha01 ssh]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.1.200

SSH登录测试:

代码如下:

[root@ha01 ssh]# ssh ha02
Last login: Fri Apr 8 10:41:28 2011 from ha01

(0)

相关推荐

  • 使用ssh-keygen,实现免密码登陆linux的方法

    1  本机创建ssh密钥 ssh-keygen 2  拷贝公共密钥到"被登陆机"输入密码, scp  id_rsa.pub  root@10.35.0.35:~/.ssh/id_rsa.pub 3  ssh到"被登陆机"把公共密钥输入 "authorized_keys"(如果多个机器都需要使用rsa密钥认证登录此机器的话,将这些机器产生的公钥全部输入到)"authorized_keys" cat  id_rsa.pub >

  • 详解SSH如何配置key免密码登录

    如何使用 直接指定ip然后-i 指定key文件,然后指定用户 ssh 1.1.1.1 -i Test1 -l userxxx 不指定用户实际上就是使用当前的本机登陆的用户名去登陆远端主机,比如本地用户是AAA,那么: ssh 1.1.1.1 -i Test1 等同于 ssh 1.1.1.1 -i Test1 -l AAA 这里要注意,生成的key是和一对用户绑定的,生成key的用户以及存储这个key的公钥的远端主机的用户.ssh的原理就是,公钥给人家,自己留秘钥,远端主机的其他用户也是无法看到这

  • linux ssh 使用深度解析(key登录详解)

    SSH全称Secure SHell,顾名思义就是非常安全的shell的意思,SSH协议是IETF(Internet Engineering Task Force)的Network Working Group所制定的一种协议.SSH的主要目的是用来取代传统的telnet和R系列命令(rlogin,rsh,rexec等)远程登陆和远程执行命令的工具,实现对远程登陆和远程执行命令加密.防止由于网络监听而出现的密码泄漏,对系统构成威胁. ssh协议目前有SSH1和SSH2,SSH2协议兼容SSH1.目前

  • ssh(ssh-keygen)配置免输入密码登录远程主机的方法

    环境:本地主机:ha01eth0: 192.168.1.100 //对外IP地址 远程主机:ha02eth0: 192.168.1.200 //对外IP地址 本地主机ha01配置: 复制代码 代码如下: [root@ha01 /]# cd /etc/ssh[root@ha01 ssh]# ssh-keygen -t rsa -N "" (该步骤生成key公私密钥对,-N ""表示密钥对短语为空)Generating public/private rsa key pa

  • Linux配置免密登录单机和全分布详细教程

    目录 一:单机免密登录配置 1.设置虚拟机主机名 2.虚拟机中配置主机名与ip地址的映射关系 3.关闭防火墙 4.执行如下命令: 二:全分布免密登录配置  1.设置每台虚拟机的主机名 2.虚拟机中配置主机名与ip地址的映射关系(每一台都要操作) 3.关闭防火墙(每一台都要操作) 4.执行如下命令: 一:单机免密登录配置 1.设置虚拟机主机名 hostnamectl --static set-hostname hadoop001 --static 参数代表永久生效 hadoop001为虚拟机主机名

  • Shell自动化配置SSH免密登录和取消SSH免密配置脚本

    目录 1. 前文 2.实现代码 3. 使用方法 4. 使用注意 1. 前文 搭建了一套有多台主机的局域网环境,不完全考虑安全性的情况下,为方便管理局域网内主机,配置SSH免密登录,因主机较多,前阵子针对配置ssh免密和取消ssh免密功能单独写了脚本来自动化批量部署,现把两个功能封装在一起做成交互式程序 2.实现代码 #!/bin/bash #Author:cosann #Version:0.2 #date:2022/7/27 #description:批量部署SSH免密登录脚本 E_ERROR=

  • vscode配置远程开发与免密登录的技巧

    1.首先在本机安装ssh 在cmd输入ssh,出现下面信息代表安装成功 2.vscode安装 Remote - SSH 插件 3.连接远程主机 vscode点击左下角绿色的按钮 选择Remote-SSH: Connect to Host- -> +Add New SSH Host- 按照格式输入即可,@前面的是用户名,后面是主机的IP 输入完,会弹出一个config的文件,它已经在本地的C:\Users\David.ssh下面创建了一个配置文件 第一个host是本地窗口的名字,第二个是主机IP地

  • Linux配置实现免密钥登录过程解析

    1.ssh命令 在linux中,可以通过ssh命令来登录另一台服务器.打开两台linux虚拟机,一台Linux01的ip为192.168.226.128,另一台linux02为192.168.226.129, 开机后在linux01终端输入: ssh 192.168.226.129 ,然后会提示输入linux02的登录密码,输入后就可以在linux01上登录linux02了,可以进行命令操作,ssh命令的两种方式 ssh ip地址(默认是root用户) 以root用户的身份登录 ssh 用户名@

  • linux下配置远程免密登录问题

    linux下各种集群搭建往往需要配置远程免密登录,本文主要描述了CentOs6.3系统下配置免密登录的详细过程. ssh远程登录,两种身份验证: 1.用户名+密码 密钥验证 机器1生成密钥对并将公钥发给机器2,机器2将公钥保存. 机器1要登录机器2时,机器2生成随机字符串并用机器1的公钥加密后,发给机器1. 机器1用私钥将其解密后发回给机器2,验证成功后登录 1.用户名+密码 如上图所示,机器1要登录到机器2 ssh 机器2的ip(默认使用root用户登录,也可指定,如:ssh a@192.16

  • Win10下配置VScode远程开发ssh-remote(免密登录)

    目录 问题背景: 环境准备: 配置步骤: 1.在本地配置服务器的免密登录 2.VScode上的配置 问题背景: 在开发或者做实验的过程中,我们经常会用到远程服务器或者Github的项目,而我服务器上的项目只能在Jupyter Notebook上编写(或许可以在其他IDE上写,但我不知道).而我们喜欢用的IDE比如Pycharm.轻量级的VScode,如何在本地的IDE上使用服务器的项目且快速.方便地写代码呢?这就是今天要详细介绍的VScode配置免密ssh+remote,一旦连接成功,我们就可以

  • centos配置ssh免密码登录后仍要输入密码的解决方法

    前言 在搭建Linux集群服务的时候,主服务器需要启动从服务器的服务,如果通过手动启动,集群内服务器几台还好,要是像阿里1000台的云梯Hadoop集群的话,轨迹启动一次集群就得几个工程师一两天时间,是不是很恐怖.如果使用免密登录,主服务器就能通过程序执行启动脚步,自动帮我们将从服务器的应用启动.而这一切就是建立在ssh服务的免密码登录之上的.所以要学习集群部署,就必须了解linux的免密码登录. 第一步:在本机中创建秘钥 1.执行命令: ssh-keygen -t rsa -C "xx@qq.

  • Linux 配置SSH免密登录 “ssh-keygen”的基本用法

    1 什么是SSH 引用百度百科的说明: SSH 为 Secure Shell的缩写,由 IETF 的网络小组(Network Working Group)所制定:它是建立在应用层基础上的安全协议. SSH 是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议.利用 SSH 协议可以有效防止远程管理过程中的信息泄露问题. SSH最初是UNIX系统上的一个程序,后来又迅速扩展到其他操作平台. 为了在不同平台/网络主机之间的通信安全, 很多时候我们都要通过ssh进行认证. ssh认证方式主要有

随机推荐