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.168.25.14 表示指定由a用户登录机器2)
询问是否需要创建连接 yes
输入机器2中root用户的密码即可登录到机器2
输入exit回到机器1

2、远程免密登录

输入命令ssh-keygen

按三次回车,完成生成私钥和公钥

到/root/.ssh目录下可看到刚刚那条命令生成的私钥和公钥

输入ssh-copy-id 机器2的ip

再输入机器2的密码,即可将公钥传给机器2

机器2的/root/.ssh目录下的authorized_keys文件保存着刚才机器1传过来的公钥(可用cat命令查看,并对比机器1上的公钥,是一样的)

机器1上直接输入ssh 机器2的ip即可登录机器2,不用再输密码,自此完成了远程免密登录的配置

(0)

相关推荐

  • Linux使用ssh公钥实现免密码登录实例

    ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 有机器A(192.168.1.155),B(192.168.1.181).现想A通过ssh免密码登录到B. 首先以root账户登陆为例. 1.在A机下生成公钥/私钥对. [root@A ~]# ssh-keygen -t rsa -P '' -P表示密码,-P '' 就表示空密码,也可以不用-P参数,这样就要三车回车,用-P就一次回车. 该命令将在/root/.ssh目录下面

  • Linux下实现免密码登录(超详细)

    1.Linux下生成密钥 ssh-keygen的命令手册,通过"man ssh-keygen"命令: 通过命令"ssh-keygen -t rsa" 生成之后会在用户的根目录生成一个 ".ssh"的文件夹 进入".ssh"会生成以下几个文件 authorized_keys:存放远程免密登录的公钥,主要通过这个文件记录多台机器的公钥 id_rsa : 生成的私钥文件 id_rsa.pub : 生成的公钥文件 know_hosts

  • linux系统重装导致免密码key登录失败的解决方法

    在一台linux机器上ssh远程另外一台linux服务器时候出现: [root@server .ssh]# ssh 192.0.50.80 @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

  • linux远程登录ssh免密码配置方法

    一.情景 公司刚上几台Linux,现在要把主机之间都能远程ssh免密码登陆. 二.原理 很简单,使用ssh-keygen 在主机A上生成private和public密钥,将生成的public密钥拷贝到远程机器主机B上后,就可以使用ssh命令无需密码登录到另外一台机器主机B上. 三.步骤 主机A: 1. 生成公钥和私钥文件id_rsa和id_rsa.pub (敲3下回车即可) [root@bogon ~]# ssh-keygen -t rsa Generating public/private r

  • Linux两台服务器之间复制文件及免密码登录的方法

    有时候搭建集群机器是,需要在多台机器中间相互拷贝文件,一种方式是同事sftp拷贝到本机,再分别拷贝到其他服务器上.这里介绍一种直接在两台服务器之间拷贝文件且去掉繁琐的登陆操作的方法. 两台服务器之间拷贝文件 采用linux命令scp可以在两台电脑之间复制文件,如有两台服务器192.168.129.100/101,现在需要拷贝100 /etc/passwd文件到101服务器的/etc目录下,登陆100服务器,知道101的用户root的密码为123456 scp /etc/passwd root@1

  • Linux下实现SSH免密码登录和实现秘钥的管理、分发、部署SHELL脚本分享

    环境: ssh server: 192.168.100.29  server.example.com ssh client: 192.168.100.30  client.example.com 通过root用户建立秘钥认证实现SHELL脚本管理,分发,部署 首先client端创建秘钥对,并将公钥分发给需要登录的SSH服务端 注:公钥相当于锁,私钥相当于钥匙,我们这里相当于在客户端创建一对钥匙和锁,想要做到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

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

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

  • 使用python的pexpect模块,实现远程免密登录的示例

    说明 当我们需要用脚本实现,远程登录或者远程操作的时候,都要去解决如何自动输入密码的问题,一般来说有3种实现方式: 1).配置公钥私钥 2).使用shell下的命令,expect 3).使用python的pexpect模块 下面介绍的代码,是使用python的pexpect模块实现的: 代码 import os import sys import pexpect import datetime #获取昨天的日期 date_yes = (datetime.date.today()-datetime

  • 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=

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

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

  • VSCode远程SSH免密登录配置实现

    最近更新了VS Code之后,发现Remote-ssh拓展里的端口转发功能没了,很伤心,在探索的同时,顺手配置了一下VS Code ssh免密登录,以省去每次连接远程文件夹时输入两次密码的烦恼. 网上教程很多,但是很多没有给出细节,对于新手不友好,本文旨在通俗地介绍配置方法. 关键词:VS Code:vscode:ssh:远程开发 本次教程建立在VS Code+Remote-SSH插件开发环境.本地环境是Windows,远程环境是Linux的普通用户,非root. 第一步:本地 打开C:\Use

  • 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地

  • vscode远程免密登入Linux服务器的配置方法

    目录 一.Windows端操作 1. 生成私钥和公钥 2. 安装remote SSH插件 3. 配置config 二.Linux服务端操作 1. 将公钥文件内容追加到authorized_keys文件中 2. 修改权限 一.Windows端操作 1. 生成私钥和公钥 cmd终端输入: ssh-keygen -t rsa -b 4096 一直回车 2. 安装remote SSH插件 3. 配置config 打开vscode远程管理器进行免密登入配置,如下图例操作: 打开Configure 进入到公

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

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

随机推荐