怎样在 Linux 中正确保护 sysctl:安全加固技巧

在计算机科学中,内核是操作系统的灵魂。 Linux 内核的设计具有非常完善的操作系统架构知识。 Linux 主要有三种类型的内核。 它们是单片内核、微内核和混合内核。 Linux 具有单片内核。 单片内核是为高性能和稳定性而构建的。 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、数据包转发和记录 martian 数据包。

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

2. 从 sysctl Settings 控制网络安全

下面给出了 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

sysctl 在 Linux 上 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 系统。 如果您觉得这篇文章有用且内容丰富,请与您的朋友分享这篇文章。 您可以在评测区写下您的宝贵意见。

相关阅读:

Posted in: LinuxTags: