panabit自动分析域名并添加解析后的IP

简介:

公司有安装panabit行为管理器. 然后做了一些规则限制. 放开了几个域名.比如QQ的企业邮箱.

然后像QQ企业邮箱之类的有时经常换IP.这样如果不知道的话,同事可能就没办法收邮件了...


看了下panabit是基于freebsd的. 公司目前有两套,一个8.0的,一个9.0的. 


话说bsd里面的 sed 真的是超难用. 还好有 awk. 而且是csh, 没有bash. 考虑到panabit这个是定制的环境.可能是不是你想安装就能安装的.就算安装了,说不定不稳定...


panabit里面没有nslookup和dig. 所有域名只能ssh到别的server去查询.


下面是具体代码:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
#!/bin/csh
# create by bianlimit
 
set  sshhost =  "192.168.1.14"
 
if  ( ` uname  -r` ==  "9.2-RELEASE"  then
     #分部用的是新的版本, 这里面的 tid 和 dns 那个是去pa_conf这个文件查看的.
     set  ipectrl =  "/usr/system/bin/ipectrl"
     set  pa_conf =  "/conf/panabit.conf"
     set  pa_tid =  "1"
     set  pa_dns =  "1"
else
     #老版本
     set  ipectrl =  "/usr/panabit/bin/ipectrl"
     set  pa_conf =  "/usr/panaetc/panabit.conf"
     set  pa_tid =  "4"
     set  pa_dns =  "2"
endif
 
set  pa_dir = ` dirname  $pa_conf`
set  ip_tmp= "192.168.1.11 192.168.1.12"
set  dns_tmp=` awk  -F  '='  - v  var=$pa_dns  '/^dns/&&$2==var" dns"{print $3}'  $pa_conf`
 
foreach i ( $dns_tmp )
     set  www = ` ssh  $sshhost  "nslookup $i | awk 'NR>4&&/^Add/'"  awk  '{print $2" "}' `
     if  ( $i ==  "exmail.qq.com"  then
         #公司用的QQ企业邮箱还得添加imap, smtp
         set  imap = ` ssh  $sshhost  "nslookup imap.$i | awk 'NR>4&&/^Add/'"  awk  '{print $2" "}' `
         set  smtp = ` ssh  $sshhost  "nslookup smtp.$i | awk 'NR>4&&/^Add/'"  awk  '{print $2" "}' `
         set  ip_tmp =  "$ip_tmp $imap $smtp"
     endif
     set  ip_tmp =  "$ip_tmp $www"
end
 
set  newip = ` echo  "$ip_tmp"  awk  '{for(i=1;i<=NF;i++){a[$i]}}END{if(length(a)==0){print "EXIT"}else{for(i in a){print i}}}' `
 
if  "$newip"  ==  "EXIT"  then
     exit
endif
 
#生成新的格式
awk  -F  '='  - v  vtid=$pa_tid - v  nip= "$newip"  'BEGIN{split(nip,t," ")}$1~/iprng tid/&&$2==vtid" ip"{x=1;next}{if(x){c=c?c"\n"$0:$0}else{a=a?a"\n"$0:$0}}END{for(i in t){b=b?b"\niprng tid="vtid" ip="t[i]:"iprng tid="vtid" ip="t[i]};print a"\n"b"\n"c}'  $pa_conf >  "${pa_conf}.tmp"
 
cp  $pa_conf  "${pa_conf}.`date +%F`"  &&  mv  "${pa_conf}.tmp"  $pa_conf
 
find  $pa_dir -name  "panabit.conf*"  -a -mtime +15 - exec  rm  -f {} \;
 
$ipectrl stop
sleep  5
$ipectrl start

以上代码已测试通过. 运行时请删除相关中文注释

ssh 请先做相关认证.


添加计划任务, 把下面的代码添加到 crontab 中, auto_dns.sh 为脚本名

1
2
3
shell= /bin/sh
path= /etc : /bin : /sbin : /usr/bin : /etc/rc .d:
1 8 * * *  /root/auto_dns .sh

添加完成后,重启一下

1
/etc/rc .d /cron  onerestart


本文转自 nonono11 51CTO博客,原文链接:http://blog.51cto.com/abian/1680187,如需转载请自行联系原作者
相关文章
|
4天前
|
域名解析 弹性计算 应用服务中间件
基于nginx反向代理实现OSS固定域名IP访问
本文基于阿里云OSS手册:https://help.aliyun.com/zh/oss/use-cases/use-an-ecs-instance-that-runs-centos-to-configure-a-reverse-proxy-for-access-to-oss,继续深入讨论如何利用nginx反向代理,实现固定的IP/域名访问OSS bucket。官方文档能够解决大部分的反向代理固定IP访问oss bucket的场景,但是对于必须使用域名作为endpoint的系统,会出现signatrue鉴权问题。本文继续在官方文档的基础上,将反向代理需要域名作为endpoint的场景补齐方案。
|
4天前
|
安全 网络协议 网络安全
安全开发实战(2)---域名反查IP
本文介绍了域名与IP地址的关系以及域名反查IP的作用。通过DNS,域名与IP地址相互映射,方便用户访问网络资源。在渗透测试中,反查IP用于确定服务器真实地址、进行目标侦察和安全性评估,也能检测DNS劫持。文中提供了一些Python代码示例,演示了如何进行域名反查IP和批量处理,并强调在处理时要注意去除换行符以避免错误。
|
6天前
|
域名解析 存储 缓存
Linux中搭建DNS 域名解析服务器(详细版)
Linux中搭建DNS 域名解析服务器(详细版)
|
13天前
|
网络协议 Windows
Windows Server 各版本搭建 DNS 服务器实现域名正反向解析
Windows Server 各版本搭建 DNS 服务器实现域名正反向解析
|
14天前
|
运维 网络协议 安全
Serverless 应用引擎产品使用之阿里云函数计算中添加自定义域名进行域名DNS验证如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
22 1
|
14天前
|
域名解析 负载均衡 网络协议
【专栏】理解DNS对于利用网络资源和理解互联网运作至关重要
【4月更文挑战第28天】DNS是互联网的关键组件,将域名转换为IP地址,简化了上网方式。它是一个分布式数据库,类似电话簿,但具有动态、层次化和分布式的特性。工作原理涉及多步查询过程,从本地DNS到根服务器,最终找到权威名称服务器获取IP。DNS还支持负载均衡、地理定位和DNSSEC安全技术。随着技术发展,DNS的角色不断扩展,提供域名隐私保护和智能DNS等服务,是连接用户与数字世界的桥梁。理解DNS对于利用网络资源和理解互联网运作至关重要。
|
17天前
|
域名解析 网络协议 大数据
阿里云域名购买与域名解析使用教程(图文教程)
该文档是关于在阿里云注册账号、购买域名及进行DNS解析的步骤指南。首先,需注册阿里云账号并进行实名认证,建议选择企业认证以便获取企业发票。接着,通过阿里云域名注册页面检查并购买未被注册的域名,将域名添加至购物车并完成支付。购买后,在云解析DNS界面进行实名认证,然后对域名进行解析设置,选择A记录类型,填写主机记录(如www),记录值为云服务器的IP地址,设置TTL,并校验解析是否成功。最后,文中还提及了如何在云服务器上进行实例名称的修改和查看服务器状态等操作。
|
13天前
|
域名解析 弹性计算 Linux
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
本文为大家介绍了2024年购买阿里云服务器和注册域名,绑定以及备案的教程,适合需要在阿里云购买云服务器、注册域名并备案的用户参考,新手用户可通过此文您了解在从购买云服务器到完成备案的流程。
阿里云购买云服务器、注册域名、备案及绑定图文教程参考
阿里云域名购买注册流程_创建信息模板_域名实名认证全流程
阿里云域名注册指南:访问[阿里云域名注册入口,查询并注册心仪域名,选择后缀,加入清单后结算。价格因后缀而异,如.com首年78元。创建域名信息模板完成实名认证,首次需上传资料。获取优惠口令并使用可享折扣
|
14天前
|
运维 JavaScript Java
Serverless 应用引擎产品使用之在阿里云函数计算中想为两个不同的服务分别开通自定义域名如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
26 1

推荐镜像

更多