服务器上的iptables
服务器上的iptables 防火墙设置脚本规则
完整脚本如下:
#!/bin/bash
# by www.jbxue.com
iptab="/sbin/iptables"
#----------------------- 清空所有规则 -----------------------------------#
$iptab -F
$iptab -X
$iptab -Z
$iptab -t nat -F
$iptab -t nat -X
$iptab -t nat -Z
#------------------- 拒绝默认规则之前开放SSH 端口(33169)----------------#
$iptab -A INPUT -p tcp --dport 33169 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 33169 -m state --state RELATED,ESTABLISHED -j ACCEPT
#----------------------- 拒绝所有的规则 ---------------------------------#
$iptab -P INPUT DROP
$iptab -P OUTPUT DROP
$iptab -P FORWARD DROP
#-------------------------- 打开回环设备 ----------------------------------#
$iptab -A INPUT -p tcp -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
$iptab -A OUTPUT -p tcp -s 127.0.0.1 -d 127.0.0.1 -j ACCEPT
$iptab -A INPUT -i lo -j ACCEPT
$iptab -A OUTPUT -o lo -j ACCEPT
#----------------------- 打开FTP服务端口(21)-------------------------------#
$iptab -A INPUT -p tcp --dport 21 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 21 -m state --state RELATED,ESTABLISHED -j ACCEPT
#--------------------------- 开放SMTP 服务端口(25) -------------------------#
$iptab -A INPUT -p tcp --dport 25 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 25 -j ACCEPT
$iptab -A INPUT -p tcp --sport 25 -j ACCEPT
$iptab -A OUTPUT -p tcp --dport 25 -j ACCEPT
#------------------------ 开放DNS解析服务端口(53) ---------------------------#
$iptab -A INPUT -p udp --dport 53 -j ACCEPT
$iptab -A OUTPUT -p udp --sport 53 -j ACCEPT
$iptab -A INPUT -p udp --sport 53 -j ACCEPT
$iptab -A OUTPUT -p udp --dport 53 -j ACCEPT
#------------------- 开放http 服务端口(80)--------------------------------#
$iptab -A INPUT -p tcp --dport 80 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT
#------------- imp3(143) imp3s(995) pop3(110) pop3s(993) port ----------------#
$iptab -A INPUT -p tcp --dport 110 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 110 -j ACCEPT
$iptab -A INPUT -p tcp --dport 143 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 143 -j ACCEPT
$iptab -A INPUT -p tcp --dport 993 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 993 -m state --state RELATED,ESTABLISHED -j ACCEPT
$iptab -A INPUT -p tcp --dport 995 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 995 -m state --state RELATED,ESTABLISHED -j ACCEPT
#--------------------开放 Mysql 服务端口(3306)----------------------------#
$iptab -A INPUT -p tcp --dport 3306 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 3306 -j ACCEPT
#---------------------开放所有tomcat所依赖端口 ----------------------------#
$iptab -A INPUT -p tcp --dport 8005 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 8005 -j ACCEPT
$iptab -A INPUT -p tcp --dport 8009 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 8009 -j ACCEPT
$iptab -A INPUT -p tcp --dport 8080 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 8080 -m state --state RELATED,ESTABLISHED -j ACCEPT
$iptab -A INPUT -s 222.35.140.70 -p tcp --dport 8080 -j ACCEPT
$iptab -A OUTPUT -d 222.35.140.70 -p tcp --sport 8080 -j ACCEPT
$iptab -A INPUT -p tcp --dport 8081 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 8081 -m state --state RELATED,ESTABLISHED -j ACCEPT
#---------------------- 开放http监听端口(8084) --------------------------#
$iptab -A INPUT -p tcp --dport 8084 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 8084 -m state --state RELATED,ESTABLISHED -j ACCEPT
$iptab -A INPUT -p tcp --dport 8250 -j ACCEPT
$iptab -A OUTPUT -p tcp --sport 8250 -j ACCEPT
#----------------- 开放SSH服务端口(33169)--------------------------------#
$iptab -A INPUT -p tcp --sport 33169 -j ACCEPT
$iptab -A OUTPUT -p tcp --dport 33169 -m state --state RELATED,ESTABLISHED -j ACCEPT
#注意:最有一条规则是在SSH服务器再次的使用SSH服务访问他人的SSH服务所制定的规则。
总结:
在 linux中配置防火墙时,一定要注意iptables中规则的顺序,哪个在前,哪个在后,这点不能乱。
另外,配置iptables规则,建议在本机测试好,然后在放到生产环境的主机上。
服务器上的iptables的更多相关文章
- 阿里云服务器上使用iptables设置安全策略
转自:http://www.netingcn.com/aliyun-iptables.html 公司的产品一直运行在云服务器上,从而有幸接触过aws的ec2,盛大的云服务器,最近准备有使用阿里云的弹性 ...
- Linux服务器上安装织梦CMS
安装篇 第一步:配置防火墙(默认情况下,端口80和3306是拒绝访问的,在防火墙上进行配置): vi /etc/sysconfig/iptables(在"COMMIT"的上一行加上 ...
- 解放双手:如何在本地调试远程服务器上的Node代码
写在前面 谈到node断点调试,目前主要有三种方式,通过node内置调试工具.通过IDE(如vscode).通过node-inspector,三者本质上差不多.本文着重点在于介绍 如何在本地通过nod ...
- 在linux服务器上发布web应用的完整过程
首先你要有一个完整的web应用的小Demo,一个简单的demo就可以了,但是要涉及到数据库,笔者这里简单的模拟一个登陆的过程. 在本地测试,访问项目: 键入账号密码,点击登陆: 就是这么个简单的动作, ...
- 在suse上折腾iptables
需求背景:有台服务器希望屏蔽掉某IP对它的SSH连接. 临时客串下DevOps,下面的做法可能在专业运维的同学里不太专业,还请指教. 该服务器的操作系统是SuSE Linux,服务器上是安装了ipta ...
- 无法远程连接服务器上的mysql
使用mysql管理工具连接服务器删过得mysql,显示连接被拒绝,但是在服务器上是可以登录mysql的. 无法远程连接通常以下几种情况: 首先,关闭mysql. service mysq ...
- Linux服务器上安装vsftpd
1.首先判断你服务器上是否安装了vsftpd rpm -q vsftpd 2.安装vsftpd yum -y install vsftpd 3.重启vsftpd service vsftpd ...
- Centos服务器上NFS灾备环境及KVM的搭建及使用
1.概述 由于在单台服务器上搭建灾备环境需要KVM和NFS的支持,下面先列出KVM的搭建流程,再列出使用NFS实现单台服务器灾备的流程. A.搭建KVM环境 1>.主机环境准备 Linux Sy ...
- 在Linux(CentOS 6.6)服务器上安装并配置基于Apache的SVN服务器
#!/bin/bash # # 在Linux(CentOS 6.6)服务器上安装并配置基于Apache的SVN服务器: # # .安装服务 # .创建svn版本库 # .创建svn用户 # .配置sv ...
随机推荐
- Ubuntu安装google Gtest
(1) 下载源码:http://code.google.com/p/googletest/gtest-1.7.0 (2013)gtest-1.7.0 (2010) (2) README编译指南126 ...
- OFBIZ bug_ControlServlet.java:233:ERROR
错误日志: [java] 2014-09-26 10:12:17,031 (http-bio-0.0.0.0-8443-exec-5) [ ControlServlet.java:233:ERROR] ...
- 制作输入框(Input)
怎样判断是否应当使用输入框 输入框,就是用户可以自由输入文本的地方.当需要判断是否需要使用输入框时,可以遵循一条原则:凡是需要用户自主输入文本的地方,几乎都必须使用输入框. 输入框的常见用法:输入登录 ...
- XSS 复合编码 续
对上文 [web安全]第二弹:XSS攻防中的复合编码问题 的一些补充,思路来源于:http://escape.alf.nu/3/ html解码的问题: 通过appendChild添加的节点,不会被HT ...
- ExtJs gridPanel Column 时间格式化
var panel = new Ext.container.Viewport({ items: { xtype: 'gridpanel', id: 'gridPanel', store: store, ...
- 1024: [SCOI2009]生日快乐 - BZOJ
Description windy的生日到了,为了庆祝生日,他的朋友们帮他买了一个边长分别为 X 和 Y 的矩形蛋糕.现在包括windy,一共有 N 个人来分这块大蛋糕,要求每个人必须获得相同面积的蛋 ...
- jQuery树结构插件推荐zTree
JQuery zTree 下载地址http://plugins.jquery.com/zTree.v3/
- 团体程序设计天梯赛-练习集L1-021. 重要的话说三遍
L1-021. 重要的话说三遍 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 陈越 这道超级简单的题目没有任何输入. 你只需要把这句 ...
- 谈谈怎么实现Oracle数据库分区表
谈谈怎么实现Oracle数据库分区表 数据库的读写分离 SQLSERVER性能监控级别步骤 Oracle索引问题诊断与优化(1)
- unity3d与eclipse协同工作环境
原地址:http://bbs.9ria.com/thread-212576-1-1.html 这个过程非常复杂.步骤一定要谨记 1,建立一个unity3d工程,然后自己丢点模型进去吧.然后设置导出时候 ...