117.info
人生若只如初见

如何防止CentOS SSH被攻击

为了防止 CentOS 系统上的 SSH 服务被攻击,你可以采取以下措施:

  1. 更新系统:确保你的 CentOS 系统已更新到最新版本,以便修复已知的安全漏洞。
sudo yum update
  1. 更改默认 SSH 端口:将默认的 SSH 端口从 22 更改为其他端口,以减少自动攻击工具的成功率。

编辑 /etc/ssh/sshd_config 文件:

sudo vi /etc/ssh/sshd_config

找到 #Port 22 这一行,取消注释并更改端口号,例如:

Port 2222

保存文件并重启 SSH 服务:

sudo systemctl restart sshd
  1. 禁用 root 登录:编辑 /etc/ssh/sshd_config 文件,找到 PermitRootLogin 这一行,将其更改为 prohibit-passwordno
PermitRootLogin prohibit-password

保存文件并重启 SSH 服务:

sudo systemctl restart sshd
  1. 使用公钥认证:禁用密码认证,改为使用 SSH 密钥对进行身份验证。这将提高安全性,因为攻击者需要获取你的私钥才能登录。

在客户端生成 SSH 密钥对(如果尚未生成):

ssh-keygen

将公钥复制到服务器的 ~/.ssh/authorized_keys 文件中:

ssh-copy-id -p 2222 your_username@your_server_ip

确保 sshd_config 文件中的以下设置已启用:

PubkeyAuthentication yes
PasswordAuthentication no

保存文件并重启 SSH 服务:

sudo systemctl restart sshd
  1. 使用防火墙限制访问:使用 firewalld 或 iptables 限制可以访问 SSH 服务的 IP 地址。

例如,使用 firewalld 仅允许特定 IP 地址访问 SSH:

sudo firewall-cmd --permanent --zone=public --add-rich-rule='rule family="ipv4" source address="your_ip_address" port protocol="tcp" port="2222" accept'
sudo firewall-cmd --reload
  1. 使用 Fail2ban:安装并配置 Fail2ban 以阻止多次尝试登录失败的 IP 地址。

安装 Fail2ban:

sudo yum install fail2ban

创建一个新的 Fail2ban 配置文件 /etc/fail2ban/jail.local,并添加以下内容:

[sshd]
enabled = true
port = 2222
filter = sshd
logpath = /var/log/secure
maxretry = 3
bantime = 600

启动并启用 Fail2ban 服务:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

通过采取这些措施,你可以大大降低 CentOS 系统上 SSH 服务被攻击的风险。请确保定期检查和更新系统,以便保持安全性。

未经允许不得转载 » 本文链接:https://www.117.info/ask/fec6aAzsNAg9VAFc.html

推荐文章

  • CentOS下如何配置GCC的编译选项

    在 CentOS 下配置 GCC 的编译选项,可以通过以下几种方法: 临时修改编译选项 在编译时直接指定编译选项。例如,使用 -O2 优化级别:
    gcc -O2 -o myprogram...

  • centos nohup日志如何分析

    在 CentOS 系统中,nohup 命令用于在后台运行程序,即使关闭终端或断开连接,程序也会继续运行。nohup 会将程序的输出重定向到一个名为 nohup.out 的文件中。要分...

  • centos挂载时权限不足怎么办

    在 CentOS 系统中,如果在挂载文件系统时遇到权限不足的问题,可以尝试以下方法解决: 使用 sudo 命令提升权限:
    在挂载命令前加上 sudo,以管理员身份执行...

  • centos jenkins集群搭建

    在CentOS上搭建Jenkins集群可以采用多种方式,包括使用Docker和Kubernetes等。以下是一个基于Docker的简单集群搭建步骤:
    环境准备 硬件和操作系统:准备至...

  • 如何提高Ubuntu PHP执行速度

    提高Ubuntu PHP执行速度可以通过多种方法实现,以下是一些有效的优化技巧:
    硬件优化 增加内存:更多的RAM可以减少磁盘交换,提高应用运行速度。
    使用...

  • 如何在CentOS上解决Zookeeper启动失败问题

    在CentOS上解决Zookeeper启动失败问题,可以按照以下步骤进行排查和解决: 检查Zookeeper日志: 查看Zookeeper的日志文件,通常位于/var/log/zookeeper/目录下,...

  • C++ Linux环境下如何并发编程

    在Linux环境下使用C++进行并发编程,主要有以下几种方式:
    1. POSIX Threads (pthreads)
    POSIX Threads 是一种标准的线程库,适用于大多数Unix-like系...

  • 如何在Debian上配置Laravel路由

    在Debian上配置Laravel路由,你需要遵循以下步骤: 安装Laravel:
    如果你还没有安装Laravel,请先通过Composer安装它。在你的项目目录中运行以下命令: