服务器上的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 ...
随机推荐
- webstorm ftp发布问题
通过webstorm发布遇到问题 Invalid descendent file name "/". 解决方案为 点击[Advanced options]勾选[always use ...
- 【git】学习路径失败了
期初规划:搭建git远程服务器 使用gitlab作为管理工具 过程遇到的问题 1.gitlab不能安装到win ,且对centos要求6以上,我只有一台centos5 让运维帮升级 ...等待.. ...
- MyBatis学习笔记之resultMap
使用mybatis不能不说的是resultMap 相比resultClass来说resultMap可以适应更复杂的关系映射,允许指定字段的数据类型,支持“select *” ,并不要求定义 Resul ...
- MongoDB 学习
MongoDB 的官方网站 :https://www.mongodb.org 可通过官方网站下载相应的文件 下载之后对文件进行解压 http://www.cnblogs.com/huangxinche ...
- 如何循环遍历document.querySelectorAll()方法返回的结果
使用JavaScript的forEach方法,我们可以轻松的循环一个数组,但如果你认为document.querySelectorAll()方法返回的应该是个数组,而使用forEach循环它: /* ...
- [Oracle]any, all解析
因为很少用到, 所以几乎忘记了这几个函数, 不过它们还是很有用的使用它们可以大大简化一些SQL文的语法, 至于效率问题, 如CCW所说它们和EXISTS, IN 之类没有什么差别, 而且要具体问题具体 ...
- HDU 1004 ballons(map)
题意:输出颜色最多的那个颜色. 思路:水题一道. #include <iostream> #include <string> #include <map> #inc ...
- HDU4548+素数
简单题. /* */ #include<stdio.h> #include<string.h> #include<stdlib.h> #include<alg ...
- flash 动画数据导出 到 coco2d-js ,cocos2d-x 问题的记录
1:必须搞清flash坐标系 和 cocos2d 的坐标系的差异2:对于cocos2d系列坐标系的深入理解: 以前我们常认为 coco2d-x的X,Y是相对坐标系,相对于父节点的X,Y的坐标,这种说法 ...
- HeadFirst设计模式之RMI介绍
一.使用步骤 1.generate stubs and skeletons:Run rmic on the remote implementation class 如:D:\Workspaces\My ...