【发布时间】:2014-09-05 12:47:12
【问题描述】:
我以最少的配置(操作系统 + 开发工具)安装了 CentOS 7。我正在尝试为httpd 服务打开 80 端口,但是我的 iptables 服务有问题……它有什么问题?我究竟做错了什么?
# ifconfig/sbin/service iptables save
bash: ifconfig/sbin/service: No such file or directory
# /sbin/service iptables save
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.
# sudo service iptables status
Redirecting to /bin/systemctl status iptables.service
iptables.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
# /sbin/service iptables save
The service command supports only basic LSB actions (start, stop, restart, try-restart, reload, force-reload, status). For other actions, please try to use systemctl.
# sudo service iptables start
Redirecting to /bin/systemctl start iptables.service
Failed to issue method call: Unit iptables.service failed to load: No such file or directory.
【问题讨论】:
-
试试这个 /etc/init.d/iptables 保存
-
我得到了答案here。 RHEL 7 使用 firewalld 代替 iptables
-
IMO firewalld 比 iptables 更加用户友好。首先安装并启动firewalld服务
sudo yum install -y firewalld && sudo systemctl start firewalld。然后添加服务 HTTPsudo firewall-cmd --permanent --add-service=http(如果需要,还可以添加服务 https 以打开端口 443)。最后将新配置加载到 firewalldsudo firewall-cmd --reload
标签: networking centos iptables systemd