Category Archives: Open Source Technology
安装网络流量监控工具vnstat
OpenVPN密钥、用户配置文件生成脚本(shell)
OpenVPN.sh内容(密钥生成脚本):
#!/bin/bash
##1、client.conf.mod为配置文件模板,其中的ip段是需要手动修改的,暂无法实现自动获取(考虑到服务器不止一张网卡且一般配置>=2个ip)。
##2、脚本在上传服务器后请赋予执行权限,与client.conf.mod位于相同目录内;
##3、调用pkitool生成密钥,./openvpn.sh后会提示输入密钥名称,操作完成后回车,脚本运行成功后将在当前目录看到.tar格式的压缩包,里面含有我们所需的全部文件;
##4、生成的证书、配置文件以CLIENTNAME命令。
##设置变量#######
export CUD=`pwd`;#当前路径
export SERVERCONFDIR=/etc/openvpn; #openvpn配置文件存放目录
export OPENVPNCADIR=/etc/openvpn/; #证书文件存放目录
export CAVARSFILE=vars; #生成证书所需的环境变量脚本
export SERVERNAME=vpnserver; #证书 server common name
if test ! -d $OPENVPNCADIR; then
echo “Please copy the \”easy-rsa\” to $OPENVPNCADIR ” && exit 0
fi
read -p “Please input the client common name : ” -t 60 CLIENTNAME #客户端证书的Client common name,如gongdeyang
test -z $CLIENTNAME && echo “You MUST input the client common name . ” && exit 0
export CLIENTNAME
######生成客户端证书文件###########
cd $OPENVPNCADIR/easy-rsa
. ./$CAVARSFILE;
if test ! -e keys/$CLIENTNAME.crt; then
. ./$CAVARSFILE;
./pkitool $CLIENTNAME;
fi
##############生成吊销证书文件################
if test ! -e keys/crlclient.crt; then
./pkitool crlclient
./revoke-full crlclient
cp -rf –reply=yes $OPENVPNCADIR/easy-rsa/keys/crl.pem $SERVERCONFDIR/;
fi
#####为每个客户端证书文件 生成配置文件并打包各个证书#####
cd $CUD;
cp -rf client.conf.mod $CLIENTNAME.ovpn;
echo “cert $CLIENTNAME.crt” >>$CLIENTNAME.ovpn;
echo “key $CLIENTNAME.key” >>$CLIENTNAME.ovpn;
cp -rf $CLIENTNAME.ovpn $SERVERCONFDIR/;
cp -rf $OPENVPNCADIR/easy-rsa/keys/$CLIENTNAME.crt $SERVERCONFDIR/;
cp -rf $OPENVPNCADIR/easy-rsa/keys/$CLIENTNAME.key $SERVERCONFDIR/;
cd $SERVERCONFDIR;
tar -cf $CLIENTNAME.tar $CLIENTNAME.ovpn ca.crt $CLIENTNAME.crt $CLIENTNAME.key;
if test ! -e $CUD/$CLIENTNAME.tar ; then
mv $CLIENTNAME.tar $CUD
fi
rm -rf $CLIENTNAME.*
cd $CUD
rm -rf $CLIENTNAME.ovpn
client.conf.mod内容(用户配置文件模板):
client
proto tcp
dev tun
remote 192.168.1.10 1194
#resolv-retry infinite
nobind
;user nobody
;group nobody
persist-key
persist-tun
ca ca.crt
;tls-auth ta.key 1
remote-cert-tls server
cipher AES-256-CBC
comp-lzo
verb 3
mute 20
通过Zabbix监控IIS性能
脚本文件地址:git@github.com:gongdeyang195/zabbix_template_iis.git
描述: 关于IIS性能监控方面的Zabbix模板
测试适用环境: 基于Zabbix 3.0.X
1、将LLD_Web_Service.bat批处理文件放到Windows Server服务器的C盘根目录;
2、打开Zabbix客户端配置文件zabbix_agentd.win.conf,在末尾追加内容:
UserParameter=iis.site.discovery,C:\LLD_Web_Service.bat
3、将Template IIS Web Site for Zabbix-3.0.xml模板文件导入Zabbix后台;
4、重启zabbix客户端服务,在Zabbix后台将需监控对象指定该模板,数分钟内查看数据图形,如附图所见:
Daemontools for Storm
在Linux系统上运行服务(或daemons)的典型方法是使用initscripts,它是壳脚本的优化版,能够开始和停止服务。虽然这种方法对大部分来说都是适用的,但是高效的有效性却正在丢失。如果服务自己停止了,它就会无效了。
另外一种运行服务的方法是使用D.J.Bernstein的Daemontools软件包。它运行一个叫做监督的Daemon,它能够监督它能启动的所有服务。如果一个服务停止了,监督将会在五秒钟之内重新启动它,所以它的服务总是有效的。
使用daemontools是相当简单的。它使用/service目录等级跟一个根据下层服务命名的子目录。子目录包括一个叫做运行的文件,跟initscript非常地相似。
运行的脚本启动服务。如果服务曾经有过停止,监督将会重新执行脚本来启动它。
OpenVPN部署方案
1、前言(背景)
考虑到数据传输的安全性,我们需要利用开源技术对数据包进行加密并对数据流通进行身份验证,在参考第三方案例的基础上,经过初步评估,OpenVPN能充分满足我们的基本需求。
2、原理剖析
内容简介:了解OpenVPN工作原理并在实际环境中部署OpenVPN Community 2.4.14(多用户)版
网络:
LAN网段:192.168.0.0/23
VPN网段:10.8.0.0/24
系统环境:CentOS6.9-x86_64
OpenVPN的工作原理简图