如何用几个简单的命令改善你的Linux安全

作者: 日期:2019-09-11

你可以用如下命令罗列出预定义的区域:

$ firewall-cmd --get-zones

其值也可以如下方式进行更新:

$ firewall-cmd --set-default-zone=

你可以用以下命令获取任何特定区域的所有相关信息:

$ firewall-cmd --zone= --list-all

你也能列出所有支持的服务:

$ firewall-cmd --get-services

而且你可以添加或删除额外的服务。

$ firewall-cmd--zone=--add-service= $ firewall-cmd--zone=--remove-service=

你能通过如下命令列出任何特定区域中所有开放的端口:

$ firewall-cmd --zone= --list-ports

你可用如下方式管理TCP/UDP端口的增加与删除:

$ firewall-cmd--zone=--add-port= $ firewall-cmd--zone=--remove-port=

你可以如下命令添加或删除端口的转发:

$ firewall-cmd--zone=--add-forward-port=  $ firewall-cmd--zone=--remove-forward-port=

Firewalld是非常全面的。其中Firewalld最棒的地方当数:你可以在不需要停止或重新启动防火墙服务的情况下,管理该防火墙的体系结构。而这正是运用IPtables所无法实现的。

七、回归iptable

有一些人仍然还是喜欢IP tables 胜过Firewalld。那么如果你正好处于这种想舍去Firewalld而回归IP tables的话,请首先禁用Firewalld:

$ systemctl disable firewalld  $ systemctlstop firewalld

然后来安装IP tables:

$ yum install iptables-services  $ touch /etc/sysconfig/iptables  $ touch /etc/sysconfig/ip6tables

现在你就可以启动IP tables的服务了:

$ systemctlstart iptables  $ systemctlstart ip6tables  $ systemctl enable iptables  $ systemctl enable ip6tables

为了能让内核采用新的配置,你必须重新启动系统。

八、限制编译器

如果你的系统被黑掉了,那么攻击者会对系统使用的是哪种编译器很感兴趣。为什么呢?因为他们可以去下载一个简单的C文件,并且在你的系统上进行编译,从而在几秒钟之内就成为了root用户。如果编译器是开启的话,他们还可以在你的系统上做一些严重的破坏。

首先,你需要检查单个的数据包以确定其包含有哪些二进制文件。然后你需要限制这些二进制文件的权限。

$ rpm -q --filesbypkg gcc | grep 'bin'

现在我们需要创建一个可以访问二进制文件的编译器的组名称了:

$ groupadd compilerGroup

然后,你可以赋予这个组能够改变任何二进制文件的所有权:

$ chown root:compilerGroup /usr/bin/gcc

最后重要的是:仅编译器组才有改变该二进制文件的权限:

$ chmod 0750 /usr/bin/gcc

至此,任何试图使用gcc的用户将会看到权限被拒绝的信息了。

我知道有些人可能会说,如果攻击者发现编译器被关闭了的话,他会去下载编译器本身。这就是另外一个故事了,我们会在未来的文章中涉及到的。

九、不可修改文件

不可修改文件是Linux系统中一种最为强大的安全特性。任何用户,无论他们的文件权限是怎样的,都无法对不可修改文件进行写入、删除、重命名甚至是创建硬链接等操作。这真是太棒了!

首页
电话
短信
联系