zoukankan      html  css  js  c++  java
  • linux 防火墙开启80端口永久保存

    经常使用CentOS的朋友,可能会遇到和我一样的问题。开启了防火墙导致80端口无法访问,刚开始学习centos的朋友可以参考下。

    经常使用CentOS的朋友,可能会遇到和我一样的问题。最近在Linux CentOS防火墙下安装配置 ORACLE 数据库的时候,总显示因为网络端口而导致的EM安装失败,遂打算先关闭一下CentOS防火墙。偶然看到CentOS防火墙的配置操作说明,感觉不错。执 行”setup”命令启动文字模式配置实用程序,在”选择一种工具”中选择”防火墙配置”,然后选择”运行工具”按钮,出现CentOS防火墙配置界面, 将”安全级别”设为”禁用”,然后选择”确定”即可. 

    这样重启计算机后,CentOS防火墙默认已经开放了80和22端口 

    简介:CentOS是Linux家族的一个分支。 

    CentOS防火墙在虚拟机的CENTOS装好APACHE不能用,郁闷,解决方法如下

    /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 
    /sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT

    然后保存: 

    /etc/rc.d/init.d/iptables save

    centos 5.3,5.4以上的版本需要用 
    service iptables save 
    来实现保存到配置文件。 
    这样重启计算机后,CentOS防火墙默认已经开放了80和22端口。 
    命令行的话是,/etc/rc.d/init.d/iptables save保存

    vi修改的话,执行service iptables restart

    重启防火墙即可保存。

    修改很多次都提示错误,于是复杂一份过来直接保存。例子如下:

    # Generated by iptables-save v1.4.7 on Tue Sep 11 13:29:11 2012  
    *filter  
    :INPUT ACCEPT [310:96058]  
    :FORWARD ACCEPT [0:0]  
    :OUTPUT ACCEPT [131:96829]  
    -A INPUT -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT   
    -A INPUT -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 1010 -m state --state NEW,ESTABLISHED -j ACCEPT  
    -A INPUT -i eth0 -p udp -m udp --sport 123 -m state --state ESTABLISHED -j ACCEPT   
    -A INPUT -i eth0 -p tcp -m tcp --sport 25 -m state --state ESTABLISHED -j ACCEPT   
    -A INPUT -i eth0 -p tcp -m tcp --sport 1024:65535 --dport 3306 -m state --state NEW,ESTABLISHED -j ACCEPT  
      
      
    -A OUTPUT -o etho -p tcp -m tcp --sport 80 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT   
    -A OUTPUT -o eth0 -p udp -m udp --dport 123 -m state --state NEW,ESTABLISHED -j ACCEPT   
    -A OUTPUT -o eth0 -p tcp -m tcp --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT   
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3690 -j ACCEPT   
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 27017 -j ACCEPT  
      
      
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 1010 -j ACCEPT  
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 11211 -j ACCEPT  
      
      
    COMMIT  
    # Completed on Tue Sep 11 13:29:11 2012

    这里应该也可以不重启计算机: 

    /etc/init.d/iptables restart 

    CentOS防火墙的关闭,关闭其服务即可: 

    查看CentOS防火墙信息:/etc/init.d/iptables status 

    关闭CentOS防火墙服务:/etc/init.d/iptables stop 

    永久关闭?不知道怎么个永久法:

    chkconfig –level 35 iptables off 

    上面的内容是针对老版本的centos,下面的内容是基于新版本。

    iptables -P INPUT DROP 

    这样就拒绝所有访问 CentOS 5.3 本系统数据,除了 Chain RH-Firewall-1-INPUT (2 references) 的规则外 , 呵呵。 

    用命令配置了 iptables 一定还要 service iptables save 才能保存到配置文件。 

    cat /etc/sysconfig/iptables 可以查看 防火墙 iptables 配置文件内容

    # Generated by iptables-save v1.3.5 on Sat Apr 14 07:51:07 2001 
    *filter 
    :INPUT DROP [0:0] 
    :FORWARD ACCEPT [0:0] 
    :OUTPUT ACCEPT [1513:149055] 
    :RH-Firewall-1-INPUT - [0:0] 
    -A INPUT -j RH-Firewall-1-INPUT 
    -A FORWARD -j RH-Firewall-1-INPUT 
    -A RH-Firewall-1-INPUT -i lo -j ACCEPT 
    -A RH-Firewall-1-INPUT -p icmp -m icmp --icmp-type any -j ACCEPT 
    -A RH-Firewall-1-INPUT -p esp -j ACCEPT 
    -A RH-Firewall-1-INPUT -p ah -j ACCEPT 
    -A RH-Firewall-1-INPUT -d 224.0.0.251 -p udp -m udp --dport 5353 -j ACCEPT 
    -A RH-Firewall-1-INPUT -p udp -m udp --dport 631 -j ACCEPT 
    -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 631 -j ACCEPT 
    -A RH-Firewall-1-INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT 
    -A RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT 
    -A RH-Firewall-1-INPUT -j REJECT --reject-with icmp-host-prohibited 
    COMMIT 
    # Completed on Sat Apr 14 07:51:07 2001

    另外补充:
    CentOS 防火墙配置 80端口
    看了好几个页面内容都有错,下面是正确方法:

    #/sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT 
    #/sbin/iptables -I INPUT -p tcp --dport 22 -j ACCEPT

    然后保存: 

    #/etc/rc.d/init.d/iptables save

    再查看是否已经有了: 

    [root@vcentos ~]# /etc/init.d/iptables status 
    Table: filter 
    Chain INPUT (policy ACCEPT) 
    num target prot opt source destination 
    1 ACCEPT udp -- 0.0.0.0/0 0.0.0.0/0 udp dpt:80 
    2 ACCEPT tcp -- 0.0.0.0/0 0.0.0.0/0 tcp dpt:80 
    3 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0 
    
    Chain FORWARD (policy ACCEPT) 
    num target prot opt source destination 
    1 RH-Firewall-1-INPUT all -- 0.0.0.0/0 0.0.0.0/0

    * 设置iptables为自动启动

    chkconfig --level 2345 iptables on 

    可能因为大家使用的版本不一,所有使用方法也略有不同。

    iptables命令建立的规则临时保存在内存中。如果系统在永久保存这些规则之前重启,所有设置的规则都将丢失。如果要想使iptables设置的规则在下次重启系统之后仍然生效则需要永久保存这些规则,以root身份执行:

    /sbin/service iptables save

    该操作将执行iptables初始化脚本,该脚本会运行/sbin/iptables-save程序并更新当前的iptables配置文件/etc/sysconfig/iptables。

    而原来的配置文件将保存为iptables.save。

    下次系统系统启动时,iptables初始化脚本将使用/sbin/iptables-restore命令重新读取/etc/sysconfig/iptables文件的内容。

    因此比较好的方法是在将一条新的iptables规则提交到/etc/sysconfig/iptables文件之前先检查该规则。并且也可以将其他版本系统中的iptables配置文件应用于这里。这样就有助于分发该配置文件到多台Linux主机上。

    注意:如果把/etc/sysconfig/iptables文件进行分发之后,每台系统都要执行/sbin/service iptables restart命令来使规则生效。

    通过文章来看,是不是用上面的方法来解决保存iptables的防火墙规则的问题比较简单。快跟朋友分享吧!

    vi /etc/sysconfig/iptables 
    -A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT(允许80端口通过防火墙) 
    -A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT(允许3306端口通过防火墙) 
    特别提示:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,正确的应该是添加到默认的22端口这条规则的下面

    添加好之后防火墙规则如下所示:

    ###################################### 
    # Firewall configuration written by system-config-firewall 
    # Manual customization of this file is not recommended. 
    *filter 
    :INPUT ACCEPT [0:0] 
    :FORWARD ACCEPT [0:0] 
    :OUTPUT ACCEPT [0:0] 
    -A INPUT -m state –state ESTABLISHED,RELATED -j ACCEPT 
    -A INPUT -p icmp -j ACCEPT 
    -A INPUT -i lo -j ACCEPT 
    -A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT 
    -A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT 
    -A INPUT -m state –state NEW -m tcp -p tcp –dport 3306 -j ACCEPT 
    -A INPUT -j REJECT –reject-with icmp-host-prohibited 
    -A FORWARD -j REJECT –reject-with icmp-host-prohibited 
    COMMIT 
    #####################################
    /etc/init.d/iptables restart  
    #最后重启防火墙使配置生效
  • 相关阅读:
    一只小爬虫(转)
    easyui +ASP.NET 前后台乱码解决方法
    轻松搞定 easyui datagrid 二次加载的问题(转)
    easyui combobox默认选中项
    VS2010新建Web网站与新建Web应用程序的区别 (转)
    关于html+ashx开发中几个问题的解决方法 (转)
    如何使用.net访问Access数据库 (转)
    ACCESS的System.Data.OleDb.OleDbException: INSERT INTO 语句的语法错误
    Ajax 中正常使用jquery-easyui (转)
    会动的文字Marquee应用(转)
  • 原文地址:https://www.cnblogs.com/xiaoqian1993/p/5935330.html
Copyright © 2011-2022 走看看