ssh服务(公私钥匙,ssh优化)

🎶一.ssh和telnet区别小实验!

1.ssh

ssh为secure shell的缩写,ssh为建立在应用层基础上的安全协议。在进行数据传输时,会对数据包进行加密处理,加密后在进行数据传输。确保了数据传输安全.

图片

主要功能是:

1.提供远程连接功能

2.提供安全加密服务

2.telnet

图片

3.两者之间的远程连接小测试

telnet:

1.安装包
yum -y install telnet-server
systemctl start telnet.socket

图片

2. 监听
yum -y install net-tool
net-stat -lntp

图片

3.xshell,设置telnet连接

图片

4.登陆

图片

5.抓包
①打开wireshark。

图片

②选择监听,获取那个网卡

图片

③ 我们xshell telnet连接

图片

④在wireshark中会显示出tcp telnet一下过程。

我们找到telnet记录,并追踪它的TCP。可以查看到里面的报文信息是明文的。

图片

图片

shell

①我们在用wireshake观察ssh连接

图片

图片

4.总结

1.抓包分析SSH与Telnet的区别?

名称文件信息类型端口号特征
ssh密文22/tcproot登录
telnet明文23/tcp不支持直接root登录

2.ssh和telnet应用场景?

名称应用场景
sshlinux mac ubuntu
telnet企业级(路由器 交换机 防火墙)

3.安全性对比原理图

图片

🎶二.SSH相关客户端指令ssh、scp、sftp?

ssh --> 连接服务器

ssh root@10.0.0.1 -->连接10.0.0.1服务器,使用root用户

ssh 10.0.0.1 -->连接10.0.0.1服务器,使用的用户取决于当前登录系统的用户

-p

ssh root@10.0.0.1 -p 22 指定连接对端服务器的端口

scp 远程拷贝

推送push

1.将本地oldxu.com文件, 推送到31服务器的/root目录下,使用的是31服务器的root系统用户身份

[root@backup ~]# scp oldxu.com root@172.16.1.31:/root/

拉取pull

2.获取31服务器的/root/oldxu.com文件,至本地/tmp目录,使用的是31的root系统用户身份

[root@backup ~]# scp root@172.16.1.31:/root/oldxu.com /tmp/

3.拷贝目录

-r 参数

-P 端口

-l 限速 #限速为8096kb,换算为MB,要除以 8096/8=1024KB=1MB

[root@backup ~]# scp -r -P2222 etc.tar.gz root@172.16.1.31:/tmp/

4.scp建议:

1.通常用来拷贝配置文件

2.大文件方式

1.先打包,在推送

2.rsync方式

限速非常的重要

🎶三.SSH远程登录方式、用户密码、秘钥方式?

1.用户密码:

lastpass | 1password

1.密码复杂容易忘

2.密码简单不安全

2.秘钥方式:

锁(公钥) 钥匙(私钥)

图片

💗3.本地虚拟机免密码登录

我们现在完成不需要输入密码登录。

实验环境:准备两台虚拟机一台管理(manager)m10.0.0.61和backup10.0.0.41服务器

我们没有设置前ssh是需要输入密码登录的。ssh root@172.16.1.41

图片

1) 生成秘钥对 172.16.1.61

[root@manager ~]# ssh-keygen 【 -C(指定邮箱) 552408925@qq.com】

图片

查看生产的秘钥对文件

图片

2) 将A服务器公钥推送到B服务器 172.16.1.61 —> 172.16.1.41

[root@manager ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@172.16.1.31

#将61服务器的root用户的公钥推送给31服务器的root用户

图片

3) 测试A服务器是否能免密码登录B服务器

[root@manager ~]# ssh ‘root@172.16.1.41’

Last login: Mon Dec 2 11:03:45 2019 from m01

[root@backup ~]#

图片

💗4. 本地虚拟机免密码登录阿里云服务器成功

塞key 。老师 公钥 -----> 学生 公司的服务器上

你想登录哪台服务器:

1.要知道那台服务器的密码

2.将你的公钥放置对应服务器的对应目录下即可

实验环境:

1)我们先准备一个有外网的服务器(阿里云ecs)

图片

图片

图片

图片

图片

图片

图片

图片

2)我们把ecs01当作学生的服务器,我们把m当作老师

a.m刚才上面已经创建好了秘钥对 ,我们把公钥复制到ecs01服务器上面。

[root@m01 ~]# cat ~/.ssh/id_rsa.pub 查看老师m的公钥

图片

b.复制m的公钥粘贴到ecs01学生机服务器放置密钥的配置文件中 ~/.ssh/authorized_keys

[root@iZ8vbeeelmyzkhyl14sb80Z ~]# vim ~/.ssh/authorized_keys

图片

图片

c.测试老师m去免密码远程连接到阿里云服务器ecs01上。

图片

🎶四.ssh优化

SSH远程连接功能安全优化?

SSH作为远程连接服务,通常我们需要考虑到该服务的安全,所以需要对该服务进行安全方面的配置。

1.不使用公网IP地址

2.禁止ROOT管理员直接登录 -->

3.更改远程连接登陆的端口 --> 6666 3344 44555 52179

4.密码认证方式改为密钥认证 -->

5.使用防火墙限制来源IP地址

SSH服务登录防护需进行如下配置调整,先对如下参数进行了解

vim /etc/ssh/sshd_config

Port 6666                       # 变更SSH服务远程连接端口

PermitRootLogin         no      # 禁止root用户直接远程登录

PasswordAuthentication  no      # 禁止使用密码直接远程登录

UseDNS                  no      # 禁止ssh进行dns反向解析,影响ssh连接效率参数

GSSAPIAuthentication    no      # 禁止GSS认证,减少连接时产生的延迟

将如下具体配置添加至/etc/ssh/sshd_config文件中,参数需根据实际情况进行调整

###SSH###

#Port 6666

#PasswordAuthentication no

#PermitRootLogin no

GSSAPIAuthentication no

UseDNS no

###END###

🎶五.fail2ban监控系统日志:

fail2ban可以监控系统日志,并且根据一定规则匹配异常IP后使用Firewalld将其屏蔽,尤其是针对一些爆破/扫描(nmap)等非常有效。

1.开启Firewalld防火墙

[root@bgx ~]# systemctl start firewalld

[root@bgx ~]# systemctl enable firewalld

[root@bgx ~]# firewall-cmd --state

running

2.修改firewalld规则,启用Firewalld后会禁止一些服务的传输,但默认会放行常用的22端口, 如果想添加更多,以下是放行SSH端口(22)示例,供参考:

#放行SSHD服务端口

[root@bgx ~]# firewall-cmd --permanent --add-service=ssh --add-service=http

#重载配置

[root@bgx ~]# firewall-cmd --reload

#查看已放行端口

[root@bgx ~]# firewall-cmd  --list-service

3.安装fail2ban,需要有epel

[root@bgx ~]# yum install fail2ban fail2ban-firewalld mailx -y

4.配置fail2ban规则.local会覆盖.conf文件

[root@bgx fail2ban]# cat /etc/fail2ban/jail.local

[DEFAULT]

ignoreip = 127.0.0.1/8

bantime  = 86400

findtime = 600

maxretry = 5

banaction = firewallcmd-ipset

action = %(action_mwl)s

[sshd]

enabled = true

filter  = sshd

port    = 22

action = %(action_mwl)s

logpath = /var/log/secure

5.启动服务,并检查状态

[root@bgx ~]# systemctl start fail2ban.service

[root@bgx ~]# fail2ban-client status sshd

6.清除被封掉的IP地址

[root@bgx ~]# fail2ban-client set sshd unbanip 10.0.0.1
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值