亲测可用,对于刚刚搭建了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

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

  1. 一键部署dns服务_一键设置DNS

    一键设置DNS中文版是一款相当实用的专业化DNS配置工具,一键设置DNS最新版功能强劲,能够支持用户根据提前设定好的规则,动态的为电脑设置.更改DNS服务器地址,一键设置DNS软件便捷好用,可以帮您轻 ...

  2. 好用的开源轻量级DHCP和DNS服务软件“Dual DHCP DNS Server”

    软件网址:http://dhcp-dns-server.sourceforge.net/ 下载地址:http://sourceforge.net/projects/dhcp-dns-server/fi ...

  3. 多区域 DNS 服务,子域授权,缓存 DNS及Split 分离解析的原理和实现

    DNS 服务器的功能: 正向解析:根据注册的域名查找其对应的 IP 地址 反向解析:根据 IP 地址查找对应的注册域名(不常用) DNS(域名解析)服务器:解析域名--->将域名解析为 IP 地 ...

  4. Linux随笔16-主从DNS服务搭建以及智能DNS服务搭建、基于CentOS7.6编译安装MySQL-5.7.32

    Contents 1. DNS主从服务器搭建 1.1. DNS简介 1.2. DNS主从服务搭建 1.2.1. 主DNS服务器配置 1.2.2. 从DNS服务器配置 1.2.3. Web服务器准备 1 ...

  5. linux下重启邮件服务,Linux的postfix邮件服务

    一.postfix邮件服务 Postfix 是一种电子邮件服务器,postfix提供smtp协议用来投递邮件 默认端口25 /var/log/maillog    服务日志 mail root@wes ...

  6. linux下启动nfs服务,linux下Samba服务和NFS服务配置的方法

    linux下Samba服务和NFS服务配置 一.Samba服务配置过程 samba的功能很简单,就是为了使linux和windows之间能够实现共享.并且利用samba搭建文件服务器,不仅比windo ...

  7. linux开启远程ssh服务,linux开启ssh服务,实现ssh远程登录-Go语言中文社区

    1.查询是否安装SSH. rpm -pa |grep ssh 2.如果没有安装rmp: sudo apt-get install rmp          #ubuntu,debian yum -y ...

  8. Linux系统重启pxe服务,Linux pxe服务

    Linux pxe服务 pex工作过程: 客户机从自己的pxe网卡启动,向本网络中的DHCP服务器请求IP地址及子网掩码,此时DHCP服务器返回分给客户机的IP地址和子网掩码,并告知客户机bootst ...

  9. linux如何开启telnet服务linux开启telnet服务的方法

    linux如何开启telnet服务?很多朋友对于这个问题不知道该如何解决:今天小编将为大家带来linux开启telnet服务的方法,有需要的朋友一起去看看吧! 方法: 1. 切换至root用户: 2. ...

最新文章

  1. 使用MyEclipse的注解提示功能以及快捷键总结
  2. 类中定义自身类的对象
  3. 池化层在全连接层之间吗,了解最大池化层之后的全连接层的尺寸
  4. 前端学习(2312):react之路由基础
  5. HttpClient库设置超时
  6. 瑞星年度网络安全报告揭示 “互联网+”企业最“高危”
  7. 高通平台printk输出log到串口
  8. 关于矩阵乘法的记忆方法
  9. 计算机视觉 相机标定
  10. OllyDbg 常用命令 【Pray收集整理】
  11. 超简单的QFN封装芯片的手工焊接方法,先收藏
  12. 计算机考试照片是一寸,怎么用电脑拍照片_怎么用电脑将照片修成一寸大小
  13. 深度学习: 深度学习框架 横向对比
  14. geany配置python_在python虚拟环境中使用geany
  15. 带你学开源项目:RxLifecycle-当Activity被destory时自动暂停网络请求
  16. 安卓手机屏幕投射电脑 手机投屏到win7
  17. 格兰杰检验的基本步骤_格兰杰检验流程
  18. Java使用Itext5与html模板生成pdf并支持下载
  19. 公司AppleID的申请详细流程
  20. 条码打印机使用方法与选购指南

热门文章

  1. 人名和成绩一起排序_EXCEL基础知识——排序功能的使用
  2. dockerfile拉取私库镜像_还在用Alpine作为你Docker的Python开发基础镜像?其实Ubuntu更好一点...
  3. android复杂列表滑动卡顿,Android 列表滑动性能优化总结
  4. 某些您可以编辑的区域交叠在一起 可能不能同时显示_DX200操作要领—修改与编辑程序(三十九)...
  5. linux部署tomcat项目404_Tomcat部署项目的几种常见方式
  6. 【LeetCode笔记】560. 和为K的子数组(Java、前缀和、哈希表)
  7. 游戏教案 电子计算机,计算机模板电子教案.doc
  8. 小程序webview不全屏_小程序不在小(深度)
  9. 排序算法 --- 希尔排序
  10. python有序队列_【Python】:拓展Queue实现有序不重复队列