ssh服务

SSH是一个加密的网络传输协议。相同的有一个telnet协议(明文)。

SSH是一个安全协议,在进行数据传输时,会对数据包进行加密处理,加密后在进行数据传输。确保了数据传输安全。那SSH服务主要功能有哪些呢?
1.提供远程连接服务器的服务
1)linux远程连接协议: ssh服务 端口22
2)windows远程连接: RDP协议 端口3389
2.对传输的数据进行加密

 

1、telnet和ssh之间区别

telnet是明文,而ssh是密文。

04下 架构——SSH服务+SSH企业案例(跳板机)_远程连接

2、安装telnet服务

注意:telnet服务不支持root用户登录

准备服务器:

主机 ip
m01 192.168.15.71

1、创建一个普通用户

useradd test

2 设置密码

passwd test

3、安装telnet服务

yum install telnet telnet-server -y 

4、安装网络工具

yum install net-tools -y

5、开启telnet服务

systemctl start telnet.socket

04下 架构——SSH服务+SSH企业案例(跳板机)_web服务器_0204下 架构——SSH服务+SSH企业案例(跳板机)_服务器_0304下 架构——SSH服务+SSH企业案例(跳板机)_分隔符_04

 

3 ssh相关命令

3.1

ssh root@192.168.15.71 [command]
ssh 连接的命令
root 连接的用户
@ 分隔符,没有特殊意义
192.168.15.71 连接IP
command 需要执行的命令

 

04下 架构——SSH服务+SSH企业案例(跳板机)_分隔符_05

3.2 生成密钥证书:ssh-keygen

会在家目录中生成一个.ssh的目录,其中包含id_rsa,id_rsa.pub文件

id_rsa 私钥(私钥)
id_rsa.pub 公钥(锁)

04下 架构——SSH服务+SSH企业案例(跳板机)_远程连接_0604下 架构——SSH服务+SSH企业案例(跳板机)_分隔符_07

3.3 ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.15.71

ssh-copy-id 将公钥复制到指定服务器中命令(可以免密登录)
-i 指定公钥
root 用户
@ 分隔符,没事特殊意义
192.168.15.71 IP

结果:会在指定的服务器中创建~/.ssh/authorized_keys ,并且会将本服务器中的公钥复制到其中,以至于实现免密登录。

04下 架构——SSH服务+SSH企业案例(跳板机)_数据传输_08

 

04下 架构——SSH服务+SSH企业案例(跳板机)_远程连接_09

 

4、SSH的验证方式

1、密码验证

直接输入密码即可

2、密钥验证

通过公钥和私钥验证的。

密钥的方式比较安全

5、xshell 生成公钥

04下 架构——SSH服务+SSH企业案例(跳板机)_数据传输_10

然后下一步,下一步

04下 架构——SSH服务+SSH企业案例(跳板机)_服务器_11

编辑/root/.ssh/authorized_keys

把复制的内容放进去

私钥可能保存到Windows里了

然后测试连接:

04下 架构——SSH服务+SSH企业案例(跳板机)_服务器_1204下 架构——SSH服务+SSH企业案例(跳板机)_数据传输_13

 

 

 

 

 

# SSH企业案例——跳板机

1、 准备服务器

主机 ip 身份
lb01 192.168.15.5 负载均衡
lb02 192.168.15.6 负载均衡
web01 192.168.15.7 web服务器
web02 192.168.15.8 web服务器
web03 192.168.15.9 web服务器
nfs 192.168.15.31 文件存储
rsync 192.168.15.41 备份服务器
db01 192.168.15.51 数据库
promethues 192.168.15.61 监控
m01 192.168.15.71 跳板机

2 、将跳板机免密登录所有的机器

for i in 5 6 7 8 9 31 41 51 61 71;do ssh-copy-id -i ~/.ssh/id_rsa.pub root@172.16.1.$i; done

04下 架构——SSH服务+SSH企业案例(跳板机)_web服务器_14

 

04下 架构——SSH服务+SSH企业案例(跳板机)_web服务器_15

3、登录脚本

1、一进来就立即让选择登录的服务器: cd /etc/profile.d
2、可以多次选择需要登录的服务器
3、超管可以通过用户名密码的方式,重新进入跳板机系统
4、解决登录不存在的IP

 

vi /root/login.sh


#!/bin/bash



while true
do
echo "5--->lb01"
echo "6--->lb02"
echo "7--->web01"
echo "8--->web02"
echo "9--->web03"
echo "31-->nfs"
echo "41-->rsync"
echo "51-->db01"
echo "61-->promethues"
echo "71-->m01"


read -p "请输入要登录的服务器:" IP


if [[ $IP = "root" ]];then
read -p "请输入管理员密码:" PASSWORD


if [[ $PASSWORD = "dzg" ]];then
exit
fi


fi


ping -c 1 -t 1 172.16.1.$IP &>/dev/null


if [ $? -ne 0 ];then


echo "你输入的ip有误"
continue
fi


ssh 172.16.1.$IP


done

 

加可执行权限:

chmod +x /root/login.sh

把login.sh移到/etc/profile.d可实现一进来就立即让选择登录的服务器

mv /root/login.sh /etc/profile.d/

 

 

04下 架构——SSH服务+SSH企业案例(跳板机)_远程连接_16

 

知识储备:

1、shell脚本命令行交互输入内容的命令是read [-p]

2、ping命令参数

-c : 指定ping的次数
-t : 指定每次ping的超时时间