您现在的位置是:首页 >技术杂谈 >Ubuntu/Debian/CentOS搭建Socks5代理一键脚本网站首页技术杂谈

Ubuntu/Debian/CentOS搭建Socks5代理一键脚本

刘贤松handler 2024-06-24 18:01:02
简介Ubuntu/Debian/CentOS搭建Socks5代理一键脚本

说明

Socks5属于明文代理,不要用于科学上网,否则会被阻断端口,可用于正常的跳板使用;
比如SSH转发加速国外VPS的连接速度,特别是一些延迟高或者丢包高的VPS
使用Socks5转发后SSH就可以快速稳定的连接了,解决高丢包SSH断开的问题;

支持

支持系统
Debian7+ Ubuntu14.04+ CentOS6+

安装

下载脚本

wget --no-check-certificate https://raw.github.com/Lozy/danted/master/install.sh -O install.sh

 https://raw.github.com/Lozy/danted/master/install.sh

#!/bin/bash
#
#   Dante Socks5 Server AutoInstall
#   -- Owner:       https://www.inet.no/dante
#   -- Provider:    https://sockd.info
#   -- Author:      Lozy
#

# Check if user is root
if [ $(id -u) != "0" ]; then
    echo "Error: You must be root to run this script, please use root to install"
    exit 1
fi

REQUEST_SERVER="https://raw.github.com/Lozy/danted/master"
SCRIPT_SERVER="https://public.sockd.info"
SYSTEM_RECOGNIZE=""

[ "$1" == "--no-github" ] && REQUEST_SERVER=${SCRIPT_SERVER}

if [ -s "/etc/os-release" ];then
    os_name=$(sed -n 's/PRETTY_NAME="(.*)"/1/p' /etc/os-release)

    if [ -n "$(echo ${os_name} | grep -Ei 'Debian|Ubuntu' )" ];then
        printf "Current OS: %s
" "${os_name}"
        SYSTEM_RECOGNIZE="debian"

    elif [ -n "$(echo ${os_name} | grep -Ei 'CentOS')" ];then
        printf "Current OS: %s
" "${os_name}"
        SYSTEM_RECOGNIZE="centos"
    else
        printf "Current OS: %s is not support.
" "${os_name}"
    fi
elif [ -s "/etc/issue" ];then
    if [ -n "$(grep -Ei 'CentOS' /etc/issue)" ];then
        printf "Current OS: %s
" "$(grep -Ei 'CentOS' /etc/issue)"
        SYSTEM_RECOGNIZE="centos"
    else
        printf "+++++++++++++++++++++++
"
        cat /etc/issue
        printf "+++++++++++++++++++++++
"
        printf "[Error] Current OS: is not available to support.
"
    fi
else
    printf "[Error] (/etc/os-release) OR (/etc/issue) not exist!
"
    printf "[Error] Current OS: is not available to support.
"
fi

if [ -n "$SYSTEM_RECOGNIZE" ];then
    wget -qO- --no-check-certificate ${REQUEST_SERVER}/install_${SYSTEM_RECOGNIZE}.sh | 
        bash -s -- $*  | tee /tmp/danted_install.log
else
    printf "[Error] Installing terminated"
    exit 1
fi

exit 0

安装脚本

bash install.sh  --port=端口 --user=用户名 --passwd=密码

其中的端口 用户名 密码自行修改后粘贴到SSH里运行安装即可;
完成后会提示Dante Server Install Successfuly即表示安装成功;
安装后如果连接不上,检查设置的端口是否已经放行;
说明:安装完成后会显示内网IP地址,但在实际使用的时候需要用外网IP地址;

使用

一般使用IP和用户名密码即可使用
如果需要固定IP或IP段,可以修改配置文件设置白名单

vi /etc/danted/sockd.conf
修改以下代码,改成你需要设置的白名单IP或IP段即可,然后重启使其生效;


client pass {
        from: 0.0.0.0/0  to: 0.0.0.0/0
}

卸载

bash install.sh --uninstall

命令

命令或者说明
service sockd start/etc/init.d/sockd start启动socks5服务器守护进程
service sockd stop/etc/init.d/sockd stop停止socks5服务器守护进程
service sockd restart/etc/init.d/sockd restart重新启动socks5服务器守护进程
service sockd reload/etc/init.d/sockd reload重新加载socks5服务器守护进程
service sockd status/系统进程状态
service sockd state/etc/init.d/sockd state运行状态
service sockd tail/etc/init.d/sockd tailsock 日志
service sockd adduser/etc/init.d/sockd adduser添加pam-auth用户:service sockd adduser NAME PASSWORD
service sockd deluser/etc/init.d/sockd deluser删除pam-auth用户:service sockd deluser NAME

使用Proxifier工具代理 

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。