一、简介

        ssh提供安全地远程登录
        ssh是Secure Shell(安全的壳)的缩写
        ssh是一个应用层协议
        openSSH是ssh协议的免费开源实现

1、相关参数

        软件包: openssh
        服务名: sshd
        默认端口: 22
        主配置文件: /etc/ssh/sshd_config、/etc/ssh/ssh_config
        日志配置文件: /var/log/secure
        连接方式: ssh [用户名@]IP地址
        安全性: 在数据传输过程中进行加密

2、加密方式

对称加密

        本质:加密密钥、解密密钥使用同一套密钥
        优点:维护一种密钥、加密解密速度快
        不足:密钥管理困难

非对称加密

        本质:公钥加密、私钥解密
        公钥加密的密文只能通过对应的私钥进行解密
        通过公钥推理出私钥的可能性微乎其微

3、密码验证

验证内容
        服务器端公钥、客户端的用户名和密码(复杂性)
验证结果
        第一次连接需要验证服务器公钥
        保存服务器公钥后,每次连接需输入用户密码

4、密钥验证

优点:
        可以实现主机间的免密登录
验证内容:
        服务器端公钥、客户端公钥

二、服务搭建

ssh服务相关配置
        vim /etc/ssh/sshd_config

取消dns域名反解: UseDNS no
禁止密码验证: PasswordAuthentication no
禁止使用root远程登录: PermitRootLogin no
修改默认端口: Port 新端口
限制ssh监听的ip: ListenAddress 监听IP

限制监听端口

vim /etc/ssh/sshd_config
        ListenAddress 0.0.0.0         #可以登录任何一个IP
        ListenAddress 指定IP         #只能登录指定IP
应用场景
        一般生产中的服务器有多个IP,分内网和外网
        出于安全考虑,一般只允许通过内网IP进行远程登录

        cd /etc/ssh/sshd_config.d

        修改 01开头的文件 yes->no 会导致root无法进行远程登陆

        禁止密码验证

三、相关命令

scp
        scp: secure copy, 基于ssh的、进行安全的文件拷贝
        用于Linux下进行安全的文件复制
        加密传输、速度较慢
        不占用资源
        不提高系统负荷
格式: scp [-P 端口] 源文件路径 用户名@目标IP: 目标位置路径

补充

配置SSH防护:fail2ban

#工作原理:

        Fail2Ban 的原理是通过监控日志文件、识别恶意行为模式,并动态调整防火墙规则 来禁锢攻击者的IP地址一段时间。其核心目标是防御暴力破解等自动化攻击。

#开启防火墙         systemctl start firewalld

#安装软件(需要联网,在epel源中)        

清缓存 建立缓存

dnf clean all

dnf makecache

安装服务

dnf -y install epel-release

dnf -y install fail2ban

#添加配置        vim /etc/fail2ban/jail.conf

#启动服务        systemctl restart fail2ban

#服务器上查看ssh防护结果:

fail2ban-client status

fail2ban-client status sshd

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