您的位置:首页 > 运维架构 > Tomcat

(二)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 防火墙配置

2015-05-31 20:12 891 查看
因为在网上发现系统性、严谨(特别是在安全方面)的Linux部署方面的参考文章很少,于是整理以下六篇Linux环境部署的系列性文章,其为本人在实践中,完整的搭建一个基于Linux系统上Centos+Nginx+Tomcat+Mysql+FTP的操作文档,梳理记录如下,特别是在实践中碰到的各种问题和容易出错的地方,都做了重要标注和提醒(踩过的那些坑,我都特别标注出来);希望对于那些想要系统地完整搭建Linux环境的程序员们一个系统性的参考。但因大部分都是边搭建边记录下的操作,必定有所疏漏,还望见谅;
如有问题和意见请帮忙在后面的评论中指出,万分感谢!另整个搭建的过程中参考了网上许多优秀博主的优秀实践,在文中末尾或者其他适当的地方都有所标注,如有必要,你可以按参考的链接阅读参考的原文章。本文档一共分为6篇,这6个部分分别是:

1、(一)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - FTP安装

2、(二)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 防火墙配置

3、(三)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - Nginx环境搭建

4、(四)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 安装Tomcat和JDK 以及 Nginx与Tomcat整合

5、(五)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - Mysql 安装

6、(六)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 一些常用命令总结

这篇系列性文章将会在以后的实践中持续地做修正和更新。
(在整理和记录这些文档的时候,对于我这个曾经从来不写博客的程序员来说,我发现的确收获良多,首先最重要的是对我的知识结构进行了一次重要的梳理和总结;另外,让我的思维和逻辑更加缜密;第三,强化和加深记忆;四,共享和分享的精神。
最后,希望对你有用。)

(二)防火墙配置

查看防火墙状态:

/etc/init.d/iptables status

暂时关闭防火墙:

/etc/init.d/iptables stop

禁止防火墙在系统启动时启动

/sbin/chkconfig --level 2345 iptables off

重启iptables:

/etc/init.d/iptables restart

在文件

/etc/sysconfig/iptables

在系统原始配置的:RH-Firewall-1-INPUT规则链增加类似这样的行:

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 39764 -j ACCEPT

-A RH-Firewall-1-INPUT -m state --state NEW -m udp -p udp --dport 39764 -j ACCEPT

如果发现原有-j REJECT一类的语句,上面两句要放在它的前面, 不然不会生效
结论:所有要开放的端口要放在-j REJECT一类语句的前面,不然不起作用。
如下例所示:vi /etc/sysconfig/iptables

[root@XXX-02-VSR~]# vi /etc/sysconfig/iptables
#Firewall configuration written by system-config-firewall
#Manual customization of this file is not recommended.
*filter
:INPUTACCEPT [0:0]
:FORWARDACCEPT [0:0]
:OUTPUTACCEPT [0:0]
-AINPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-AINPUT -p icmp -j ACCEPT
-AINPUT -i lo -j ACCEPT
-AINPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT #允许mysql端口远程访问
-AINPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-AINPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-AINPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
-AINPUT -p tcp -m state --state NEW -m tcp --sport 21 -j ACCEPT
-AINPUT -m state --state NEW -m tcp -p tcp --sport 20 -j ACCEPT
-IINPUT -p tcp --dport 10000:10010 -j ACCEPT
-AINPUT -j REJECT --reject-with icmp-host-prohibited
-AFORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT


重启后生效

开启: chkconfig iptables on

关闭: chkconfig iptables off 或者 /sbin/chkconfig --level 2345 iptables off

2) 即时生效,重启后失效

service 方式

开启: service iptables start

关闭: service iptables stop

iptables方式

查看防火墙状态:

/etc/init.d/iptables status

暂时关闭防火墙:

/etc/init.d/iptables stop

重启iptables:

/etc/init.d/iptables restart

问题: 如果发现防火墙怎么也无法启动,状态一直是not running,检查/etc/sysconfig/iptables 防火墙初始化文件是否存在,如果不存在需初始化防火墙:
第1步:使用ssh或直接在本机使用root最高权限用户登录到centos系统,执行“iptables -F”并确定。(此方法命令确定之后不会出现任何成功的提示。)
第2步:再次执行“service iptables save”命令并确定,当提示“iptables: Saving firewall rules to /etc/sysconfig/iptables:[ OK ]”就说明成功了。(这一步就是把本文第一步中的iptables -F命令执行,但是命令是执行成功了,但是还没有生效,所以我们需要重启防火墙。)
第3步:执行“service iptables restart”命令并确定,当提示有四个OK时就说明防火墙初始化,并重启动完毕。
第4步:执行“/etc/init.d/iptables status”命令可查看centos当前防火墙的相关信息,初始化之后,默认是只有两三个防火墙规则的。(大家可直接使用/etc/init.d/iptables这种不带参数的,即可看到如上图所示的该命令下所有的参数,如:{start|stop|restart|condrestart|status|panic|save},启动,停止,重启等参数。)
可以copy上面的初始化示例

因为在网上发现系统性、严谨(特别是在安全方面)的Linux部署方面的参考文章很少,于是整理以下六篇Linux环境部署的系列性文章,其为本人在实践中,完整的搭建一个基于Linux系统上Centos+Nginx+Tomcat+Mysql+FTP的操作文档,梳理记录如下,特别是在实践中碰到的各种问题和容易出错的地方,都做了重要标注和提醒(踩过的那些坑,我都特别标注出来);希望对于那些想要系统地完整搭建Linux环境的程序员们一个系统性的参考。但因大部分都是边搭建边记录下的操作,必定有所疏漏,还望见谅;
如有问题和意见请帮忙在后面的评论中指出,万分感谢!另整个搭建的过程中参考了网上许多优秀博主的优秀实践,在文中末尾或者其他适当的地方都有所标注,如有必要,你可以按参考的链接阅读参考的原文章。本文档一共分为6篇,这6个部分分别是:

1、(一)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - FTP安装

2、(二)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 防火墙配置

3、(三)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - Nginx环境搭建

4、(四)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 安装Tomcat和JDK 以及 Nginx与Tomcat整合

5、(五)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - Mysql 安装

6、(六)Linux环境部署(Centos+Nginx+Tomcat+Mysql) - 一些常用命令总结

这篇系列性文章将会在以后的实践中持续地做修正和更新。
(在整理和记录这些文档的时候,对于我这个曾经从来不写博客的程序员来说,我发现的确收获良多,首先最重要的是对我的知识结构进行了一次重要的梳理和总结;另外,让我的思维和逻辑更加缜密;第三,强化和加深记忆;四,共享和分享的精神。
最后,希望对你有用。)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: