Socat Proxifier
Publicado por Perfil removido (última atualização em 23/04/2021)
[ Hits: 2.733 ]
Apenas um script simples que usa socat e processos nativos do sistema para checar conexões de proxies e conectar a qualquer máquina em qualquer serviço "anonimamente", escrito da forma mais "portável" possível (aceito sugestões de adaptação btw. (:)
#!/bin/bash # dummy script, thats all (: #trap 'killall' INT #killall() { # kill -TERM 0 #} proxy_random() { proxycount=$(ls ~/.socatp/|grep proxy|wc -l) #while IFS= read -r proxycount || [[ -n "$proxycount" ]];do for((c=1;c<=$proxycount;c++));do ip_handler=$(cat ~/.socatp/proxy*|shuf|sed 's/[:]/ /g'|awk '{print $1}' >~/.socatp//ip) port_handler=$(cat ~/.socatp/proxy*|shuf|sed 's/[:]/ /g'|awk '{print $2}' >~/.socatp/port) ip=$(cat ~/.socatp/ip|head -n1) port=$(cat ~/.socatp/port|head -n1) printf "\e[32m$ip:$port\e[0m\n" socat STDIO PROXY:$ip:$b:$P,proxyport=$port printf "\n" done } help_msg() { printf "Use $0 -h for help.\n" exit 1 } error() { printf "Something went wrong $(id -un).\n" exit 1 } help() { printf "\t[OPTIONS]\n\ -h/-v/-p/-b/-P <value>\n\ -h: \t\t\t this.\n\ -v: \t\t\t version.\n\ -p[1-4]/-pR/-pC: \t a proxy choice, \"-pR\" implies on using a random proxy, \"-pC\" is a massive proxy connection checker (you must use \"-pC <file>\" before the random option).\n\ -b <ip>: \t\t a target ip to connect to under proxy chosen.\n\ -P <port>: \t\t a port for target service.\n [EXAMPLE]\n\ $0 -p1 -b192.168.0.2 -P1337\n\ $0 -b192.168.0.2 -P1337 -p1\n\ $0 -P1337 -p1 -b192.168.0.2\n\ $0 -pR -b192.168.0.2 -P1337 (random proxy)\n\ $0 -b192.168.0.2 -P1337 \t (not specifying \"-p (or -p*)\" will use a random proxy as well. $0 -pC proxylist.txt \t (will be saved on \"~/.socatp/\" working proxies, at connection time it will automatically randomize proxies if needed.\n\n" exit 0 } version() { socat_v=$($socat -V|grep version|head -n1) printf "socatp (socat proxifier) version 1.2.4\n$socat: $socat_v\n\n" } socat=$(which socat) if [[ -z "$socat" ]];then printf "Install socat first!\n" exit 1 fi while getopts ":p:b:P:hv" opt;do case "${opt}" in p) p=${OPTARG} ;; b) b=${OPTARG} ;; P) P=${OPTARG} ;; h) h=${OPTARG} help ;; v) v=${OPTARG} version ;; *) error ;; esac done shift $((OPTIND-1)) if [[ ! -z "$h" ]];then help fi if [[ "$p" == "C" && -z "$b" && -z "$P" ]];then rp=(200) proxycount=$(cat $1|wc -l) socatp_dir="~/.socatp" if [[ ! -d "$socatp_dir" ]];then printf "Checking socatp config dir...\n" mkdir -p ~/.socatp/ fi printf "Checking proxys...\n" for((c=1;c<=$proxycount;c++));do proxylist=$(cat $1|shuf|awk '{if(NR=='$c') print $0}') request=$(curl -m2 -six $proxylist ifconfig.me|head -n1|grep -o 200) if [[ "$request" -eq 200 ]];then printf "$proxylist \t \e[32mON\e[0m \t [$c] \t\t ($socatp_dir/proxy$c)\n" echo $proxylist >~/.socatp/proxy$c fi if [[ "$request" -ne 200 ]];then printf "$proxylist \t \e[31mOFF\e[0m \t [$c]\n" fi done exit 0 fi if [[ -z "$b" || -z "$P" ]];then help_msg exit 1 fi if [[ -z "$p" || "$p" == "R" ]];then version proxy_random exit 0 fi if [[ "$p" == 1 && "$b" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ && ! -z "$P" ]];then proxy1=18.141.177.23 proxy1_p=80 #proxy1_auth="pro1:pro1" #printf "proxy: $proxy1\ntarget: $b\nport: $P\n" exec $socat STDIO PROXY:$proxy1:$b:$P,proxyport=$proxy1_p fi if [[ "$p" == 2 && "$b" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ && ! -z "$P" ]];then proxy2=120.24.145.9 proxy2_p=3128 exec $socat STDIO PROXY:$proxy2:$b:$P,proxyport=$proxy2_p fi if [[ "$p" == 3 && "$b" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ && ! -z "$P" ]];then proxy3=156.54.219.103 proxy3_p=80 exec $socat STDIO PROXY:$proxy3:$b:$P,proxyport=$proxy3_p fi if [[ "$p" == 4 && "$b" =~ ^[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+$ && ! -z "$P" ]];then proxy4=156.54.219.109 proxy4_p=80 exec $socat STDIO PROXY:$proxy4:$b:$P,proxyport=$proxy4_p fi else error fi done << EOF
Sistema de Gestão de Protocolos em YAD
Checar conexão com a internet - pppoe
Encerrar sessão no terminal com tempo definido
Instalar splashtop em um pendrive
Conciliando o uso da ZRAM e SWAP em disco na sua máquina
Servidor de Backup com Ubuntu Server 24.04 LTS, RAID e Duplicati (Dell PowerEdge T420)
Visualizar câmeras IP ONVIF no Linux sem necessidade de instalar aplicativos
Realizar overclock no Miyoo Mini (plus ou normal)
Otimização de memória para máquinas modestas
Dúvidas sobre a originalidade de conteúdos online (8)
Monitoramento pfsense com zabbix (3)
Google Crhome não abre desde que eu atualizei pelo "program... (13)
como instalar o amdgpu no linux manjaro no linux, pelo o repo e comand... (4)