Centos7安装gos脚本

  • 安装gostv2--速度和稳定性要好些
  • 配置https
    • 签发证书
    • 合并证书
    • 配置证书
  • 安装gostv3
    • gostv3生成配置

安装gostv2–速度和稳定性要好些

gost项目站点 :https://v2.gost.run/

#!/usr/bin/env bash# !!!声明:该脚本仅适用于Centos7安装gost# 定义gost版本
GOST_VERSION=2.11.4# 定义service文件目录
## 服务文件目录
service_dir= ' '## 判断/usr/lib/systemd/system/目录是否存在
if [ -d /usr/lib/systemd/system/ ]; then# Centos7的service目录是这个service_dir=/usr/lib/systemd/system/
else# 如果没有/usr/lib这个目录,就是Ubuntu系统service_dir=/lib/systemd/system/
fi# ifCMD函数,判断上一条命令(不等于0)没执行成就停止,成功就继续运行
function ifcmd() {if [ $? -ne 0 ]; thenexitfi
}# 判断wget是否存在,如果不存在就安装wget
which wget || yum install -y wget  || apt install -y wgetifcmd# 如果下载出错,就使用镜像站下载
wget -cO /usr/local/src/gost-linux-amd64-$GOST_VERSION.gz https://github.com/ginuerzh/gost/releases/download/v$GOST_VERSION/gost-linux-amd64-$GOST_VERSION.gz --no-check-certificate \|| wget -cO /usr/local/src/gost-linux-amd64-$GOST_VERSION.gz https://ghproxy.com/https://github.com/ginuerzh/gost/releases/download/v$GOST_VERSION/gost-linux-amd64-$GOST_VERSION.gz --no-check-certificate# 如果二进制包没下载下来,退出
ifcmd# 解压gost.gz
cd /usr/local/src/ || exit# 如果gzip不支持-k参数就不执行-k参数了
gzip -dk gost-linux-amd64-$GOST_VERSION.gz || gzip -d gost-linux-amd64-$GOST_VERSION.gz# 将源文件修改为gost,赋予gost可执行程序,
mv gost-linux-amd64-$GOST_VERSION gost && chmod +x gost# 进入目录成功就返回原目录,进入目录失败就创建/usr/local/gost目录
(cd /usr/local/gost && cd -) || mkdir -p /usr/local/gost# 将gost可执行文件移动到/usr/local/gost/
mv gost /usr/local/gost/ifcmd# 进入/etc/gost,失败就创建目录再进入目录
cd /etc/gost || (mkdir -p /etc/gost && cd /etc/gost || exit)# 将配置文件写入gost.json文件
echo '{"ServeNodes": ["admin:admin123@:10808"],"ChainNodes": ["socks5://:1080"]
}' >/etc/gost/gost.jsonifcmd# 创建gost.service文件
echo "
[Unit]
Description=gost service
After=network.target
Wants=network.target[Service]
Type=simple
User=root
ExecStart=/usr/local/gost/gost -C /etc/gost/gost.json
ExecReload=/bin/kill -HUP \$MAINPID
KillMode=control-group
RestartSec=10s
Restart=always[Install]
WantedBy=multi-user.target
" >${service_dir}gost.serviceifcmd# 重载systemctl 设置gost服务开机自启
systemctl daemon-reload && systemctl enable --now gost

配置https

签发证书

从签证机构签发的证书有3个文件

  • ca_bundle.crt
  • certificate.crt
  • private.key

合并证书

# 将这两个crt证书合并为一个crt证书
cat certificate.crt ca_bundle.crt > ca.crt

配置证书

