ssh配置方面小实验①
注意:sshd_config配置文件有些特殊:
注释掉的选项,并不是不生效的,而是默认生效选项。
使用某选项时,要先取消注释,再修改为yes或no
关于效率和安全的说明:
安全:telnet < ssh单向 < ssh双向加密
效率:telnet > ssh单向 > ssh双向加密
要安全,丢效率
1.环境准备
①准备好两台Linux操作系统的主机,配置好相关网络参数,实现可以正常通信,并将主机名修改为不同的名字
⑴临时关闭防护功能:
iptables -F ;setenforce 0 #清空防火墙规则,临时关闭SELinux
⑵永久关闭防护功能:
chkconfig iptables off #设置防火墙开机不自启动
sed -i ‘7s/enforcing/disabled/’ /etc/selinux/config #永久关闭SELinux
注意:以上两条命令执行后,需要重启服务器才能生效,切记
②用户密码验证
Linux主机之间的远程管理工具是ssh命令,所以我们直接使用ssh进行远程登录
格式-------ssh 用户名@IP地址 【端口号】
e.g. ssh root@192.168.88.20
windows远程登录Linux主机一般使用第三方工具,比如Xshell等工具
格式-----ssh root@192.168.88.10
实验一:单向加密
㈠windows--linux[以Xshell为例]

解释:绿色的为连接指令,紫色的为公钥,红色部分为公钥文件记录类型,一次代表使用结束后自动删除,接收并保存代表后期一直可用,取消则直接断开连接
查看公钥位置:

点击查看,可查看具体的公钥内容

单向加密结束,后期的所有文件都强制加密后发送。
2.密钥对验证
Linux主机之间的密钥对登录验证
①客户端生成密钥对文件
ssh-keygen -t rsa -b 2048
-t 指定加密类型(rsa/dsa等)
-b 指定密钥对加密长度
询问1:执行过程中会询问保存位置,一般默认保存在当前用户家目录下的.ssh/目录下
询问2:是否对密钥文件进行加密
加密:若加密,则在调用密钥文件时需要先验证密钥的密码,密码正确才能使用密钥文件
不加密:若不加密,则密钥文件可以直接被调用,整个登录验证过程无需输入任何密码,即免密登录
②将公钥文件上传至服务器端
ssh-copy-id 用户名@服务器IP地址
若服务器端修改了端口则采用 ssh-copy-id "-p 端口号 用户名@服务器IP地址"
-i 指定上传的公钥文件位置和名字{不指定时是:id_rsa.pub}
#该用户名和要用来登录服务器的用户名一致
③客户端尝试登录服务器
ssh 用户名@服务器IP地址
#密钥对验证优先级大于账户密码验证
实验二:linux--linux[Xshell示例]
⑴两台已连接状态的虚拟机xshell

充当客户端的虚拟机xshell ip地址

⑵用 ssh root@192.168.88.10 连接服务器端

需要先接受公钥,再输入密码,才能验证完成登入
Linux客户端接收了公钥文件后,会将公钥文件存放的路径:~/.ssh/known_hosts


#所有登录服务器的客户端所接收的公钥就是同一个文件
⑶登入后查IP验证

实验三:使用命令进行密钥对共享
Linux主机之间的密钥对登录验证,单向加密情况下,需输入密码验证身份

①客户端生成密钥对文件
执行命令 ssh-keygen -t rsa -b 2048 生成公钥文件

②将公钥文件上传至服务器端
执行命令 ssh-copy-id root@192.168.88.10 将公钥发给服务器端,并创建相关文件

③客户端尝试登录服务器
exit退出后,再执行 ssh root@192.168.88.10 登录服务器

#密钥对验证优先级大于账户密码验证
3.Windows使用密钥对登录Linux
①使用Xshell自带的密钥对生成向导生成密钥对
②将公钥导入Linux主机的指定用户下的指定公钥配置文件内
后面用哪个用户登录就放在谁家里,这里我们先用root用户做实验
#authorized_keys可以存取多个公钥,但每个公钥只占一行
在root家目录下,找到 .ssh 目录,然后在里面创建 authorized_keys 文件,并且将公钥写入进去
#要注意.ssh目录的权限是:700;root和普通用户的.ssh目录 700 和authorized_keys 文件是600权限即可。
③使用windows尝试登录指定用户
实验四:双向加密windows--linux
⑴生成公钥





⑵公钥查看


#若直接导出为私钥
⑶修改linux的公钥文件

修改下列选项,并新建.ssh/authorized_keys文件[也可不修改,此处为默认]

将公钥内容写入文件中(注意为一行),并重启sshd服务(service sshd restart)

⑷重新利用Xshell登入linux系统,选公钥登录,实现免密登录

错误整理:在linux下,所有秘钥相关文件配置正确,但仍无法使用公钥对免密登录

