day36-ssh

作者: 江枍_a99e | 来源:发表于2019-09-26 08:26 被阅读0次

1.什么是ssh

ssh是一个应用层安全协议

2.ssh主要的功能

实现远程登录,数据传输过程中进行加密

3.ssh与telnet之间的区别

ssh:加密 -----> 22 ------>root直接登录
Telnet:明文-----> 23------->不支持root 直接登录

4.抓包分析ssh与telnet的区别

[root@backup ~]#yum install telnet-server -y(安 装Telnet服务)
[root@backup ~]#systemctl start telnet.socket(开启Telnet服务)
[root@backup ~]#echo oollddbbooyy |sed -r's#(.)(.)#\1#g' oldboy
ps:服务器都是使用的ssh协议实现的远程登录
对于路由器交换机都是使用的Telnet协议(web界面调试)

5.ssh相关客户端指令ssh,scp,sftpp?

(1)ssh(windows Xshhell crt)(Mac ssh命令crt)
ssh root@172.16.1.41
[root@web01 ~]# root@172.16.1.41's password:
(2)scp:rsync增量 scp全量(每次都是覆盖)ssh协议
参数:-r(拷贝目录)
推送:[root@web01 ~]# scp./web-file root@172.16.1.41:/tmp
获取:[root@web01 ~]# scp root@172.16.1.41:/tmp/web-file ./test
限速:[root@web01 ~]# scp -l 8192 ./1.txt 172.16.1.41:/tmp
(3)sftp 文件传输协议
简单,带图形,支持断点续传,支持暂停

6.ssh远程登录方式,用户密码,密匙方式

(1)基于用户和密码的方式------>容易忘,不安全
(2)基于密钥的方式实现-----降低泄密风险,提升用户的便捷性
(3)实现免密登录方式
①创建密钥----->公匙+私匙
ssh-keygen -C manager@qq.com----一路回车
②将管理机的公匙推送至web服务器上(需要输入对端服务器的密码)

[root@manager ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@172.16.1.7
③使用ssh命令链接对应的服务器(检查是否免密码)
[root@manager ~]# ssh 'root@172.16.1.7'
④有问题查看
tail -f /var/log/secure
https://www.jianshu.com/p/fb0df700305d

7.ssh场景实践,借助ssh免密实现跳板机功能

QQ图片20190911212335.png
https://www.jianshu.com/p/5fe9152fe78d

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

①更改远程连接登陆的端口 port 6666
修改防火墙端口拦截,同意新的端口:6666

   *:打开防火墙配置文件:vim /etc/sysconfig/iptables

    *:同意6666端口:-A INPUT -p tcp -m state --state NEW -m tcp --dport 6666 -j ACCEPT

    *:ESC,:wq  命令退出编辑

    *:重启防火墙:service iptables restart;

:修改SSH默认端口号,修改为:6666

    1:vi /etc/ssh/sshd_config   17行prot 22改为port 6666

      2:ESC,:wq 保存退出

      3:重启SSHD服务:service httpd restart;

:如果是第三方云服务,请检查他们是否对端口号6666拦截
②禁止ROOT管理员直接登录 PermitRootLogin no
直接 xshell -->root --> server (禁止用户名密码 禁止密钥)
间接 xshell -->oldxu --> server ---> su - root
新建一个用户,用来登录

useradd a
设置密码

passwd 123
修改SSHD配置,禁用root登录

vi /etc/ssh/sshd_config
找到“#PermitRootLogin yes”把注释去掉,把后面的yes改成no。

重启SSHD服务

service sshd restart
下次登陆的时候先用a用户登录,然后再使用su root命令,切换到root下即可!

    ③密码认证方式改为密钥认证       PasswordAuthentication no
    ④重要服务不使用公网IP地址      !!!!!!!!!!!!!!!!!
    ⑤使用防火墙限制来源IP地址      软件防火墙  |  硬件防火墙

⑥.修改后的配置 [测试完后记得还原]

    [root@manager ~]# vim /etc/ssh/sshd_config
    Port 6666                       # 变更SSH服务远程连接端口
    PermitRootLogin         no      # 禁止root用户直接远程登录
    PasswordAuthentication  no      # 禁止使用密码直接远程登录
    UseDNS                  no      # 禁止ssh进行dns反向解析,影响ssh连接效率参数
    GSSAPIAuthentication    no      # 禁止GSS认证,减少连接时产生的延迟

⑦Xshell生成密钥方式认证连接linux服务器
https://blog.51cto.com/7424593/1719853

9.fail2ban又是啥?(研究)

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

    [root@bgx ~]# systemctl start firewalld
    [root@bgx ~]# systemctl enable firewalld
    [root@bgx ~]# firewall-cmd --state
    running

②修改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

③安装fail2ban,需要有epel

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

④配置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

⑤启动服务,并检查状态

[root@bgx ~]# systemctl start fail2ban.service
[root@bgx ~]# fail2ban-client status sshd

⑥清除被封掉的IP地址
[root@bgx ~]# fail2ban-client set sshd unbanip 10.0.0.1

10.SSH如何结合Google Authenticator 实现双向验证? (适合自己用)

    基于密码 + 动态口令     支持
    基于密钥 + 动态口令     不支持
    https://www.xuliangwei.com/bgx/1345.html

相关文章

  • day36-ssh

    1.什么是ssh ssh是一个应用层安全协议 2.ssh主要的功能 实现远程登录,数据传输过程中进行加密 3.ss...

  • Day36-ssh远程控制

    1.什么是SSH? 2.SSH主要的功能是? 实现远程登录, 数据传输过程中进行加密. 钉钉(澡堂模式) 远...

网友评论

      本文标题:day36-ssh

      本文链接:https://www.haomeiwen.com/subject/bbrwyctx.html