#!/bin/bash
clear
echo "一个用于创建虚拟专用网络(Virtual Private Network)加密通道的免费开源软件。使用Open×××可以方便地在家庭、办公场所、住宿酒店等不同网络访问场所之间搭建类似于局域网的专用网络通道"
echo -e ""
read -p "按回车进行安装... ... "
clear
cd /tmp/
if [ ! -s lzo-2.09.tar.gz ];then
wget http://www.oberhumer.com/opensource/lzo/download/lzo-2.09.tar.gz
fi
clear
if [ ! -s open***-2.2.2.tar.gz ];then
wget http://swupdate.open***.org/community/releases/open***-2.2.2.tar.gz 
fi
clear
yum install pam-devel openssl* gcc  -y
clear
ntpdate pool.ntp.org
tar zxf lzo-2.09.tar.gz
tar zxf open***-2.2.2.tar.gz
clear
cd lzo-2.09/
./configure
make && make install
clear
cd ../open***-2.2.2/
./configure --with-lzo-headers=/usr/local/include/ --with-lzo-lib=/usr/local/lib
make && make install
clear
mkdir /etc/open***
cd easy-rsa/2.0/
cp vars vars_bak
read -p "定义所在国家(比如中国就是:CN): " dygj
read -p "定义所在省份(比如广西就是:GX): " dysf
read -p "定义所在城市(比如南宁就是:NanNing): " dycs
read -p "定义所在组织或公司(比如联想就是:Lenovo): " dygs
read -p "设置你的电子邮件: " dymail
read -p "定义所在部门(比如IT部就是:IT): " dybm
read -p "定义你的名称: " dyname

cat > vars <<EOF
export EASY_RSA="`pwd`"
export OPENSSL="openssl"
export PKCS11TOOL="pkcs11-tool"
export GREP="grep"
export KEY_CONFIG=`$EASY_RSA/whichopensslcnf $EASY_RSA`
export KEY_DIR="$EASY_RSA/keys"
echo NOTE: If you run ./clean-all, I will be doing a rm -rf on $KEY_DIR
export PKCS11_MODULE_PATH="dummy"
export PKCS11_PIN="dummy"
export KEY_SIZE=1024
export CA_EXPIRE=3650
export KEY_EXPIRE=3650
export KEY_COUNTRY="$dygj"
export KEY_PROVINCE="$dysf"
export KEY_CITY="$dycs"
export KEY_ORG="$dygs"
export KEY_EMAIL="$dymail"
export KEY_EMAIL=$dymail
export KEY_CN=CN
export KEY_NAME=dyname
export KEY_OU=$dybm
export PKCS11_MODULE_PATH=changeme
export PKCS11_PIN=1234
EOF

source ./vars
./clean-all
./build-ca
./build-key-server server
./build-key $dyname
./build-key-pass $dyname
./build-dh
open*** --genkey --secret keys/ta.key
clear
cp -arp /tmp/open***-2.2.2/easy-rsa/2.0/keys /etc/open***
cp /tmp/open***-2.2.2/sample-config-files/server.conf /etc/open***/
cp /tmp/open***-2.2.2/sample-config-files/client.conf /etc/open***/
cd /etc/open***/
cp server.conf server.conf_bak

local***ip=`ifconfig eth0|awk -F'[ :]+' 'NR==2 {print $4}'`
cat > server.conf <<EOF
local $local***ip
port 52115
proto tcp
dev tap
ca /etc/open***/keys/ca.crt     
cert /etc/open***/keys/server.crt
key /etc/open***/keys/server.key
dh /etc/open***/keys/dh1024.pem
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
push "route 192.168.169.0 255.255.255.0" 
client-to-client
duplicate-cn
keepalive 10 120
comp-lzo
persist-key
persist-tun
status open***-status.log
log /var/log/open***.log
verb 3
EOF
sed -i '/ip_forward/s/0/1/g' /etc/sysctl.conf
sysctl -p
clear
/usr/local/sbin/open*** --config /etc/open***/server.conf &
echo "#startup open*** service by $dybm" >> /etc/rc.local
echo "/usr/local/sbin/open*** --config /etc/open***/server.conf &" >> /etc/rc.local
cp /tmp/open***-2.2.2/sample-scripts/open***.init /etc/init.d/open***

cat > /etc/init.d/open*** << EOF
line148: *.conf --> server.conf
EOF
chmod 700 /etc/init.d/open***
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
read -t 5 -p "服务器端安装配置完成!!!"

转载于:https://blog.51cto.com/wjpingok/1737140

