CentOS7安装配置iptables防火墙
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/50779761
CentOS7默认的防火墙不是iptables,而是firewalle.
安装iptable iptable-service
- #先检查是否安装了iptables
- service iptables status
- #安装iptables
- yum install -y iptables
- #升级iptables
- yum update iptables
- #安装iptables-services
- yum install iptables-services
禁用/停止自带的firewalld服务
- #停止firewalld服务
- systemctl stop firewalld
- #禁用firewalld服务
- systemctl mask firewalld
设置现有规则
- #查看iptables现有规则
- iptables -L -n
- #先允许所有,不然有可能会杯具
- iptables -P INPUT ACCEPT
- #清空所有默认规则
- iptables -F
- #清空所有自定义规则
- iptables -X
- #所有计数器归0
- iptables -Z
- #允许来自于lo接口的数据包(本地访问)
- iptables -A INPUT -i lo -j ACCEPT
- #开放22端口
- iptables -A INPUT -p tcp --dport 22 -j ACCEPT
- #开放21端口(FTP)
- iptables -A INPUT -p tcp --dport 21 -j ACCEPT
- #开放80端口(HTTP)
- iptables -A INPUT -p tcp --dport 80 -j ACCEPT
- #开放443端口(HTTPS)
- iptables -A INPUT -p tcp --dport 443 -j ACCEPT
- #允许ping
- iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
- #允许接受本机请求之后的返回数据 RELATED,是为FTP设置的
- iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
- #其他入站一律丢弃
- iptables -P INPUT DROP
- #所有出站一律绿灯
- iptables -P OUTPUT ACCEPT
- #所有转发一律丢弃
- iptables -P FORWARD DROP
其他规则设定
- #如果要添加内网ip信任(接受其所有TCP请求)
- iptables -A INPUT -p tcp -s 45.96.174.68 -j ACCEPT
- #过滤所有非以上规则的请求
- iptables -P INPUT DROP
- #要封停一个IP,使用下面这条命令:
- iptables -I INPUT -s ***.***.***.*** -j DROP
- #要解封一个IP,使用下面这条命令:
- iptables -D INPUT -s ***.***.***.*** -j DROP
保存规则设定
- #保存上述规则
- service iptables save
开启iptables服务
- #注册iptables服务
- #相当于以前的chkconfig iptables on
- systemctl enable iptables.service
- #开启服务
- systemctl start iptables.service
- #查看状态
- systemctl status iptables.service
解决vsftpd在iptables开启后,无法使用被动模式的问题
1.首先在/etc/sysconfig/iptables-config中修改或者添加以下内容
- #添加以下内容,注意顺序不能调换
- IPTABLES_MODULES="ip_conntrack_ftp"
- IPTABLES_MODULES="ip_nat_ftp"
2.重新设置iptables设置
- iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
以下为完整设置脚本
- #!/bin/sh
- iptables -P INPUT ACCEPT
- iptables -F
- iptables -X
- iptables -Z
- iptables -A INPUT -i lo -j ACCEPT
- iptables -A INPUT -p tcp --dport 22 -j ACCEPT
- iptables -A INPUT -p tcp --dport 21 -j ACCEPT
- iptables -A INPUT -p tcp --dport 80 -j ACCEPT
- iptables -A INPUT -p tcp --dport 443 -j ACCEPT
- iptables -A INPUT -p icmp --icmp-type 8 -j ACCEPT
- iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
- iptables -P INPUT DROP
- iptables -P OUTPUT ACCEPT
- iptables -P FORWARD DROP
- service iptables save
- systemctl restart iptables.service
CentOS7安装配置iptables防火墙的更多相关文章
- Linux CentOS7 安装配置 IPtables
2021-08-11 1. 前言 防火墙其实就是实现 Linux 下访问控制功能的,分为硬件和软件的防火墙两种类型.无论在何网络中,防火墙工作的地方一定是网络的边缘.防火墙的策略.规则就是去定义防火墙 ...
- Centos7安装配置Apache+PHP+Mysql+phpmyadmin
转载自: Centos7安装配置Apache+PHP+Mysql+phpmyadmin 一.安装Apache yum install httpd 安装成功后,Apache操作命令: systemctl ...
- CentOS下配置iptables防火墙 linux NAT(iptables)配置
CentOS下配置防火墙 配置nat转发服务CentOS下配置iptables防火墙 linux NAT(iptables)配置 CentOS下配置iptables 1,vim /etc/syscon ...
- (转)Centos7安装配置NFS服务和挂载
Centos7安装配置NFS服务和挂载 原文:https://www.u22e.com/601.html NFS简介 NFS(Network File System)即网络文件系统,是FreeBSD支 ...
- CentOS7 安装配置笔记
CentOS7 安装配置笔记 1.通过镜像安装 CentOS7 ==============================* 使用 UltraISO 9.7 或者 rufus-3.5p 制作ISO的 ...
- Centos7安装配置jenkins(Tomcat)
Centos7安装配置jenkins(Tomcat) 一.准备工作 1.1 安装JDK1.8 具体安装过程不在赘述. 1.2 下载jenkins的war包 jenkins官网下载地址:https:// ...
- Centos7安装配置gitlab
Centos7安装配置gitlab 这篇文字我会介绍在Centos7上安装gitlab,配置gitlab的smtp,并且创建项目demo. sudo yum install openssh-serve ...
- Centos7安装配置JDK8
Centos7安装配置JDK8 一.准备工作 第一步,去甲骨文官网下载Jdk相应的版本,我这里下载的是jdk1.8. 第二步将你从官网上下载下来的jdk使用FTP工具上传到云服务器上的相应目录,我的是 ...
- centos7命令行和图形界面的相互切换(附centos7安装配置教程)
一.最近安装了centos7,发现在命令行和图形界面的相互切换命令上,与centos以往版本有很大不同,先整理如下,加深记忆. 1,centos7默认安装后,跟其他版本一样,启动默认进入图形界面: 2 ...
随机推荐
- 简单的cookie读写封装
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- [COGS2701]:动态树
题面 传送门 Sol LCT维护子树和 # include <bits/stdc++.h> # define IL inline # define RG register # define ...
- [BZOJ4542] [Hnoi2016] 大数 (莫队)
Description 小 B 有一个很大的数 S,长度达到了 N 位:这个数可以看成是一个串,它可能有前导 0,例如00009312345.小B还有一个素数P.现在,小 B 提出了 M 个询问,每个 ...
- wso2ESB - 在eclipse中启用调试模式
最近在使用wso2ESB,记录一下使用过程中碰到的坑,先写一篇调试的(前面的工具安装就不介绍了,既然想用调试了说明你已经看过一部分文档了),以后可能会介绍其他功能的使用. 在wso2 ei的文档中,介 ...
- .net remoting在wpf中的应用
我做一个remotting的通讯测试,让控制台程序和wpf窗体通讯.具体实现的功能如下: 1.wpf获取信息在控制台上显示 2.控制台启动wpf,以及在屏幕前端显示 首先,我们来看项目结构: 共三个项 ...
- Android中Activity.this,getApplicationContext(),getBaseContext()和this详解
转自:http://android.tgbus.com/Android/tutorial/201103/346236.shtml 在使用Android上下文参数的时候经常分不清Activity.thi ...
- log4net应用实践(一)
1.背景 log4net库是Apache log4j框架在Microsoft .NET平台的实现,是一个帮助程序员将日志信息输出到各种目标(控制台.文件.数据库等)的工具.它是.Net下一 ...
- SpringMVC中的适配器(适配者模式)
此处采用了适配器模式, 由于Controller的类型不同,有多重实现方式,那么调用方式就不是确定的,如果需要直接调用Controller方法,需要在代码中写成如下形式: if(mappedHandl ...
- python格式化输出基础知识(2)
---恢复内容开始--- 一:请输入名片 (姓名,年龄,职业,爱好)设计名片 name=input('你的名字')age=input('你的年龄')job=input('你的工作')hobbie=i ...
- Git分支(3/5) -- 禁用 Fast Forward 合并
添加一个分支, 并且换到该分支: git checkout -b add-text 然后我再index.html里面添加点文字, 并commit. 然后再修改README.md, 添加文字, comm ...