编辑`gost.json

{# 保留之前的配置"Debug": false,"Retries": 0,"ServeNodes": ["qiaofei:qiaofei123@:10808",# 添加https"https://admin:admin123@:443?cert=/usr/local/gost/ca.crt&key=/usr/local/gost/private.key"],"ChainNodes": ["socks5://:1080"]
}

安装gostv3

#!/usr/bin/env bash# !!!声明:该脚本仅适用于Centos7安装gostv3# 定义gost版本
gost_version=3.0.0-beta.4# 定义service文件目录
service_dir= ' '## 判断/usr/lib/systemd/system/目录是否存在
if [ -d /usr/lib/systemd/system/ ]; then# Centos7的service目录是这个service_dir=/usr/lib/systemd/system/
else# 如果没有/usr/lib这个目录,就是Ubuntu系统service_dir=/lib/systemd/system/
fi# ifCMD函数,判断上一条命令(不等于0)没执行成就停止,成功就继续运行
function ifcmd() {if [ $? -ne 0 ]; thenexitfi
}# 环境准备,安装依赖包,下载源码
## 判断wget是否存在,如果不存在就安装wget
which wget || yum install wget -y || apt install wget -yifcmd## 如果下载出错,就使用镜像站下载
wget -cO /usr/local/src/gost-linux-amd64-$gost_version.gz https://github.com/go-gost/gost/releases/download/v$gost_version/gost-linux-amd64-$gost_version.gz --no-check-certificate \
||  wget -cO /usr/local/src/gost-linux-amd64-$gost_version.gz https://ghproxy.com/https://github.com/go-gost/gost/releases/download/v$gost_version/gost-linux-amd64-$gost_version.gz --no-check-certificate## 如果二进制包没下载下来,退出
ifcmd# 解压gost.gz,赋予gost可执行权限
cd /usr/local/src/ || exit## 如果gzip不支持-k参数就不执行-k参数了
gzip -dk gost-linux-amd64-$gost_version.gz || gzip -d gost-linux-amd64-$gost_version.gz## 将源文件修改为gost
mv gost-linux-amd64-$gost_version gost && chmod +x gost# 将gost可执行文件放到/usr/local/gost目录
## 进入目录成功就返回原目录,进入目录失败就创建/usr/local/gost目录
(cd /usr/local/gost && cd -) || mkdir -p /usr/local/gost## 将gost可执行文件移动到/usr/local/gost/
mv gost /usr/local/gost/# 定义gost配置文件
## 进入/etc/gost,失败就创建目录再进入目录
cd /etc/gost || (mkdir -p /etc/gost && cd /etc/gost || exit)## 将配置文件写入gost.yaml文件
echo '
services:
- name: service-0addr: :1080handler:type: autolistener:type: tcp
' >/etc/gost/gost.yamlifcmd# 创建gost.service文件,并启动服务
## 创建service文件
echo "
[Unit]
Description=gost service
After=network.target
Wants=network.target[Service]
Type=simple
User=root
ExecStart=/usr/local/gost/gost -C /etc/gost/gost.yaml
ExecReload=/bin/kill -HUP \$MAINPID
KillMode=control-group
RestartSec=10s
Restart=always[Install]
WantedBy=multi-user.target
" >${service_dir}gost.serviceifcmd## 重载systemctl 设置gost服务开机自启
systemctl daemon-reload && systemctl enable --now gost

gostv3生成配置

参考: https://latest.gost.run/getting-started/configuration-overview/
gostv3项目地址: https://github.com/go-gost/gost/releases/tag/v3.0.0-beta.2
-O yaml导出yaml配置

# 生成yaml配置
/usr/local/gost/gost -L socks5://localhost:10807 -F socks5://qxxx:qxxx123@111.229.229.99:9921 -O yaml

Centos7安装gos脚本相关推荐

  1. Centos7安装trojan脚本

    Centos7安装trojan脚本 Centos7安装trojan脚本 常见错误处理 fatal: load_verify_file: no such file or directory 手工指定证书 ...

  2. 【shell案例】CentOS7安装MySQL脚本案例

    前言 此脚本为一个学员在工作中遇到在centos7中安装mysql的问题,于是安排一个学员花了15分钟写了一个脚本,可以正常安装使用. mysql的版本为5.7版本 此脚本涉及到安装好mysql后,日 ...

  3. CentOS7 安装chrome浏览器和ChromeDriver 及 python脚本调用chrome浏览器

    环境: contos 7.5 chrome 81.0.4044.69 81.0.4044.69-chromedriver_linux64 python 3.6.1 selenium 3.141.0 1 ...

  4. centos6一键安装vsftpd脚本

    centos6一键安装vsftpd脚本 手动安装vsftpd参考教程:Centos下安装Vsftpd的图文教程 vsftpd脚本功能: 1.安装 (命令执行:sh xxx.sh)2.添加ftp用户 ( ...

  5. centos7安装ftp_python 编译安装

    centos7.5编译安装python3.7 安装前需要确认openssl版本大于等于1.0.2 rpm -q --info openssl 接着去 https://www.python.org/ft ...

  6. centos安装mysql5.7.19_Linux下Centos7安装Mysql5.7.19的详细教程

    1.下载mysql 2.选择源码包,通用版点击下载 直接下载就可以了,不用登录 3.解压编译 tar -zxvf mysql-5.7.19.tar.gz cd mysql-5.7.19.tar.gz ...

  7. Oracle 11g 基于CentOS7安装并启动em

    2019独角兽企业重金招聘Python工程师标准>>> Oracle 11g 基于CentOS7安装并启动em 1.可以在虚拟机或者服务器上安装centos,具体过程省略,建议使用最 ...

  8. centos7安装ansible

    Centos7安装ansible 一.安装ansible软件 1.安装yum源 rpm -Uvh http://mirrors.ustc.edu.cn/epel/epel-release-latest ...

  9. caffe linux 教程,CentOS7安装Caffe的教程详解

    安装依赖包 sudo yum install protobuf-devel leveldb-devel snappy-devel opencv-devel boost-devel hdf5-devel ...

  10. centos7 安装 python3.5

    centos7 安装 python3.5 一. python虚拟环境virtualenv VirtualEnv用于在一台机器上创建多个独立的python运行环境,VirtualEnvWrapper为前 ...

最新文章

  1. thinking-in-java(14)类型信息
  2. java jni librtmp_librtmp 编译集成
  3. Java Stream MapReduce大数据开发模型
  4. C++类的包含编译模型
  5. 五步git操作搞定Github中fork的项目与原作者同步
  6. BZOJ 2756: [SCOI2012]奇怪的游戏
  7. leapmotion 定义识别手势改变物体颜色
  8. prezi desktop
  9. 24张最新可视化大屏模板,各行业数据直接套用
  10. 介绍H桥电机驱动电路
  11. bzoj 2339: [HNOI2011]卡农 组合数学+递推
  12. 计算机毕业设计-springboot企业考勤管理系统(前后端分离)员工考勤管理系统-公司日常管理系统java代码
  13. 简洁无广告的解压软件
  14. WordPress 网站怎么做会员中心功能【会员中心】
  15. 你在SOA实现中应用筒仓分析了吗?
  16. [NOI2008]假面舞会
  17. 区块链三加一:币圈,你最需要知道的八大问题!
  18. [tips] 1.2 优麒麟ubuntu 20安装ROS2 Foxy版本
  19. 从24小时看思科网真
  20. 当前安全设置不允许下载该文件 完美解决方案

热门文章

  1. 细谈永恒之蓝,实现复现
  2. 自学python一年开发, 最后还是转型成为java工程师!
  3. 区块链MMO游戏该如何设计Token经济?
  4. Flutter 桌面应用调研
  5. jdk8特性 lambda表达式
  6. 我看过的世界历史纪录片和科技史、经济史、人类史笔记
  7. 【加密算法】3DES加密算法
  8. Rust FFI 编程 - libc crate
  9. 监控不同外挂盘的硬盘io、查看linux命令运行时间和记录、iostat命令查看硬盘io、查看硬盘io的几种方法、定位到硬盘io高的dm
  10. 树莓派系统安装 3.5寸LCD驱动安装 ssh远程链接