本篇blog将讲述sshd服务提供的两种安全验证的方法,并且通过这两种方法进行两台Linux虚拟机之间的远程登陆。

准备工作:

(1)     准备两台安装有Linux系统的虚拟机,虚拟机软件采用VMware;

(2)     将两台虚拟机设置在同一网段下,互相之间可以ping通,可以采用nmtui命令进行设置;

(3)     在两台虚拟机上安装sshd服务,我这里采用本地yum仓库进行安装,步骤如下:

第一步:执行yum install sshd*

第二步:启动sshd服务,命令:systemctl start sshd

第三步:查看是否有22号端口,命令:netstat -an|more,截图如下

至此,准备工作完毕,

开始介绍之前,首先说明本篇blog用到的虚拟机、yum本地仓库名称和IP地址如下:

主机名

IP

hbza

192.168.0.100

hbza-brother

192.168.0.111

yum

192.168.0.10

第一种方法:

基于口令的安全验证:经过验证帐号与密码即可登陆到远程主机。

这种方法比较简单,我们将hbza作为服务端,hbza-brother作为客户端,我们在客户端利用ssh服务程序远程连接服务端。

在hbza-brother上打开终端,直接执行命令:ssh 192.168.0.100

稍等片刻,出现如下界面我们输入hbza的密码

接下来出现如下界面,代表我们远程登陆成功,我们可以对hbza进行一系列操作。例如:文件的创建、修改。

执行exit命令进行登出,接着做Windows登陆远程实验。

第二种方法(难点):基于密钥的安全验证:需要在本地生成”密钥对“后将公钥传送至服务端,进行公共密钥的比较。

第一步:在本地主机hbza-brother上生成“密钥对”,命令:ssh-keygen

注意:

Enter file in which to save the key (/root/.ssh/id_rsa):在此处回车或设置密钥的存储路径

Enter passphrase (empty for no passphrase): 在此处回车或设置密钥的密码

第二步:将生成的密钥传送到远程主机hbza中,命令:ssh-copy-id 192.168.0.100

出现如下界面,第二个红框处输入远程主机hbza密码。

稍等片刻,出现如下界面说明传送成功

第三步:在远程主机hbza中修改sshd配置文件,命令:vi /etc/ssh/sshd_config

文件的存储位置:/etc/ssh/sshd_config

打开配置文件后,

(1)     将允许密码验证的参数设置为no

(2)     将允许密钥验证的参数设置为yes

(3)     保存退出

第四步:重启ssh服务程序后生效

第五步:尝试无需密码的远程登陆

出现如下页面我们显示登陆成功。

远程控制服务(SSH)之Linux环境下客户端与服务端的远程连接的更多相关文章

  1. Mongodb~Linux环境下的部署~服务的部署与自动化

    <mongodb在linux上的部署> 事实上redis安装程序挺好,直接帮我们生成了服务,直接可以使用systemctl去启动它,而mongodb在这方面没有那么智能,需要我们去编写自己 ...

  2. 在Linux环境下部署MySql服务

    之前有下载部署过几次,但是每次都会踩一些坑.特此记录在liunx下部署安装mysql的基本步骤: 1.卸载老版本的mysql find / -name mysql|xargs rm -rf     查 ...

  3. 虚拟机系统ubuntu12.04(内网环境下的虚拟主机)开启远程连接访问

    一.工具准备: 1.内网虚拟机Ubuntu12.04系统主机一台,开放端口为:29999 2.远程连接软件:mobaxterm 二.开启步骤: 1.查看端口状态信息: netstat -antl | ...

  4. Linux环境下搭建VPS服务

    说明 由于大部分VPN被封,FQ过程中无意间接触到了VPS(Virtual Private Server 虚拟专用服务器,可用于FQ),所以简单记录下VPS服务搭建流程. 此教程基于centos7,本 ...

  5. Linux环境下部署svn服务详解

    说明 环境: 操作系统:centos 8.0 IP:39.100.228.13 安装 用ROOT账号登录,在控制台执行以下命令,一直默认安装就好可以了. [root@localhost ~]#yum ...

  6. Linux环境下安装mysql服务

    我使用的是阿里云的ECS服务,系统是CentOS7,安装mysql版本是5.7 第一步,通过 wget -i -c http://dev.mysql.com/get/mysql57-community ...

  7. 在Mac OS环境下安装MySQL服务

    在Mac OS环境下安装MySQL服务 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 我之前介绍过window环境下安装mysql服务,以及在Linux环境下安装mysql服务,今 ...

  8. Linux环境下Gitblit服务搭建及秘钥配置

    一.安装gitblit服务 1.下载地址 https://pan.baidu.com/s/1wQ3TEE_gw5xZvyFPZB9xFg 2.上传至linux服务器并解压缩 tar xvf gitbl ...

  9. Linux环境下使用图形化界面的SVN客户端软件-RabbitVCS

    如果想在Linux环境下使用图形化界面的SVN客户端软件,那么RabbitVCS绝对是首选,可以媲美Windows环境下用的TortoiseSVN,甚至连操作都基本一样,所以强烈推荐给各位童鞋. Ra ...

随机推荐

  1. SpringBoot之整合Mybatis(增,改,删)

    一,在上一篇文章SpringBoot之整合Mybatis中,我们使用spring boot整合了Mybatis,并演示了查询操作.接下来我们将完善这个示例,增加增,删,改的功能. 二,改动代码 1.修 ...

  2. connection pool exhausted

    1.发现问题 生产环境发现有一些redis报错日志 connection pool exhausted.如果redis中没有数据 就直接回源 查DB.暂时不会有什么大问题.中文意思是连接池耗尽. 2. ...

  3. Linux中安装传输的命令行工具

    创建lrzsz目录: mkdir /usr/local/lrzsz 进入lrzsz目录: cd /usr/local/lrzsz 下载lrzsz压缩包: wget http://www.ohse.de ...

  4. @Transient的用法和格式化页面展示的数据格式

    一.Hibernate中:@Transient用法 用法1:使用@Transient这个注解添加表中不存在字段.将这个注解添加到自定义字段的get方法上 用法2:将该注解添加到定义该字段的头部即可,例 ...

  5. 通过父级id获取到其下所有子级(无穷级)——Mysql函数实现

    [需求]某用户只能查看其自己信息及其下级信息,涉及通过该用户所在部门获取其下所有部门(多层)id集合. 步骤一:对数据库进行设置: set global log_bin_trust_function_ ...

  6. druid 连接池的配置参数

    介绍 DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针对监控而生 ...

  7. 【SQL server基础】SQL存储过程和函数的区别

    本质上没区别.只是函数有如:只能返回一个变量的限制.而存储过程可以返回多个.而函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行.执行的本质都一样.      函数限制比较多,比 ...

  8. Python爬虫(三):BeautifulSoup库

    BeautifulSoup 是一个可以从 HTML 或 XML 文件中提取数据的 Python 库,它能够将 HTML 或 XML 转化为可定位的树形结构,并提供了导航.查找.修改功能,它会自动将输入 ...

  9. Spark 学习笔记之 distinct/groupByKey/reduceByKey

    distinct/groupByKey/reduceByKey: distinct: import org.apache.spark.SparkContext import org.apache.sp ...

  10. JavaSE----03.数据类型

    03.数据类型 1.数据类型分类     Java是强类型语言,Java中的数据类型分为两大类,分别是基本数据类型和引用数据类型.其中,基本数据类型由Java语言定义,其数据占用内存的大小固定,在内存 ...