如何在 Linux 中正确保护 sysctl:安全加固技巧

在计算机科学中,内核是操作系统的灵魂。 Linux 内核的设计具有非常完善的操作系统架构知识。 Linux 主要有三种类型的内核。 它们是单体内核、微内核和混合内核。 Linux 有 Monolithic 内核。 为高性能和稳定性而构建的单片内核。 MicroKernel 为灵活性和易于实施而构建。 内核可以访问系统资源。 您可以使用系统控制工具调整和配置 Linux 内核安全性和设置。 在 Linux 中,系统控制单元简称为 sysctl。

sysctl 如何在 Linux 中工作

Linux 文件系统具有非常独特和高效的架构设计来解释核心系统。 Linux 内核配置保存在 /proc/sys 目录。 中央系统控制单元或 sysctl 工具既可以用作单独的程序,也可以用作管理命令工具。

sysctl 可用于管理处理器、内存和网络接口卡的工作功能。 此外,您可以通过在 sysctl 程序中添加自己定制的配置脚本和命令,使您的 Linux 系统更加安全和安全。 在这篇文章中,我们将了解如何在 Linux 中保护 sysctl。

1.在Linux中配置sysctl设置

前面提到过,sysctl是一个内核工具,所以它是Linux中的一个预装工具。 您无需再次安装或覆盖它。 您可以开始使用 sysctl 命令工具。 那么让我们开始使用Linux系统控制工具吧。 要检查当前的 sysctl 系统状态,请运行以下终端命令行。

$ sysctl --system

现在,您可以采取措施在系统控制设置脚本中添加所需的配置。 您可以使用 Nano 文本编辑器打开 sysctl 配置脚本来添加您的个人设置。 使用以下终端命令使用 Nano 文本编辑器打开脚本。

– –

$ sudo nano /etc/sysctl.conf

Linux nano 上的 sysctl

在 sysctl 配置脚本中,您会发现一些现有的默认设置。 你可以保持原样,或者如果你想让你的 Linux 系统更安全,你可以添加一些额外的规则,并用下面给出的以下设置替换现有的配置。 通过编辑 sysctl 配置脚本,可以防止中间人(中间人) 攻击、欺骗保护、启用 TCP/IP cookie、数据包转发和记录火星数据包。

如果您是 Linux 系统管理员或程序员,您必须知道可以通过在行前添加井号 (#) 将代码行保留为注释。 在 sysctl 脚本中,internet 协议转发、默认重定向设置和更多设置保留为注释。 要启用这些设置,您需要通过删除行前的井号 (#) 将它们取消注释。

2. 通过 sysctl 设置控制网络安全

下面给出了 sysctl 的一些主要和必要的安全配置设置,以便您可以将它们应用于 sysctl 脚本。 要启用 IP(互联网协议)转发,请找到此语法 #net.ipv4.ip_forward=1,并将其替换为下面给出的以下行。

net.ipv4.ip_forward=0

为了使您的 Linux 互联网连接更加安全,您可以通过更改 sysctl 脚本中的 IPv4 设置值来重定向 IP(互联网协议)地址。 找到这个语法 #net.ipv4.conf.all.send_redirects = 0,并将其替换为下面给出的以下行。

net.ipv4.conf.all.send_redirects = 0

现在要将 IP 重定向设置设为默认值,请在上一行之后添加以下行。

net.ipv4.conf.default.send_redirects = 0

要在网络管理器中接受所有重定向的 IP 地址,请找到此语法 #net.ipv4.conf.all.accept_redirects = 0,并将其替换为下面给出的以下行。

net.ipv4.conf.all.accept_redirects = 0

这是一些额外的配置脚本,您可以将其添加到您的 sysctl 设置中以忽略不正确的错误报告、设置积压文件大小并修复 Linux 系统上的 TCP 超时错误。

net.ipv4.conf.default.accept_redirects = 0
net.ipv4.icmp_ignore_bogus_error_responses = 1
net.ipv4.tcp_syncookies = 1
net.ipv4.tcp_max_syn_backlog = 2048
net.ipv4.tcp_synack_retries = 3
net.ipv4.netfilter.ip_conntrack_tcp_timeout_syn_recv=45

完成配置脚本设置后,保存并退出 Nano 文本编辑器。 现在重新加载 sysctl 工具以激活更改。

$ sudo sysctl -p

您现在可能会在您的 Linux 系统上看到所有活动的 sysctl 规则。

$ sysctl --all

Linux 上的 sysctl sysctl all

3.检查内核设置

使用以下 sysctl shell 命令查看 Linux 设备的 cd-rom 信息、内核类型、内核引导加载程序类型、内核主机名和其他信息。 您还可以使用 sysctl 工具更改 Linux 系统的内核主机名。

$ sysctl -a
$ sysctl -a | grep kernel
$ sysctl -a | more

跑过 cat 下面给出了命令以查看系统的内核启动 UUID 和安全增强型 Linux (SELinux) 状态。

$ cat /proc/cmdline

您可以使用 Linux 终端中的 sysctl 命令检查内核操作系统类型。

$ sysctl kernel.ostype

最后,通过 sysctl 命令检查您的 Linux 内核配置。

$ sysctl -a | grep kernel

内核设置

4. 重置 Linux sysctl 设置

由于有很多选项可以更改 sysctl 脚本的默认值以使您的 Linux 更安全,因此您可能会不匹配设置并破坏您的系统。

只要 Linux 内核正在运行,它就不会在 root 用户更改值时保留默认值。 因此,如果您不想损坏您的系统,请将您的默认 sysctl 值复制并粘贴到记事本中,以便在紧急情况下替换您的默认设置。

这是您可以用来恢复 Linux 设备上的 sysctl 设置的另一种方法。 如果您使用的是 Ubuntu 机器,请找到另一台 Ubuntu 机器并从中获取默认系统控制 (sysctl) 配置脚本。 然后将脚本复制并替换到您的设备。

最后,见解

一般来说,sysclt 工具可用于配置 Linux 内核设置和参数,但它的用途非常广泛。 该工具可用于比较不同版本内核之间的稳定性和适应性。 尽管还有一些其他工具和程序可用于比较不同内核的稳定性。 尽管如此,在 sysctl 是一种非常可靠的工具来测量和配置内核参数的情况下,它们可能无法显示出完美的结果。

在整篇文章中,我阐述了 Linux 内核的基本概念,并演示了如何使用 sysctl 工具保护 Linux 系统。 如果您觉得这篇文章有用且内容丰富,请与您的朋友分享这篇文章。 您可以在评论区写下您的宝贵意见。