前序 还是docker惹得最近做的系统都是上的centos7的系统带来的一系列的新环境的适应
补记下:在使用oracle vmbox虚拟centos7的时候 选用桥接网络的时候一定要记得插网线,无线不好使(浪费了一上午的时间的教训)
可以做到内外网互通等,否则只能部分的网段想通 且 无法获取外网
具体ip指令 为 ip add
关于静态ip设置见 centos6.4静态ip设置于eth1的问题 依旧好用
回到防火墙问题:(起因装好后直接ssh访问被拒绝)
CentOS7这个版本的防火墙默认使用的是firewall,与之前的版本使用iptables不一样,按如下方便配置防火墙:
1.关闭防火墙:sudo systemctl stop firewalld.service
2. 关闭开机启动:sudo systemctl disable firewalld.service
3.安装iptables防火墙
执行以下命令安装iptables防火墙:sudo yum install iptables-services
4.配置iptables防火墙,打开指定端口(具体跟以前版本一样,网上介绍很多,这里不多介绍了)
5. 设置iptables防火墙开机启动:sudo systemctl enable iptables
开启redis端口,修改防火墙配置文件 vi /etc/sysconfig/iptables
加入端口配置
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6379 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 6379:7000 -j ACCEPT //开放6379到7000之间的端口
service iptables save
service iptables restart
CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙。
1、关闭firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
防火墙规则
netfilter 防火墙总是容易受到规则顺序的影响,因为一条规则在链中没有固定的位置。在一条规则之前添加或者删除规则都会改变此规则的位置。 在静态防火墙模型中,改变防火墙就是重建一个干净和完善的防火墙设置,且受限于 system-config-firewall / lokkit 直接支持的功能。也没有整合其他应用程序创建防火墙规则,且如果自定义规则文件功能没在使用 s-c-fw / lokkit 就不知道它们。默认链通常也没有安全的方式添加或删除规则而不影响其他规则。
动态防火墙有附加的防火墙功能链。这些特殊的链按照已定义的顺序进行调用,因而向链中添加规则将不会干扰先前调用的拒绝和丢弃规则。从而利于创建更为合理完善的防火墙配置。
下面是一些由守护进程创建的规则,过滤列表中启用了在公共区域对 ssh , mdns 和 ipp-client 的支持:
*filter
:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]:FORWARD_ZONES - [0:0]:FORWARD_direct - [0:0]:INPUT_ZONES - [0:0]:INPUT_direct - [0:0]:IN_ZONE_public - [0:0]:IN_ZONE_public_allow - [0:0]:IN_ZONE_public_deny - [0:0]:OUTPUT_direct - [0:0]-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -j INPUT_direct
-A INPUT -j INPUT_ZONES
-A INPUT -p icmp -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
-A FORWARD -i lo -j ACCEPT
-A FORWARD -j FORWARD_direct
-A FORWARD -j FORWARD_ZONES
-A FORWARD -p icmp -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
-A OUTPUT -j OUTPUT_direct
-A IN_ZONE_public -j IN_ZONE_public_deny
-A IN_ZONE_public -j IN_ZONE_public_allow
-A IN_ZONE_public_allow -p tcp -m tcp --dport 22 -m conntrack --ctstate NEW -j ACCEPT
-A IN_ZONE_public_allow -d 224.0.0.251/32 -p udp -m udp --dport 5353 -m conntrack --ctstate NEW -j ACCEPT
-A IN_ZONE_public_allow -p udp -m udp --dport 631 -m conntrack --ctstate NEW -j ACCEPT
使用 deny/allow 模型来构建一个清晰行为(最好没有冲突规则)。例如: ICMP块将进入 IN_ZONE_public_deny 链(如果为公共区域设置了的话),并将在 IN_ZONE_public_allow 链之前处理。
该模型使得在不干扰其他块的情况下向一个具体块添加或删除规则而变得更加容易。