day34

1.什么是SSH?

ssh是一个应用层安全协议

2.SSH主要的功能是?

实现远程登录, 数据传输过程中进行加密. 钉钉(澡堂模式)
远程登录:
SSH
Telnet

3.SSH与Telnet之间有什么区别?

SSH 加密 22 root直接登录
Telnet 明文 23 不支持root直接登录

4.SSH相关客户端指令ssh、scp、sftp?
    1.ssh      ( Windows Xshell Crt )   ( Mac   ssh命令  Crt )
    [root@web01 ~]# ssh root@172.16.1.41
    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

    限速 ( kb  1024 * 8 = 实际的传输速率 )
    [root@web01 ~]# scp -l 8192 ./1.txt 172.16.1.41:/tmp
    root@172.16.1.41's password: 
    1.txt                           14%   74MB   1.0MB/s   07:09 

    3.sftp 文件传输协议?
        为什么不适用命名的方式?  为什么使用xftp?
            1.简单,带图形,支持断点续传,支持暂停
5..SSH远程登录方式、用户密码、秘钥方式?

1.基于用户和密码的方式
1.密码太复杂容易忘 lastpass
2.密码太简单不安全

2.基于密钥的方式实现 (指纹)
1.降低密码泄露风险
2.提升用户的便捷性

实现免密码登录方式

1.创建一对密钥   公钥+私钥 ==配套
            [root@manager ~]# ssh-keygen -C manager@qq.com
            .....一路回车.....
            2.将管理机的公钥推送至web服务器上   ( 需要输入对端服务器的密码  )

[root@manager ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@172.16.1.7
        3.使用 ssh 命令 连接 对应的服务器   ( 检查是否免密码  )
        [root@manager ~]# ssh 'root@172.16.1.7'
        
        4.有问题查看
        tail -f /var/log/secure
        https://www.jianshu.com/p/fb0df700305d
SSH远程连接功能安全优化?
    1.更改远程连接登陆的端口       port 6666
    2.禁止ROOT管理员直接登录     PermitRootLogin no
        直接  xshell  -->root   --> server   (禁止用户名密码  禁止密钥)
        间接  xshell  -->oldxu  --> server  ---> su - root
    3.密码认证方式改为密钥认证      PasswordAuthentication no
    4.重要服务不使用公网IP地址     !!!!!!!!!!!!!!!!!
    5.使用防火墙限制来源IP地址     软件防火墙  |  硬件防火墙
    
        10.0.0.1(其他人)    --->  10.0.0.61        异常
        10.0.0.100(公司)    --->  10.0.0.61       正常
    
    6.修改后的配置  [测试完后记得还原]
    [root@manager ~]# vim /etc/ssh/sshd_config
    Port 6666                       # 变更SSH服务远程连接端口
    PermitRootLogin         no      # 禁止root用户直接远程登录
    PasswordAuthentication  no      # 禁止使用密码直接远程登录
    UseDNS                  no      # 禁止ssh进行dns反向解析,影响ssh连接效率参数
    GSSAPIAuthentication    no      # 禁止GSS认证,减少连接时产生的延迟
SSH如何结合Google Authenticator 实现双向验证? (适合自己用)

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

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容