为什么要关闭SElinux?
原因有几个:
1. 麻烦确实是一个因素,SELinux策略是白名单原则,所以你需要非常清楚你的各项操作都需要哪些访问权限,这个好像数量有点多了。
2. 使用SELinux的真的非常少。因为关掉它造成的损失可以有解释说别人也是这么做的。
3. 不确定性,因为一直没有搞过,然后所有的软件的文档里也没有写SELinux相关的配置,遇到相关问题时不好解决
如何关闭SELinux?
一般安装linux课程时都把SELinux与iptables安排在后面,使初学者配置linux服务器时不成功,却没有头绪,那是因为在RedHat linux操作系统中默认开启了防火墙,SELinux也处于启动状态,一般状态为enforing。致使很多服务端口默认是关闭的。所以好多服务初学者明明配置文件正确,等验证时有时连ping也ping不通。
建议初学者在未学到SELlinux与iptables之前,配置服务器把这两项都关掉。那么怎么关呢?
1、关闭iptables#service iptables stop2、关闭SELinux#vi /etc/selinux/config将文件中的SELINUX="" 为 disabled ,然后重启。如果不想重启系统,使用命令setenforce 0注:setenforce 1 设置SELinux 成为enforcing模式setenforce 0 设置SELinux 成为permissive模式在lilo或者grub的启动参数中增加:selinux=0,也可以关闭selinux#---------------------------------------------------------------查看selinux状态:/usr/bin/setstatus -v如下:SELinux status: enabledSELinuxfs mount: /selinuxCurrent mode: permissiveMode from config file: enforcingPolicy version: 21getenforce/setenforce查看和设置SELinux的当前工作模式
linux系统中如何拒绝特定IP访问?有哪些方法可以实现?
这个非常简单,目前来说,有2种方法,一种是修改hosts.deny文件,一种是添加防火墙规则,下面我分别简单介绍一下:
修改hosts.deny文件
这个文件主要用于控制禁止访问本机的IP(路径/etc/hosts.deny),只需要添加禁止访问的IP地址,则指定的IP就不能访问Linux系统,如下,这里禁止IP为192.168.15.21的用户ssh远程登录,第一个字段为服务名称,第二个为IP地址(也可以是一个网络或所有IP),第三个为deny(也可以不写):
接着用IP为192.168.15.21的用户尝试着ssh登录Linux系统,如下,则会失败:
添加防火墙规则
这里以firewall防火墙为例(iptables防火墙类似),只需要使用firewall-cmd命令添加一条防火墙规则,拒绝指定IP地址访问Linux系统就行,如下,这里禁止IP为192.168.15.21的用户访问21端口(FTP服务):
接着用IP为192.168.15.21的用户尝试连接Linux FTP服务,如下,则会失败:
如果需要移除规则的话,使用参数remove-rich-rule就行,更多参数和说明的话,可以参考帮助命令“firewall-cmd -h”,每个参数都介绍的非常详细、清楚:
至此,我们就完成了禁止特定IP访问Linux系统。总的来说,这2种方法都非常简单,只要你有一定的Linux基础,熟悉一下上面的操作过程,很快就能掌握的,网上也有相关教程和资料,介绍的非常详细,感兴趣的话,可以搜一下,希望以上分享的内容能对你有所帮助吧,也欢迎大家评论、留言进行补充。