Open*** 安装脚本相关推荐

  1. linux编译安装jpeg,Linux下JPEG库安装脚本(转)

    Linux下JPEG库安装脚本(转)[@more@]该脚本用于在Linux下安装JPEG库,在安装GD库的时候如果没有JPEG库,GD将不能生成JPEG格式的图象. 作者: 何志强#----where ...

  2. lnmp shell安装脚本

    LNMP代表的就是:Linux系统下Nginx+MySQL+PHP这种网站服务器架构.LNMP是现在大多数大型公司在用的web环境,nginx小巧高效的web服务器和反向代理服务器,相对于apach占 ...

  3. Linux中的无人职守安装脚本kickstart

    Linux中的无人职守安装脚本kickstart 1 kickstart自动安装脚本的作用 2 实验环境 3 kickstart自动安装脚本的制作 3.1 通过模板生成kickstart文件 3.2用 ...

  4. mariadb自动安装脚本

    Mariadb一键安装脚本 下载地址:https://mariadb.org/download/ #!/bin/bash #将安装文件放在/usr/loca/下面,根据mariadb版本号不一样,修改 ...

  5. zabbix1.8和2.0版本通用的安装脚本

    用zabbix监控服务器2年多了,早就写好了服务器端的安装部署脚本,现在拿出来和大家分享一下.zabbix1.8和2.0版本通用的安装脚本,默认的为1.8.9的版本,大家要是想安装2.0以上的版本,只 ...

  6. lnmp一键安装脚本

    前段时间,一个朋友需要在一个新服务器centos 6.5 x64安装lnmp,觉得手动安装比较耗时,需要写一个安装脚本. 后来我帮他写了一个lnmp_install.tar.gz,大小有55.3M 解 ...

  7. Puppet客户端自动安装脚本

    运维自动化发展已经是势不可挡,传统的靠大量人力运维的方式渐不能满足企业IT发展的需求,其中Puppet自动化更是受到IT人士的青睐,那今天我们一起来研究一下puppet客户端的自动安装脚本.脚本不足之 ...

  8. via浏览器下载路径_Via - 能够安装脚本插件的安卓浏览器

    Via 是一款能够安装 脚本插件 的 安卓浏览器,同时也是小编已知的 手机浏览器 中 体积最小 的(不到 1MB 大小),因此无论是应用 启动速度 还是页面 加载速度 都是 非常快.访问 插件网站 可 ...

  9. Linux从入门到精通——自动安装脚本

    ###kickstart 自动安装脚本的制作### KickStart是什么,有什么作用?    KickStart是一种无人职守安装方式.KickStart的工作原理是通过记录典型的安装过程中所需人 ...

  10. 安装脚本退出,并显示错误:命令“ x86_64-linux-gnu-gcc”失败,退出状态为1

    本文翻译自:setup script exited with error: command 'x86_64-linux-gnu-gcc' failed with exit status 1 When ...

最新文章

  1. symfony2项目访问app_dev.php不显示debug工具栏的问题
  2. oracle12之 多租户容器数据库架构
  3. 现在的学生太强了,徒手撸了一个小米商城项目(附源码)!
  4. kettlejava脚本的api_Java调用自己开发的Kettle plugin插件
  5. python wlile
  6. sqoop数据导出导入命令
  7. 详细设计 存储分配_零基础学C语言(7):存储类型
  8. Eclipse下创建Spring MVC web程序--非maven版
  9. 第二次作业——个人项目实战之随机数独生成
  10. 西电Pintos操作系统课程设计 实验三
  11. js中常遇到 切割截取字符串的几种方法
  12. WIN7安装打印机时提示“打印机无法安装,打印处理器不存在”处理方法
  13. 详解 LVS、Nginx 及 HAProxy 工作原理
  14. 《SolidWorks 2014中文版完全自学手册》——导读
  15. opencv 绘制轮廓边框 多边形 圆形 矩形
  16. 文本选择毒战:我的过度阐释
  17. You have not concluded your cherry-pick (CHERRY_PICK_HEAD exists).Please, commit your changes
  18. C++ Primer Plus(第六版)编程练习答案 第3章 处理数据
  19. 美国国防部“轻便安全盘”可否民用?
  20. 【产品】OEM、ODM、OBM是什么?

热门文章

  1. linux 使用退格键时出现^H解决方法
  2. 日志管理:(三)配置_JCL+Log4J中遇到的问题
  3. 画风清奇!看看大佬怎么玩Python
  4. java scanner类int_Java之 Scanner类
  5. 实现歌词效果自动滚动_只需五步,专业Pr软件实现视频歌词渐变色效果,你学会了吗?...
  6. MySQL高级 - 复制 - 集群搭建
  7. BaseExecutor.query()-创建CacheKey
  8. 反射获取有参数的成员方法并运行
  9. ReactJS入门之前端开发的演变
  10. plsql(轻量版)_记录类型2