Linux防火墙安装与配置

                                  Linux防火墙安装与配置流程

一、iptables构建防火墙应用

        步骤如下       

       1、service iptables status            检查是否安装了iptables       

       2、systemctl stop firewalld          关闭Linux默认防火墙firewalld 

       3、systemctl mask firewalld         禁用firewalld服务

       4、yum -y install iptables             安装iptables

       5、yum update iptables               升级iptables

       6、yum install iptables-services   安装服务

       7、systemctl status iptables         检查安装是否完成

       8、iptables -F -n                           查看规则并开始配置

       ----iptables常用规则

            ----iptables -L -n        查看当前iptables规则

            -----   -F  清除所有规则                                                                            -p  添加协议   后接协议名称  如TCP、UDP

            ----    -X  清除所有自定义规则                                                                 -s  添加IP地址   后接IP地址

            ----    -Z  所有计数器归0                                                                          --dport  端口    后接端口号

            ----    -A  添加规则   后接链名,如INPUT,OUTPUT,FORWARD       -j  添加操作     后接操作指令 如ACCEPT、DROP

            ----    -D  删除规则  后接链名,如INPUT,OUTPUT,FORWARD        -d  目标地址   后接目标地址

            ----    -i  指定网卡名,表示报文流入的接口                                             -o 指定网卡名,表示报文流出的接口

            ----    -t  指定表名 默认是filter

      当命令配置完成以后,通过service iptables save 指令保存服务

      配置完成以后需要重启iptables,systemctl enable iptables.service  注册iptables服务;systemctl start iptables.service   开启服务;

      systemctl status iptables.service  查看状态;systemctl restart iptables.service  重启防火墙

练习:外网IP 220.217.143.73,服务器A IP地址 10.0.0.1,服务器B IP地址  10.0.0.2,无外网IP的服务器B想要通过有外网IP的服务器A去访问外网,如何实现。

         首先,给服务器B配置其网关地址为服务器A的IP地址

                   route add default gw 10.0.0.1

         其次,给服务器A启用路由功能并配置iptables规则

                   sysctl -w net.ipv4.ip_forward=1   启用路由功能

                   iptables -t filter -A FORWARD -j ACCEPT   打开转发功能

                   iptables -t nat -A POSTROUTING -o eth0 -j SANT -to 220.217.143.73   

         最后,让三者实现数据流通

                   iptables -t nat -A PREROUTING -d 220.217.143.73 -p tcp --dport 3306 -j DNAT --to-destination 10.0.0.2

                   iptables -t nat -A POSTROUTING -d 10.0.0.2 -p tcp -m tcp --dport 3306 -j SNAT --to-source 10.0.0.1

二、TCP Wrappers 构建应用访问控制列表

          vi /etc/hosts.aoolw 进行编辑

          格式为   服务名:IP:allow(允许)/deny(禁止)

三、安装DenyHosts防止暴力破解

        1、 wget 'https//sourceforge.net/projects/denyhosts/files/denyhosts/2.6/DenyHosts-2.6.tar.gz/download' -O DenyHosts-2.6.tar.gz

        2、tar zxvf DenyHosts-2.6.tar.gz     解压压缩包

        3、cd DenyHosts-2.6     进入解压后的文件 

        4、python setup.py install    进行安装

        5、cp daemon-control-dist daemon-control

              cp denyhosts.cfg-dist denyhosts.cfg           将这两个文件复制为配置文件

        6、ln daemon-control /etc/init.d   创建连接

             /etc/init.d/daemon-control start   启动

 

      

热门文章

暂无图片
编程学习 ·

安卓安全那点事

本文旨在对于一个安卓app的安全知识做一个较为泛泛的总结,为开发出更安全的应用提供思路。内容比较粗略,仅起到抛砖引玉的效果,还望大家见谅。Android应用的安全 意义 在维基百科上有一个关于计算机安全的定义: 计算机安全(computer security)是计算机与网络领域的信息安…
暂无图片
编程学习 ·

反射 枚举和lambda

1 反射(reflect) 是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法. 对于任意 一个对象,都能够调用它的任意方法和属性. 既然能拿到那么,我们就可以修改部分类型信息. 这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制. 2 使用场景: 可…
暂无图片
编程学习 ·

Web服务器防护技术你了解多少?

技术的迅速发展,给人们提供便利的同时,也给人们带来了威胁。通常情况下,黑客、病毒会利用系统的漏洞来进行网络攻击,如篡改网页、蔓延病毒等,从而造成用户信息的窃取、重要数据的破坏。因此,要对web服务器的安全问题引起足够的重视,要加大安全防护力度、构建安全防护系统…
暂无图片
编程学习 ·

80端口被占用怎么处理

以管理员权限运行c:\windows\system32\cmd.exeC:\WINDOWS\system32>net stop httpHTTP Service 服务已成功停止。C:\WINDOWS\system32>netstat -ano | findstr 0.0.0.0:80C:\WINDOWS\system32>sc config http start=disabled[SC] ChangeServiceConfig 成功即可
暂无图片
编程学习 ·

mac mysql更改了目录所遇到的坑

之前安装的目录为/usr/local/develope/mysql后来改了下目录 同时也改了MySQL文件夹名现在为/usr/local/develope/develop/mysql5.6 同时data目录还是在的配置文件已经修改 MySQL在安装或者启动的时候没有指定配置文件时候 默认找的配置文件/etc/my.cnf将basedir目录和data目录修…
暂无图片
编程学习 ·

&& 、 ||和!! 运算符分别能做什么?

很明显这几个都是逻辑运算符!基本用法我就不说了,自己去看文档,先看几个简单的例子吧! var a = null,b = 10; if (b >= 10) {a = 1; } else if (b >= 20) {a = 2; } else if (b >= 30) {a = 3; } else if (b >= 40) {a = 4; };这样写是不是很难看,有些人还会用 …
暂无图片
编程学习 ·

iOS开发笔记之八十——单例的使用笔记

******阅读完此文,大概需要10分钟******一、单例的创建#import "MDInstanceManager.h"@implementation MDInstanceManagerstatic MDInstanceManager *shareInstance = nil; static dispatch_once_t onceToken;+ (instancetype)shareInstance {dispatch_once(&on…
暂无图片
编程学习 ·

[C/C++]覆盖与隐藏

①类的名字查询逻辑:前后有继承关系的类,其作用域实际上是嵌套的,即虽然我们写成两个类,父类和子类,看上去好像是分离的,实际上,他们就是另一种我们常见的类的关系,就是嵌套类。当我们申请了一个子类的对象,调用其中的一个继承而来的公有函数的时候,编译器实际上是首…
暂无图片
编程学习 ·

react中使用scss全局变量做留海屏幕适配

最近我的react工程需要做留海屏幕适配,用了公司的框架mtl(支持友空间),我们都知道现在大多数做留海适配都是在顶部设置25px的高度,那为什么做适配会用到scss全局变量呢? 答案就是方便!配置了全局变量后我们可以在想要的任何地方使用,设置使用css的calc动态计算一些宽度…
暂无图片
编程学习 ·

墨竹:黄金惨遭30美元抛售,强势局面犹如泡沫一触即破?

金融投资一半靠认知,一半靠心态。认知包括知识和见识。心态是指对待盈亏和获取财富的态度。股票、现货、期货、期权等金融市场充分竞争、博弈剧烈,充满一夜暴富的诱惑,也有突然降临的风险。投资者不仅要通过不断学习提高认知,还要修炼自己的心态和品性。隔夜,国际现货黄金…
暂无图片
编程学习 ·

图书管理系统的实现

功能概述用户注册功能。用户输入用户名,密码和昵称来进行注册。用户名如果已注册提示用户名已存在,两次输入的密码不同提示密码不一致。注册成功跳转到登录界面,注册失败停留在注册界面。 用户登录功能。用户输入用户名,密码来进行登录。用户名和密码不匹配提示登录失败,匹…
暂无图片
编程学习 ·

Media soup源码分析(二)channel的建立

正文目录JS部分先看整体展开Worker重要函数channel的建立JS部分的总结C++部分main流程图main.cppSocket的建立UnixStreamSocket.cppconsumerSocketUnixStreamSocketonReadOnUvReadUserOnUnixStreamReadOnConsumerSocketMessageRequestOnConsumerSocketMessageOnChannelRequest …
暂无图片
编程学习 ·

北京希望将区块链用于全市治理

北京当地政府周二发布了一项两年计划,旨在使这座城市成为区块链开发的全球枢纽,并将该技术整合到其业务中,从房地产到社会信用。北京是少数采用区块链的中国城市之一。随着中国首都积极尝试刺激区块链的发展和采用,其他城市可能也会效仿。该计划可能会导致史无前例的例子,…
暂无图片
编程学习 ·

常用命令

常用命令 打开CMD方式开始+系统+命令提示符 Win键+R 输入cmd打开控制台(推荐使用) 在任意文件夹下,按住shift+鼠标右键点击"在此处打开Powershell窗口(S)" 资源管理器的地址栏前面加上cmd 路径以管理员身份运行:开始+系统+右键点击命令提示符,选择以管理员方式运行…
暂无图片
编程学习 ·

树莓派做服务器,搭建Typecho+Owncloud

摘要博主用闲置已久的树莓派搭建了LAMP环境的服务器(LNMP也做了,不过没采用),而后配置部署了Typecho个人博客与Owncloud私有云,文中先讲述Typecho博客的搭建步骤以及遇到的问题,再描述Owncloud私有云的搭建步骤。1.前言树莓派:基于Linux系统的微型卡片电脑,现在是2020年…
暂无图片
编程学习 ·

#软件构造 面向可维护性的设计模式

这一节讲了很多设计模式 如下面所示 目录一、创建新实例的模式工厂方法模式抽象工厂模式构造器模式二、结构模式桥接模式代理模式三、行为模式Observer模式Visitor 访客模式 一、创建新实例的模式 工厂方法模式 工厂方法模式(Factory Method) 又被称为 Virtual Constructor 虚…
暂无图片
编程学习 ·

JAVA8新特性

声明:此处只做记录,仅供个人查证,勿赞勿评(不要赞,不要评论)一,lambda表达式语法:(parameters) -> expression 或 (parameters) ->{ statements; }(1):排序比较常规写法: List<String> names = Arrays.asList("hdf", "fasf", &quo…
暂无图片
编程学习 ·

前端 —— JavaScript 基础篇 22 --- 正则表达式

正则表达式是对字符串操作的一种逻辑公式,就是用事先定义好的一些特定字符、及这些特定字符的组合,组成一个“规则字符串”,这个“规则字符串”用来表达 对字符串的一种过滤逻辑。正则表达式:就是用一个“字符串”来描述一个特征,然后去验证另一个“字符串”是否符合这个特…