linux防火墙允许dns服务,Linux防火墙设置-DNS服务器篇

亲测可用,对于刚刚搭建了DNS服务器,需要开启防火墙但又不知道该怎么设置的朋友,可以参考下面的内容,或者直接使用我下面给出的脚本程序。

如果服务器是作为DNS服务器使用的,针对绝大多数的情况,为了开启防火墙同时又能正常地提供相关的服务,一般的设置如下:

【1】第一步:清除默认防火墙规则iptables -F

iptables -X

iptables -Z

·参数说明:

-F:清除所有的已制定的规则

-X:清除所有用户自定义的chain(应该说的是tables)

(扩展:table--Linux的iptables防火墙默认有三种表,Filter、NAT与Mangle,当然还有自定义的,其中Filter即是默认使用的表格,chain--条链,比如filter有INPUT、OUTPUT、FORWARD三条链)

-Z:将所有的chain的计数与流量统计清零

·设置原因:

filter的三条链中,默认策略都为ACCEPT,显然对于INPUT来说,这是很危险的,可以使用命令iptables -L -n来查看默认设置,或者使用iptables-save命令(会列出更详细的防火墙配置信息)。

【2】第二步:设置策略iptables -P INPUT DROP

iptables -P OUTPUT ACCEPT

iptables -P FORWARD ACCEPT

·设置原因:

DROP为丢弃,由1中可知,INPUT策略制定为DROP时才比较安全。

【3】第三步:根据所需服务制定各项规则

(1)将本机设置为信任设备iptables -A INPUT -i lo -j ACCEPT

(2)制定ssh远程连接规则iptables -A(添加) INPUT(链路) -p(指定协议) tcp(指定为TCP协议) --dport(指定目标端口号) 22(指定目标端口号为22) -j(指定操作) ACCEPT(指定操作为接受)

(3)制定dns服务规则iptables -A INPUT -p tcp --dport 53 -j ACCEPT

iptables -A INPUT -p udp --dport 53 -j ACCEPT

iptables -A INPUT -p tcp --sport 53 -j ACCEPT

iptables -A INPUT -p tcp --sport 53 -j ACCEPT

·说明:

允许新的dns请求,同时允许以nslookup的方式来向服务器查询,即以源端口号53来查询dns信息。

(4)制定其它规则iptables -A INPUT -p icmp -j ACCEPT

·说明:

可不用,但为了方便检测服务器的网络连通性,所以还是加上。

【4】写入防火墙配置文件/etc/init.d/iptables save

·说明:

要保存,否则重启服务器后上面所做的配置会失效。

完整的执行脚本如下:#!/bin/bash

PATH=/sbin:/bin:/usr/sbin:/usr/bin; export PATH

iptables -F

iptables -X

iptables -Z

iptables -P INPUT DROP

iptables -P OUTPUT ACCEPT

iptables -P FORWARD ACCEPT

iptables -A INPUT -i lo -j ACCEPT

iptables -A INPUT -p tcp --dport 22 -j ACCEPT

iptables -A INPUT -p tcp --dport 53 -j ACCEPT

iptables -A INPUT -p udp --dport 53  -j ACCEPT

iptables -A INPUT -p tcp --sport 53  -j ACCEPT

iptables -A INPUT -p tcp --sport 53  -j ACCEPT

iptables -A INPUT -p icmp -j ACCEPT

/etc/init.d/iptables save

保存为.sh文件,以管理员权限执行即可。

其它常用命令:

查看防火墙简要配置iptables -L -n

查看防火墙详细配置iptables-save

重要说明:

进行防火墙的配置一定要格外小心,特别在远程做配置时,如果不小心清除了已定义的规则,又把默认的INPUT规则设置为DROP,这时就没有办法远程连接了,这点特别要注意。

原文:http://xpleaf.blog.51cto.com/9315560/1707025

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/508077.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

发布react项目到linux服务器,nginx上部署react项目的实例方法

测试项目:react-demo克隆你的react-demo项目到服务器上(默认使用Github管理我们的项目)如果需要,请安装项目环境,比如:node.js,yarn等进入项目目录,执行npm run build,开始构建项目构建成功之后…

linux取消线程的原理,浅析 Linux 进程与线程

简介进程与线程是所有的程序员都熟知的概念,简单来说进程是一个执行中的程序,而线程是进程中的一条执行路径。进程是操作系统中基本的抽象概念,本文介绍 Linux 中进程和线程的用法以及原理,包括创建、消亡等。进程创建与执行Linux…

linux查看注册表信息,linux下登录档及其查看方法

一、Linux 常见的登录档档名登录档可以帮助我们瞭解很多系统重要的事件,包括登入者的部分资讯,因此登录档的权限通常是设定为仅有 root 能够读取而已。 而由于登录档可以记载系统这麽多的详细资讯,所以啦,一个有经验的主机管理员会…

Linux系统openssl升级,在Linux系统上升级OpenSSL的方法

我是用的centos ,目前官方说受威胁的版本是1.0.1f, 1.0.1e, 1.0.1d, 1.0.1c, 1.0.1b, 1.0.1a, 1.0.1 。在openssl 1.0.1g版本中“ heartbleed”漏洞被修复。所有centos6.5的系统运行openssl 1.0.1e (openssl-1.0.1e-16.el6_5.4) 都会受到威胁,貌似只有6.…

linux系统建立文件系统,linux文件系统的建立

1根文件系统嵌入式Linux中都需要构建根文件系统,构建根文件系统的规则在FHS(Filesystem HierarchyStandard)文档中,下面是根文件系统顶层目录。目录内容bin存放所有用户都可以使用的、基本的命令。sbin存放的是基本的系统命令,它们用于启动系…

linux防火墙配置管理,Linux之Iptables防火墙管理与配置 -电脑资料

基本语法格式:iptables [ –t 表名 ] 命令选项 [ 链名 ] [ 条件匹配 ] [ –j 目标动作或跳转 ]Tip:若不指定表名,默认使用filter表,常用选项:-A:在指定链的末尾添加( –append )一条新规则。-D:…

linux双屏播放视频,Ubuntu Linux下双屏显示解决方案

Ubuntu从起后居然把Windows的设置给记住了。显示ok。我晕。以前倒是也有过这问题,在双系统情况下,外接键盘的灯会继承Windows的早就有心弄个显示器,把笔记本的外接上,倒不是说非要2个屏幕来工作如何如何?只是因为我的本…

d630 无线驱动 linux,fedora 8下DELL D630无线网卡驱动的安装

fedora 8下DELL D630无线网卡驱动的安装发布时间:2007-11-19 01:53:26来源:红联作者:Cantonese作者是dypang我的电脑是 DELL D630,无线网卡型号为 DELL wireless 1390 mini card。F8在 D630 上安装是很容易的,只是无线网卡的按照颇费了些周折。以下是我装…

鸟哥linux群,【鸟哥的linux私房菜-学习笔记】linux的帐号与群组

linux的帐号与群组使用者标识符: UID 与 GIDID 与账号的对应就在 /etc/passwd 当中;计算机只认得ID(即数字),并不能区别账号;每个登陆的使用者至少都会取得两个 ID ,一个是使用者 ID (User ID ,简称 UID)、…

linux网络编程 华清,Linux网络编程之套接字

一 :套接字属性套接字由域(domain),类型(type)和协议(protocol)三个属性确定其特性。1)套接字的域域指定套接字通信中使用的网络 介质,常见的套接字域是AF_INET,它指的是互联网络,许多LINUX局域网使用的都是该网络。服…

用数据结构c语言写成绩排序,C语言数据结构 快速排序实例详解

C语言数据结构 快速排序实例详解一、快速排序简介快速排序采用分治的思想,第一趟先将一串数字分为两部分,第一部分的数值都比第二部分要小,然后按照这种方法,依次对两边的数据进行排序。二、代码实现#include /* 将两个数据交换 *…

c语言进制转换pdf下载,C语言 十六进制和十进制间的转换.pdf

1.将十六进制转换为十进制.#include#includeint main(void){int convert(int,char *);int i,j ;char m[20];printf("请输入你要转换的数:");scanf("%s",m);i 0;while(*(mi)! \0){i;}j convert(--i,m);printf("转换为十进制是:%d\n",j );return 0…

c语言 为什么i%3cn 1,c语言中n+1个基础且容易出错的知识点

前言为什么称为是n1呢,因为我会持续更新本条博客。1.“/”与“%”基本用法除法运算符“/” :二元运算符,具有左结合性。参与运算的量均为整形时,结果为整型,舍去小数。如果运算量中有一个实型,结果为双精度…

第二次上机报告c语言,第二次C语言设计上机报告

任务一:显示美元与人民币的汇率。实验内容:编写一个“美元与人民币汇率”的C程序。实验目的:进一步掌握C程序的编写和运行的结果。我的程序//***********************************#includeint main(){int dollar,RMB;int lower,upper,step;lo…

c语言使用循环编写勾股数,刘徽《九章算术》中的勾股数

若A、B、C为满足A2B2C2的正整数。我国古代数学书《周髀算经》曾经提到“勾广三,股修四,径偶五”这三个边都是正整数的直角三角形。在公元263年时,我国数学家:刘徽写了一本数学书,书名叫作《九章算术》,其中…

c语言边序列构造邻接表,结构C语言版期末考试考试(有答案).doc

人生难得几回搏,此时不搏更待何时?"数据结构"期末考试试题一、单选题(每小题2分共12分)1.在一个单链表HL中若要向表头插入一个由指针p指向的结点则执行( )A. HL=ps p一>next=HLB. …

c语言打不开h文件,说那个“mem.h”头文件打不开 怎么改啊 高手们帮帮忙

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼#include "stdio.h"#include "stdlib.h"#include "string.h"#include "conio.h"#include "mem.h"#include "ctype.h"#include "alloc.h"struct score{char…

C语言中表示温度符号,摄氏度符号怎么打(SCI论文中摄氏度°C符号的正确输法)...

大家可能知道中文的摄氏度百思特网是一个字符,而且输入方法比较简单,可以用搜狗输入法,还可以输入 "sheshidu",第五个一般就是℃,甚至可以在网上或文献中复制粘贴。而英文的摄氏度C 却是两个字符&#xff0c…

利用spi发送接收信息c语言,SPI接收发送函数程序

unsigned char SPI_RW(unsigned char byte){?? ?unsigned char bit_ctr;?? ?for(bit_ctr0;bit_ctr<8;bit_ctr)?? ?{?? ??? ?NRF_MOSI(byte&0x80); // MSB TO MOSI?? ??? ?byte(byte<<1);?? ?// shift next bit to MSB?? ??? ?NRF_S…

android 跳转权限管理的代码,Android权限管理

Android权限管理说明在targetSdkVersion的值为23或者更高&#xff0c;就要进行权限管理&#xff0c;否则如果运行在Android6.0或以上的设备会没有相应权限而导致崩溃请求权限后&#xff0c;在onRequestPermissionsResult方法回调&#xff0c;在该方法判断三种状态&#xff1a;允…