⑴可能原因:文件及文件夹权限问题
权限要求如下:
~/.ssh/authorized_keys: 此文件要求权限为600
~/.ssh: 此文件夹要求权限为700
⑵可能原因:selinux开启导致
selinux开启时,普通用户可以登陆,但root不允许登陆
解决方案:关闭selinux
临时关闭 setenforce 0
# 永久关闭vi /etc/selinux/config 将SELINUX状态改为disabled
ssh配置方面小实验①的更多相关文章
- ssh配置方面小实验②
4.禁止使用密码登录当我们学会了使用密钥对进行验证后,建议生产环境下将账户密码登录功能关掉配置文件:/etc/ssh/sshd_config选项: PasswordAuthentication no ...
- Hadoop之词频统计小实验
声明: 1)本文由我原创撰写,转载时请注明出处,侵权必究. 2)本小实验工作环境为Ubuntu操作系统,hadoop1-2-1,jdk1.8.0. 3)统计词频工作在单节点的伪分布上,至于真正实 ...
- MongoDB 主从复制小实验
MongoDB 主从复制小实验 操作环境描述:WIN8 64位操作系统,内装虚拟机为CentOS 5.5 32位系统. 操作描述:跟其他关系型数据库类似,在主库进行数据操作,将数据同步到从节点,从节 ...
- SSH配置免秘钥登录
一. SSH 配置免秘要登录 配置SSH 免秘要登录,虽然就那么几步,但总是会出现点小问题,今天就做下记录.SSH 免秘钥就是让两台机器相互信任,不需要输入密码就能相互登录.配置相互信任就是把各自的 ...
- 秒懂JVM的三大参数类型,就靠这十个小实验了
秒懂JVM的三大参数类型,就靠这十个小实验了 你好,我是悟空哥,「7年项目开发经验,全栈工程师,开发组长,超喜欢图解编程底层原理」.手写了2个小程序,Java刷题小程序,PMP刷题小程序,已发布到公众 ...
- mysql+ssh 配置(转载)
Mysql+ssh配置 一.Linux平台间mysql+ssh配置 本机地址为:192.168.189.133 mysql服务器地址为:192.168.189.139 linux命令行下使用ssh命令 ...
- Ngrok远程桌面及ssh配置
上一篇Ngrok 内网穿透利器 使用教程我们讲到Ngrok的基本使用教程,这篇描述一下Ngrok的远程桌面及ssh配置 Step 1 修改配置文件ngrok.cfg server_addr: &quo ...
- PBR综合小实验视频-狮子XL
这个是上学时候录的一个策略路由小实验
- centos ssh配置使用
配置 数据阶梯 CentOS SSH配置 默认CentOS已经安装了OpenSSH,即使你是最小化安装也是如此.所以这里就不介绍OpenSSH的安装了. SSH配置: 1.修改vi /etc/ssh/ ...
随机推荐
- 【葵花宝典】lvs+keepalived部署kubernetes(k8s)高可用集群
一.部署环境 1.1 主机列表 主机名 Centos版本 ip docker version flannel version Keepalived version 主机配置 备注 lvs-keepal ...
- ORACLE查找占用临时表空间多的SESSION
需要使用SYS用户登录查看 /* Formatted on 2020/12/30 上午 11:17:12 (QP5 v5.163.1008.3004) */ SELECT k.inst_id &quo ...
- ts类与修饰符
最近在用egret做游戏,就接触到了ts,刚开始的时候觉得类挺难的,毕竟大多数的JavaScript工程师工作中不怎么需要用到这个,但是学起来就不愿意撒手了,真香! typescript其实是es6的 ...
- CodeMonkey少儿编程第2章 turnTo对象
目标 了解对象的概念 了解方法与对象的关系 掌握turnTo指令的用法 在开始本章的学习之前,我们先来复习一下上一章的知识点. 在第1章中,我们学会了在这个游戏中最简单的两个指令. step x 其中 ...
- 1.5V升压3V集成电路升压芯片
干电池1.5V升压3V的升压芯片,适用于干电池升压产品输出3V供电 1.5V输入时,输出3V,电流可达500MA. PW5100是一款效率大.10uA低功耗 PW5100输入电压:0.7V-5V PW ...
- PAT练习num3-跟奥巴马一起学编程
美国总统奥巴马不仅呼吁所有人都学习编程,甚至以身作则编写代码,成为美国历史上首位编写计算机代码的总统.2014 年底,为庆祝"计算机科学教育周"正式启动,奥巴马编写了很简单的计算机 ...
- Hive常用性能优化方法实践全面总结
Apache Hive作为处理大数据量的大数据领域数据建设核心工具,数据量往往不是影响Hive执行效率的核心因素,数据倾斜.job数分配的不合理.磁盘或网络I/O过高.MapReduce配置的不合理等 ...
- U盘UEFI+GPT模式安装CentOS7.X系统
1.制作CentOS7安装盘 还是老套路,开局先制作安装盘,UltraISO软碟通,上图 (1) 打开UltraISO软件,选择"文件"-> "打开" ...
- Java面试官经验谈:如何甄别候选人真实的能力,候选人如何展示值钱技能
我做Java方面的面试官也有些年头了,从校招学生到初级开发到架构师我都面试过.从技术上来讲,候选人通过面试的标准可能千差万别,但归结成一句话,就是候选人达到了职位介绍的要求,且相关项目经验达到足量的年 ...
- Vue之创建组件之配置路由!
Vue之创建组件之配置路由!== 第一步: 当然就是在我们的试图文件夹[views]新建一个文件夹比如home 在home文件夹下面新建一个文件index.vue 第二步:在router目录下做如下事 ...