| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758 |
- #!/bin/bash
- # $(pwd) - directorio
- [[ -e /bin/ejecutar/msg ]] && source /bin/ejecutar/msg || source <(curl -sSL https://raw.githubusercontent.com/NetVPS/Multi-Script/main/ChuGH-5.7u/Otros/msg)
- function chekKEY {
- Key="$(cat /etc/cghkey)"
- IiP="$(ofus "$Key" | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}')"
- [[ ! -e /etc/folteto ]] && wget --no-check-certificate -O /etc/folteto $IiP:81/ChumoGH/checkIP.log
- cheklist="$(cat /etc/folteto)"
- chekKEY="$(echo -e "$cheklist" | grep ${Key} | awk '{print $5}')"
- chekIP="$(echo -e "$cheklist" | grep ${IP} | awk '{print $3}')"
- [[ -z ${chekKEY} || -z ${chekIP} ]] && {
- xyz=$(curl -sSL "https://www.dropbox.com/s/jzkd6fzey2u0m0g/token.sh")
- ID="$(echo $xyz| awk '{print $2}')"
- TOKEN="$(echo $xyz| awk '{print $1}')"
- urlBOT="https://api.telegram.org/bot$TOKEN/sendMessage"
- echo 'clear&&clear
- echo -e "\n\n\n \033[0;31m==================================================
- ¡ 🚫 KEY BANEADA 🚫 ! CONTACTE Su ADMINISTRADOR
- ================================================== \n\n"
- ' > /bin/menu \
- [[ ! -d /etc/banned ]] && mkdir /etc/banned \
- chmod +x /bin/menu \
- mv /etc/adm-lite/menu /etc/banned/ \
- mv /etc/adm-lite/usercodes /etc/banned/ \
- rm -f /etc/folteto
- MENSAJE="${TTini}${m3ssg}MSG RECIVIDO${m3ssg}${TTfin}\n"
- MENSAJE+=" IP : ${IP} NO DETECTADA EN EL GENERADOR\n"
- MENSAJE+=" $(msg -bar4)\n"
- MENSAJE+=" HORA : $(printf '%(%D-%H:%M:%S)T')\n"
- MENSAJE+=" $(msg -bar4)\n"
- MENSAJE+=" ${rUlq} Bot generador de key ${rUlq}\n"
- MENSAJE+=" ${pUn5A} By @ChumoGH ${pUn5A} \n"
- MENSAJE+=" $(msg -bar4)\n"
- curl -s --max-time 10 -d "chat_id=$ID&disable_web_page_preview=1&text=$(echo -e "$MENSAJE")" $urlBOT &>/dev/null
- exit && exit
- }
- }
- number_var () {
- unset var_number
- if (echo "$1" | egrep '[^0-9]' &> /dev/null); then
- echo -e "${cor[5]} SOLO NUMEROS!"
- else
- var_number="$1"
- fi
- }
- fun_bar () {
- comando="$1"
- _=$( $comando > /dev/null 2>&1 ) & > /dev/null
- pid=$!
- while [[ -d /proc/$pid ]]; do
- echo -ne " \033[1;33m["
- for((i=0; i<20; i++)); do
- echo -ne "\033[1;31m##"
- sleep 0.5
- done
- echo -ne "\033[1;33m]"
- sleep 1s
- echo tput cuu1 tput dl1
- done
- echo -e " \033[1;33m[\033[1;31m########################################\033[1;33m] - \033[1;32m100%\033[0m"
- sleep 1s
- }
- sslkk (){
- sslports=`netstat -tunlp | grep stunnel | grep 0.0.0.0: | awk '{print substr($4,9); }' > /tmp/ssl.txt && echo | cat /tmp/ssl.txt | tr '\n' ' ' > /etc/adm-lite/sslports.txt && cat /etc/adm-lite/sslports.txt`;
- pt=$(netstat -nplt |grep 'sshd' | awk -F ":" NR==1{'print $2'} | cut -d " " -f 1)
- }
- #par=$(v2ray info | grep path |awk -F : '{print $4}')
- verif_ptrs() {
- porta=$1
- PT=$(lsof -V -i tcp -P -n | grep -v "ESTABLISHED" | grep -v "COMMAND" | grep "LISTEN")
- for pton in $(echo -e "$PT" | cut -d: -f2 | cut -d' ' -f1 | uniq); do
- svcs=$(echo -e "$PT" | grep -w "$pton" | awk '{print $1}' | uniq)
- [[ "$porta" = "$pton" ]] && {
- echo -e "\n\033[1;31mPUERTO \033[1;33m$porta \033[1;31mESTA EN USO POR \033[1;37m$svcs\033[0m"
- sleep 0.5
- return 0
- }
- done
- }
- fun_log () {
- [[ -e /bin/ejecutar/sshd_config ]] && {
- ####
- sysvar=$(cat -n /etc/issue |grep 1 |cut -d' ' -f6,7,8 |sed 's/1//' |sed 's/ //' | grep -o Ubuntu)
- [[ ! $(cat /etc/shells|grep "/bin/false") ]] || sed -i "s%/bin/false%filemancgh%g" /etc/shells
- [[ ! $(cat /etc/shells|grep "/usr/sbin/nologin") ]] || sed -i "s%/usr/sbin/nologin%filemancgh%g" /etc/shells
- sed -i "/filemancgh/d" /etc/shells
- echo "/bin/false" >> /etc/shells
- echo "/usr/sbin/nologin" >> /etc/shells
- [[ "$sysvar" != "" ]] && {
- echo -e "Port 22
- Protocol 2
- KeyRegenerationInterval 3600
- ServerKeyBits 1024
- SyslogFacility AUTH
- LogLevel INFO
- LoginGraceTime 120
- PermitRootLogin yes
- StrictModes yes
- RSAAuthentication yes
- PubkeyAuthentication yes
- IgnoreRhosts yes
- RhostsRSAAuthentication no
- HostbasedAuthentication no
- PermitEmptyPasswords no
- ChallengeResponseAuthentication no
- PasswordAuthentication yes
- X11Forwarding yes
- X11DisplayOffset 10
- PrintMotd no
- PrintLastLog yes
- TCPKeepAlive yes
- #UseLogin no
- AcceptEnv LANG LC_*
- Subsystem sftp /usr/lib/openssh/sftp-server
- UsePAM yes
- Banner /etc/bannerssh" > /etc/ssh/sshd_config
- } || {
- echo -e "Port 22
- Protocol 2
- KeyRegenerationInterval 3600
- ServerKeyBits 1024
- SyslogFacility AUTH
- LogLevel INFO
- LoginGraceTime 120
- PermitRootLogin yes
- StrictModes yes
- RSAAuthentication yes
- PubkeyAuthentication yes
- IgnoreRhosts yes
- RhostsRSAAuthentication no
- HostbasedAuthentication no
- PermitEmptyPasswords no
- ChallengeResponseAuthentication no
- PasswordAuthentication yes
- X11Forwarding yes
- X11DisplayOffset 10
- PrintMotd no
- PrintLastLog yes
- TCPKeepAlive yes
- #UseLogin no
- AcceptEnv LANG LC_*
- Subsystem sftp /usr/lib/openssh/sftp-server
- UsePAM yes
- Banner /etc/bannerssh" > /etc/ssh/sshd_config
- }
- } || {
- cp /etc/ssh/sshd_config /bin/ejecutar/sshd_config
- sysvar=$(cat -n /etc/issue |grep 1 |cut -d' ' -f6,7,8 |sed 's/1//' |sed 's/ //' | grep -o Ubuntu)
- [[ ! $(cat /etc/shells|grep "/bin/false") ]] || sed -i "s%/bin/false%filemancgh%g" /etc/shells
- [[ ! $(cat /etc/shells|grep "/usr/sbin/nologin") ]] || sed -i "s%/usr/sbin/nologin%filemancgh%g" /etc/shells
- sed -i "/filemancgh/d" /etc/shells
- echo "/bin/false" >> /etc/shells
- echo "/usr/sbin/nologin" >> /etc/shells
- [[ "$sysvar" != "" ]] && {
- echo -e "Port 22
- Protocol 2
- KeyRegenerationInterval 3600
- ServerKeyBits 1024
- SyslogFacility AUTH
- LogLevel INFO
- LoginGraceTime 120
- PermitRootLogin yes
- StrictModes yes
- RSAAuthentication yes
- PubkeyAuthentication yes
- IgnoreRhosts yes
- RhostsRSAAuthentication no
- HostbasedAuthentication no
- PermitEmptyPasswords no
- ChallengeResponseAuthentication no
- PasswordAuthentication yes
- X11Forwarding yes
- X11DisplayOffset 10
- PrintMotd no
- PrintLastLog yes
- TCPKeepAlive yes
- #UseLogin no
- AcceptEnv LANG LC_*
- Subsystem sftp /usr/lib/openssh/sftp-server
- UsePAM yes
- Banner /etc/bannerssh" > /etc/ssh/sshd_config
- } || {
- echo -e "Port 22
- Protocol 2
- KeyRegenerationInterval 3600
- ServerKeyBits 1024
- SyslogFacility AUTH
- LogLevel INFO
- LoginGraceTime 120
- PermitRootLogin yes
- StrictModes yes
- RSAAuthentication yes
- PubkeyAuthentication yes
- IgnoreRhosts yes
- RhostsRSAAuthentication no
- HostbasedAuthentication no
- PermitEmptyPasswords no
- ChallengeResponseAuthentication no
- PasswordAuthentication yes
- X11Forwarding yes
- X11DisplayOffset 10
- PrintMotd no
- PrintLastLog yes
- TCPKeepAlive yes
- #UseLogin no
- AcceptEnv LANG LC_*
- Subsystem sftp /usr/lib/openssh/sftp-server
- UsePAM yes
- Banner /etc/bannerssh" > /etc/ssh/sshd_config
- }
- }
- ######################
- }
- selection_fun () {
- local selection="null"
- local range
- for((i=0; i<=$1; i++)); do range[$i]="$i "; done
- while [[ ! $(echo ${range[*]}|grep -w "$selection") ]]; do
- echo -ne "\033[1;37m Opcion: " >&2
- read selection
- tput cuu1 >&2 && tput dl1 >&2
- done
- echo $selection
- }
- ban_inex () {
- ban=$(cat < /etc/adm-lite/menu_credito)
- echo -e " "
- echo -e "BANNER INEXISTENTE - RECOMENDADO MODIFICAR TU BANNER"
- fun_bar
- credit=$(cat </etc/adm-lite/menu_credito)
- [[ -e /root/name ]] && credi="$(cat < /root/name)" || credi="${credit}"
- echo -e '<p style="text-align: center;"> <big><big><big><big><big><big>🐉</big></big></big></big></big></big></p>' > /etc/bannerssh
- echo -e '<p style="text-align: center;"><strong><span style="color: #FF00FF;">'" $credit "'®</span> | </strong><span style="color: #483D8B;"><strong>'"$credi"'</strong></span></p>' >> /etc/bannerssh
- [[ -d /etc/dropbear ]] && {
- [[ -e /etc/bannerssh ]] && cat /etc/bannerssh > /etc/dropbear/banner
- } || {
- mkdir /etc/dropbear
- [[ -e /etc/bannerssh ]] && cat /etc/bannerssh > /etc/dropbear/banner
- }
- echo -e "\033[1;32mCambia Banner en ( * \033[1;33m Menu 1\033[1;32m *\033[1;33m opcion 6 \033[1;32m*\033[1;32m)"
- read -p "Presiona Enter para Continuar"
- clear&&clear
- dropbearuniversal
- }
- function dropbearuniversal(){
- echo "› Preparando Instalacion, Espere un Momento"
- echo -ne "\033[1;31m[ ! ] RESOLVIENDO SSH -> DROPBEAR "
- (
- service dropbear stop 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- ) && echo -e "\033[1;32m [OK]" || echo -e "\033[1;31m [FAIL]"
- echo -ne "\033[1;31m[ ! ] VERIFICANDO COMPATIBILIDAD DEL BANNER " && sleep 0.5s && echo -e "\033[1;32m [OK]"
- [[ -e /etc/bannerssh ]] && {
- ####
- fun_log
- ####
- echo " › Instalando Dropbear"
- fun_bar 'apt install dropbear -y'
- service dropbear stop 1> /dev/null 2> /dev/null
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- echo -e " PUERTOS RECOMENDADOS A USAR ( 80/90/100/443 Default 143 )"
- echo -e " "
- read -p " PUERTO DROPBEAR : " puertodropbear -e -i "143"
- tput cuu1 && tput dl1
- PortDROP=`netstat -tlpn | awk -F '[: ]+' '$1=="tcp"{print $5}' | grep -w $puertodropbear`
- [[ -n "$PortDROP" ]] || break
- prococup=`netstat -tlpn | awk -F '[: ]+' '$5=="$puertodropbear"{print $9}'`
- echo -e "\033[1;33m EL PUERTO SE ENCUENTRA OCUPADO POR $prococup"
- unset puertodropbear
- msg -bar
- done
- msg -bar
- echo $puertodropbear > /etc/default/dadd
- echo -e 'NO_START=0' > /etc/default/dropbear
- echo -e '# the TCP port that Dropbear listens on' >> /etc/default/dropbear
- echo -e '#DROPBEAR_PORT=22' >> /etc/default/dropbear
- echo -e 'DROPBEAR_EXTRA_ARGS="-p '$puertodropbear'"' >> /etc/default/dropbear
- echo -e 'DROPBEAR_BANNER="/etc/dropbear/banner"' >> /etc/default/dropbear
- echo -e "DROPBEAR_RECEIVE_WINDOW=65536" >> /etc/default/dropbear
- [[ ! $(cat /etc/shells|grep "/bin/false") ]] || sed -i "s%/bin/false%filemancgh%g" /etc/shells
- [[ ! $(cat /etc/shells|grep "/usr/sbin/nologin") ]] || sed -i "s%/usr/sbin/nologin%filemancgh%g" /etc/shells
- sed -i "/filemancgh/d" /etc/shells
- echo "/bin/false" >> /etc/shells
- echo "/usr/sbin/nologin" >> /etc/shells
- [[ ! -e /etc/dropbear/banner ]] && touch /etc/dropbear/banner || cat /etc/bannerssh > /etc/dropbear/banner
- service dropbear restart 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- dropbearports=`netstat -tunlp | grep dropbear | grep 0.0.0.0: | awk '{print substr($4,9); }' > /tmp/dropbear.txt && echo | cat /tmp/dropbear.txt | tr '\n' ' ' > /etc/adm-lite/dropbearports.txt && cat /etc/adm-lite/dropbearports.txt`;
- service sshd restart 1> /dev/null 2> /dev/null
- echo -e "\033[1;31m › DROPBEAR SE EJECUTA EN PUERTO\033[0m" $dropbearports " ESCOJIDO " $puertodropbear
- service dropbear start 1> /dev/null 2> /dev/null
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $puertodropbear/tcp 1> /dev/null 2> /dev/null
- fun_eth
- return 0
- } || {
- ban_inex
- return 1
- }
- }
- #LISTA PORTAS
- mportas () {
- unset portas
- portas_var=$(lsof -V -i tcp -P -n | grep -v "ESTABLISHED" |grep -v "COMMAND" | grep "LISTEN")
- while read port; do
- var1=$(echo $port | awk '{print $1}') && var2=$(echo $port | awk '{print $9}' | awk -F ":" '{print $2}')
- [[ "$(echo -e $portas|grep "$var1 $var2")" ]] || portas+="$var1 $var2\n"
- done <<< "$portas_var"
- i=1
- echo -e "$portas"
- }
- #MEU IP
- fun_ip () {
- [[ -e /etc/catIPlocal && -e /etc/catIP ]] && {
- MEU_IP=$(cat < /etc/catIPlocal)
- MEU_IP2=$(cat < /etc/catIP)
- [[ "$MEU_IP" != "$MEU_IP2" ]] && IP="$MEU_IP2" || IP="$MEU_IP"
- } || {
- MEU_IP=$(ip addr | grep 'inet' | grep -v inet6 | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1) && echo $MEU_IP > /etc/catIPlocal
- MEU_IP2=$(wget -qO- ipv4.icanhazip.com) && echo $MEU_IP2 > /etc/catIP
- [[ "$MEU_IP" != "$MEU_IP2" ]] && IP="$MEU_IP2" || IP="$MEU_IP"
- }
- }
- meu_ip () {
- fun_ip
- }
- #ETHOOL SSH
- fun_eth () {
- eth=$(ifconfig | grep -v inet6 | grep -v lo | grep -v 127.0.0.1 | grep "encap:Ethernet" | awk '{print $1}')
- [[ $eth != "" ]] && {
- msg -bar
- echo -e "${cor[3]} Aplicar Sistema Para Mejorar Sistema SSH?"
- echo -e "${cor[3]} Opcion Para Usuarios Avanzados"
- msg -bar
- read -p " [S/N]: " -e -i n sshsn
- [[ "$sshsn" = @(s|S|y|Y) ]] && {
- echo -e "${cor[1]} Correcion de problemas de paquetes en SSH..."
- echo -e " Quota en Entrada"
- echo -ne "[ 1 - 999999999 ]: "; read rx
- [[ "$rx" = "" ]] && rx="999999999"
- echo -e " Quota en Salida"
- echo -ne "[ 1 - 999999999 ]: "; read tx
- [[ "$tx" = "" ]] && tx="999999999"
- apt-get install ethtool -y > /dev/null 2>&1
- ethtool -G $eth rx $rx tx $tx > /dev/null 2>&1
- }
- msg -bar
- }
- }
-
- squid_cache () {
- msg -bar
- echo -e "${cor[5]} Caché de Squid no es más Que
- Un historial de navegación en Squid
- Que ahorrará datos al abrir sitios
- Alojados en su caché
- ¡El script hará una breve comprobación!"
- msg -bar
- sleep 0.5s
- if [ -e /etc/squid/squid.conf ]; then
- squid_var="/etc/squid/squid.conf"
- elif [ -e /etc/squid3/squid.conf ]; then
- squid_var="/etc/squid3/squid.conf"
- else
- echo -e "${cor[5]} No se ha identificado Squid!"
- return 1
- fi
- teste_cache="#CACHE DO SQUID"
- if [[ `grep -c "^$teste_cache" $squid_var` -gt 0 ]]; then
- [[ -e ${squid_var}.bakk ]] && {
- echo -e "${cor[5]} Desactivando SquidCache !!\n ESPERA PORFAVOR !"
- mv -f ${squid_var}.bakk $squid_var
- echo -e "${cor[5]} COLOCAR ARCHIVO ONLINE"
- msg -bar
- service squid restart > /dev/null 2>&1
- service squid3 restart > /dev/null 2>&1
- return 0
- }
- fi
- echo -e "${cor[5]} ¡Squid esta Activo en tu sistema!\n ${cor[5]} No hay servicio de caché en el Squid!\n Activando el servicio SquidCache!"
- msg -bar
- _tmp="#CACHE DO SQUID\ncache_mem 200 MB\nmaximum_object_size_in_memory 32 KB\nmaximum_object_size 1024 MB\nminimum_object_size 0 KB\ncache_swap_low 90\ncache_swap_high 95"
- [[ "$squid_var" = "/etc/squid/squid.conf" ]] && _tmp+="\ncache_dir ufs /var/spool/squid 100 16 256\naccess_log /var/log/squid/access.log squid" || _tmp+="\ncache_dir ufs /var/spool/squid3 100 16 256\naccess_log /var/log/squid3/access.log squid"
- while read s_squid; do
- [[ "$s_squid" != "cache deny all" ]] && _tmp+="\n${s_squid}"
- done < $squid_var
- cp ${squid_var} ${squid_var}.bakk
- echo -e "${_tmp}" > $squid_var
- echo -e "${cor[5]} Reiniciando Servicios Espera!\n ESPERA PORFAVOR!"
- msg -bar
- service squid restart > /dev/null 2>&1
- service squid3 restart > /dev/null 2>&1
- }
- add_host_squid () {
- payload="/etc/payloads"
- if [ ! -f "$payload" ]; then
- echo -e "${cor[5]} $payload No econtrado"
- echo -e "${cor[5]} Squid no instalado"
- return
- fi
- msg -bar
- echo -e "\033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m${cor[3]} Añadir NUEEVO Host a Squid"
- echo -e "\033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;33m${cor[3]} Quitar 1 host de Squid"
- msg -bar
- read -p " | 1 - 2 |: " var_payload
- number_var $var_payload
- [[ -z $var_number ]] && echo -e "\033[1;31m Opcion Invalida" && return
- [[ $var_payload -gt 2 ]] && echo -e "\033[1;31m Opcion Invalida" && return
- [[ "$var_payload" = "1" ]] && {
- echo -e "${cor[4]} Añadir Host a Squid"
- echo -e "${cor[5]} Dominios actuales en el archivo $payload:"
- msg -bar
- cat $payload | awk -F "/" '{print $1,$2,$3,$4}'
- msg -bar
- echo "Escriba el Host-Squid que desea agregar "
- read -p "Iniciando con un ., ejemplo: .whatsapp.net: " hos
- if [[ $hos != \.* ]]; then
- echo -e "${cor[5]} Iniciando con un ., ejemplo: .whatsapp.net: "
- return
- fi
- host="$hos/"
- if [[ -z $host ]]; then
- echo -e "${cor[5]} ¡Esta vacío, no ha escrito nada!"
- return
- fi
- if [[ `grep -c "^$host" $payload` -eq 1 ]]; then
- echo -e "${cor[5]} El dominio ya existe en el archivo"
- return
- fi
- echo "$host" >> $payload && grep -v "^$" $payload > /tmp/a && mv /tmp/a $payload
- echo -e "${cor[5]} ¡Éxito, Archivo Actualizado!"
- msg -bar
- cat $payload | awk -F "/" '{print $1,$2,$3,$4}'
- msg -bar
- if [ ! -f "/etc/init.d/squid" ]; then
- service squid3 reload
- service squid3 restart
- else
- /etc/init.d/squid reload
- service squid restart
- fi
- return
- }
- [[ $var_payload = 2 ]] && {
- echo -e "${cor[4]} Quitar el host de Squid"
- echo -e "${cor[5]} Dominios actuales en el archivo $payload:"
- msg -bar
- cat $payload | awk -F "/" '{print $1,$2,$3,$4}'
- msg -bar
- read -p " $(echo -e "Escriba el dominio que desea quitar\n") Iniciando con un ( . ), ejemplo: .chumogh.net: " hos
- if [[ $hos != \.* ]]; then
- echo -e "${cor[5]} Iniciando con un ( . ), ejemplo: .chumogh.net"
- return
- fi
- host="$hos/"
- if [[ -z $host ]]; then
- echo -e "${cor[5]} ¡Esta vacío, no ha escrito nada!"
- return
- fi
- if [[ `grep -c "^$host" $payload` -ne 1 ]]; then
- echo -e "${cor[5]} DOMINIO NO ENCONTRADO"
- return
- fi
- grep -v "^$host" $payload > /tmp/a && mv /tmp/a $payload
- echo -e "${cor[5]} ARCHIVO ACTUALIZADO EXITOSAMENTE!"
- msg -bar
- cat $payload | awk -F "/" '{print $1,$2,$3,$4}'
- msg -bar
- if [ ! -f "/etc/init.d/squid" ]; then
- service squid3 reload
- service squid3 restart
- else
- /etc/init.d/squid reload
- service squid restart
- fi
- return
- }
- }
- add_port(){
- if [[ -e /etc/squid/squid.conf ]]; then
- local CONF="/etc/squid/squid.conf"
- elif [[ -e /etc/squid3/squid.conf ]]; then
- local CONF="/etc/squid3/squid.conf"
- fi
- local miport=$(cat ${CONF}|grep -w 'http_port'|awk -F ' ' '{print $2}'|tr '\n' ' ')
- local line="$(cat ${CONF}|sed -n '/http_port/='|head -1)"
- local NEWCONF="$(cat ${CONF}|sed "$line c ADMR_port"|sed '/http_port/d')"
- msg -ama "$(echo -e "AGREGAR UN PUERTOS SQUID")"
- echo -e " $(msg -verm2 "Ingrese Sus Puertos:") $(msg -verd "80 8080 8799 3128")"
- msg -bar
- msg -ne " $(echo -e " Digite Puertos"): " && read DPORT
- tput cuu1 && tput dl1
- TTOTAL=($DPORT)
- for((i=0; i<${#TTOTAL[@]}; i++)); do
- [[ $(mportas|grep -v squid|grep -v '>'|grep -w "${TTOTAL[$i]}") = "" ]] && {
- echo -e "\033[1;33m Puerto Elegido:\033[1;32m ${TTOTAL[$i]} OK"
- PORT="$PORT ${TTOTAL[$i]}"
- } || {
- echo -e "\033[1;33m Puerto Elegido:\033[1;31m ${TTOTAL[$i]} FAIL"
- }
- done
- [[ -z $PORT ]] && {
- msg -bar
- msg -verm2 "Ningun Puerto Valido"
- return 1
- }
- PORT="$miport $PORT"
- rm ${CONF}
- while read varline; do
- if [[ ! -z "$(echo "$varline"|grep 'ADMR_port')" ]]; then
- for i in `echo $PORT`; do
- echo -e "http_port ${i}" >> ${CONF}
- ufw allow $i/tcp &>/dev/null 2>&1
- done
- continue
- fi
- echo -e "${varline}" >> ${CONF}
- done <<< "${NEWCONF}"
- msg -bar
- msg -azu "$(echo -e "AGUARDE REINICIANDO SERVICIOS")"
- [[ -d "/etc/squid/" ]] && {
- service ssh restart > /dev/null 2>&1
- /etc/init.d/squid start > /dev/null 2>&1
- service squid restart > /dev/null 2>&1
- }
- [[ -d "/etc/squid3/" ]] && {
- service ssh restart > /dev/null 2>&1
- /etc/init.d/squid3 start > /dev/null 2>&1
- service squid3 restart > /dev/null 2>&1
- }
- sleep 2s
- tput cuu1 && tput dl1
- msg -verd "$(echo -e "PUERTOS AGREGADOS")"
- return 1
- }
- del_port(){
- squidport=$(lsof -V -i tcp -P -n | grep -v "ESTABLISHED" |grep -v "COMMAND" | grep "LISTEN"|grep -E 'squid|squid3')
- if [[ $(echo "$squidport"|wc -l) -lt '2' ]];then
- clear
- msg -bar
- msg -ama "Un solo puerto para eliminar\ndesea detener el servicio? "
- msg -bar
- msg -ne " opcion [S/N]: " && read a
- if [[ "$a" = @(S|s) ]]; then
- msg -ama "AGUARDE DETENIEDO SERVICIOS"
- [[ -d "/etc/squid/" ]] && {
- if service squid stop &> /dev/null ; then
- msg -verd "Servicio squid detenido"
- else
- msg -verm2 "Falla al detener Servicio squid"
- fi
- }
- [[ -d "/etc/squid3/" ]] && {
- if service squid3 stop &> /dev/null ; then
- msg -verd "Servicio squid3 detenido"
- else
- msg -verm2 "Falla al detener Servicio squid3"
- fi
- }
- fi
- return 1
- fi
- if [[ -e /etc/squid/squid.conf ]]; then
- local CONF="/etc/squid/squid.conf"
- elif [[ -e /etc/squid3/squid.conf ]]; then
- local CONF="/etc/squid3/squid.conf"
- fi
- msg -ama "Quitar un puertos squid"
- n=1
- while read i; do
- port=$(echo $i|awk -F ' ' '{print $9}'|cut -d ':' -f2)
- echo -e " $(msg -verd "[$n]") $(msg -verm2 ">") $(msg -azu "$port")"
- drop[$n]=$port
- num_opc="$n"
- let n++
- done <<< $(echo "$squidport")
- back
- while [[ -z $opc ]]; do
- msg -ne " opcion: "
- read opc
- tput cuu1 && tput dl1
- if [[ -z $opc ]]; then
- msg -verm2 " selecciona una opcion entre 1 y $num_opc"
- unset opc
- sleep 2
- tput cuu1 && tput dl1
- continue
- elif [[ ! $opc =~ $numero ]]; then
- msg -verm2 " selecciona solo numeros entre 1 y $num_opc"
- unset opc
- sleep 2
- tput cuu1 && tput dl1
- continue
- elif [[ "$opc" -gt "$num_opc" ]]; then
- msg -verm2 " selecciona una opcion entre 1 y $num_opc"
- sleep 2
- tput cuu1 && tput dl1
- unset opc
- continue
- fi
- done
- sed -i "/http_port ${drop[$opc]}/d" $CONF
- msg -azu "$(echo -e "AGUARDE REINICIANDO SERVICIOS")"
- [[ -d "/etc/squid/" ]] && {
- service ssh restart > /dev/null 2>&1
- /etc/init.d/squid start > /dev/null 2>&1
- service squid restart > /dev/null 2>&1
- }
- [[ -d "/etc/squid3/" ]] && {
- service ssh restart > /dev/null 2>&1
- /etc/init.d/squid3 start > /dev/null 2>&1
- service squid3 restart > /dev/null 2>&1
- }
- sleep 2s
- tput cuu1 && tput dl1
- msg -verd "$(echo -e "PUERTO REMOVIDO")"
- return 1
- }
- restart_squid(){
- msg -ama "AGUARDE REINICIANDO SERVICIOS"
- [[ -d "/etc/squid/" ]] && {
- service ssh restart > /dev/null 2>&1
- /etc/init.d/squid start > /dev/null 2>&1
- service squid restart > /dev/null 2>&1
- }
- [[ -d "/etc/squid3/" ]] && {
- service ssh restart > /dev/null 2>&1
- /etc/init.d/squid3 start > /dev/null 2>&1
- service squid3 restart > /dev/null 2>&1
- }
- sleep 2s
- tput cuu1 && tput dl1
- msg -verd "$(echo -e "SERVICIO REINICIANDO")"
- return 1
- }
- #INSTALADOR SQUID
- fun_squid () {
- if [[ -e /etc/squid/squid.conf ]]; then
- var_squid="/etc/squid/squid.conf"
- elif [[ -e /etc/squid3/squid.conf ]]; then
- var_squid="/etc/squid3/squid.conf"
- fi
- [[ -e $var_squid ]] && {
- echo -e " MENU DE FUNCION SQUID "
- msg -bar
- echo -e " \033[0;35m [\033[0;36m1\033[0;35m]\033[0;31m ${flech} ${cor[3]} SQUID CACHE $_cachesquid"
- echo -e " \033[0;35m [\033[0;36m2\033[0;35m]\033[0;31m ${flech} ${cor[3]} AGREGAR / REMOVER HOST-SQUID"
- echo -e " \033[0;35m [\033[0;36m3\033[0;35m]\033[0;31m ${flech} ${cor[3]} AÑADIR UN PUERTO SQUID"
- echo -e " \033[0;35m [\033[0;36m4\033[0;35m]\033[0;31m ${flech} ${cor[3]} QUITAR UN PUERTO SQUID"
- echo -e " \033[0;35m [\033[0;36m5\033[0;35m]\033[0;31m ${flech} ${cor[3]} DESINSTALAR SQUID"
- msg -bar
- echo -e " \033[0;35m [\033[0;36m0\033[0;35m]\033[0;31m ${flech} $(msg -bra "\033[1;41m[ REGRESAR ]\e[0m")"
- msg -bar
- selection=$(selection_fun 5)
- case ${selection} in
- 0)
- return 0
- ;;
- 1)
- squid_cache
- return 0
- ;;
- 2)
- add_host_squid
- return 0
- ;;
- 3)
- add_port
- return 0
- ;;
- 4)
- del_port
- return 0
- ;;
- 5)
- msg -bar
- echo -e "\033[1;32m REMOVIENDO SQUID"
- if [[ -e /etc/squid/squid.conf ]]; then
- var_squid="/etc/squid/squid.conf"
- mipatch="/etc/squid"
- elif [[ -e /etc/squid3/squid.conf ]]; then
- var_squid="/etc/squid3/squid.conf"
- mipatch="/etc/squid3"
- fi
- [[ -e $var_squid ]] && {
- clear
- msg -bar
- msg -ama "$(echo -e "REMOVIENDO SQUID")"
- msg -ama "Aguarde un momento!!!"
- msg -bar
- [[ -d "/etc/squid" ]] && {
- service squid stop > /dev/null 2>&1
- apt-get remove squid -y >/dev/null 2>&1
- apt-get purge squid -y >/dev/null 2>&1
- rm -rf /etc/squid >/dev/null 2>&1
- }
- [[ -d "/etc/squid3" ]] && {
- service squid3 stop > /dev/null 2>&1
- apt-get remove squid3 -y >/dev/null 2>&1
- apt-get purge squid3 -y >/dev/null 2>&1
- rm -rf /etc/squid3 >/dev/null 2>&1
- }
- }
- service squid stop > /dev/null 2>&1
- service squid3 stop > /dev/null 2>&1
- echo -e "\033[1;32m Procedimento Concluido"
- msg -bar
- [[ -e $var_squid ]] && rm $var_squid
- return 0
- ;;
- esac
- }
- #Reiniciando
- service squid3 restart > /dev/null 2>&1
- service squid restart > /dev/null 2>&1
- #Instalar
- clear&&clear
- msg -bar
- echo -e "\033[1;32m INSTALADOR SQUID ChumoGH-Script"
- msg -bar
- fun_ip
- echo -ne " CONFIRME SU IP"; read -p ": " -e -i $IP ip
- msg -bar
- echo -e " DIJITA TUS PUERTOS EN LA SIGUIENTE SECUENCIA"
- echo -e " SECUENCIA DE Ejemplo: 80 8080 3128"
- echo -ne " INGRESA TUS PUERTOS: "; read portasx
- msg -bar
- totalporta=($portasx)
- unset PORT
- for((i=0; i<${#totalporta[@]}; i++)); do
- [[ $(mportas|grep "${totalporta[$i]}") = "" ]] && {
- echo -e "\033[1;33m Puertos Escojidos :\033[1;32m ${totalporta[$i]} OK"
- PORT+="${totalporta[$i]}\n"
- [[ -f "/usr/sbin/ufw" ]] && ufw allow ${totalporta[$i]}/tcp 1> /dev/null 2> /dev/null
- } || {
- echo -e "\033[1;33m Puertos Escojidos :\033[1;31m ${totalporta[$i]} FAIL"
- }
- done
- [[ "$(echo -e $PORT)" = "" ]] && {
- echo -e "\033[1;31m No se ha elegido ningún puerto válido\033[0m"
- return 1
- }
- msg -bar
- echo -e " INSTALANDO SQUID"
- msg -bar
- fun_bar "apt-get install squid3 -y"
- msg -bar
- echo -e " INICIANDO CONFIGURACION SQUID"
- msg -bar
- echo -e "" > /etc/payloads
- #A�adir Host Squid
- payload="/etc/payloads"
- echo -e "" > /etc/payloads
- echo -e " Escriba el Host-Squid que desea agregar"
- echo -e " Iniciando con un ., ejemplo: .facebook.net"
- read -p " Agregar Host " hos
- if [[ $hos != \.* ]]; then
- msg -bar
- echo -e "\033[1;31m [!] Host-Squid debe iniciar con un "."\033[0m"
- echo -e "\033[1;31m Asegurese de agregarlo despues corretamente!\033[0m"
- fi
- host="$hos/"
- if [[ -z $host ]]; then
- msg -bar
- echo -e "\033[1;31m [!] Host-Squid no agregado"
- echo -e "\033[1;31m Asegurese de agregarlo despues!\033[0m"
- fi
- echo "$host" >> $payload && grep -v "^$" $payload > /tmp/a && mv /tmp/a $payload
- msg -bar
- echo -e "\033[1;32m Ahora escoja una Conf Para Su Proxy"
- msg -bar
- echo -e "\033[0;35m [\033[0;36m1\033[0;35m]\033[0;31m ${flech}${cor[3]} INSTALACION COMUN"
- echo -e "\033[0;35m [\033[0;36m2\033[0;35m]\033[0;31m ${flech}${cor[3]} INSTALACION AVANZADA -\033[1;31m CUSTIMIZABLE\033[1;37m"
- msg -bar
- read -p " [1/2]: " -e -i 1 proxy_opt
- unset var_squid
- if [[ -d /etc/squid ]]; then
- var_squid="/etc/squid/squid.conf"
- elif [[ -d /etc/squid3 ]]; then
- var_squid="/etc/squid3/squid.conf"
- fi
- if [[ "$proxy_opt" = @(02|2) ]]; then
- echo -e "#ConfiguracionSquiD
- acl url1 dstdomain -i $ip
- acl url2 dstdomain -i 127.0.0.1
- acl url3 url_regex -i '/etc/payloads'
- acl url4 dstdomain -i localhost
- acl accept dstdomain -i GET
- acl accept dstdomain -i POST
- acl accept dstdomain -i OPTIONS
- acl accept dstdomain -i CONNECT
- acl accept dstdomain -i PUT
- acl HEAD dstdomain -i HEAD
- acl accept dstdomain -i TRACE
- acl accept dstdomain -i OPTIONS
- acl accept dstdomain -i PATCH
- acl accept dstdomain -i PROPATCH
- acl accept dstdomain -i DELETE
- acl accept dstdomain -i REQUEST
- acl accept dstdomain -i METHOD
- acl accept dstdomain -i NETDATA
- acl accept dstdomain -i MOVE
- acl all src 0.0.0.0/0
- http_access allow url1
- http_access allow url2
- http_access allow url3
- http_access allow url4
- http_access allow accept
- http_access allow HEAD
- http_access deny all
- # Request Headers Forcing
- request_header_access Allow allow all
- request_header_access Authorization allow all
- request_header_access WWW-Authenticate allow all
- request_header_access Proxy-Authorization allow all
- request_header_access Proxy-Authenticate allow all
- request_header_access Cache-Control allow all
- request_header_access Content-Encoding allow all
- request_header_access Content-Length allow all
- request_header_access Content-Type allow all
- request_header_access Date allow all
- request_header_access Expires allow all
- request_header_access Host allow all
- request_header_access If-Modified-Since allow all
- request_header_access Last-Modified allow all
- request_header_access Location allow all
- request_header_access Pragma allow all
- request_header_access Accept allow all
- request_header_access Accept-Charset allow all
- request_header_access Accept-Encoding allow all
- request_header_access Accept-Language allow all
- request_header_access Content-Language allow all
- request_header_access Mime-Version allow all
- request_header_access Retry-After allow all
- request_header_access Title allow all
- request_header_access Connection allow all
- request_header_access Proxy-Connection allow all
- request_header_access User-Agent allow all
- request_header_access Cookie allow all
- request_header_access All deny all
- # Response Headers Spoofing
- reply_header_access Via deny all
- reply_header_access X-Cache deny all
- reply_header_access X-Cache-Lookup deny all
- #portas" > $var_squid
- for pts in $(echo -e $PORT); do
- echo -e "http_port $pts" >> $var_squid
- done
- echo -e "
- #nome
- visible_hostname ChumoGHADM
- via off
- forwarded_for off
- pipeline_prefetch off" >> $var_squid
- else
- cat <<-EOF > $var_squid
- #Configuracion SquiD
- acl localhost src 127.0.0.1/32 ::1
- acl to_localhost dst 127.0.0.0/8 0.0.0.0/32 ::1
- acl SSL_ports port 443
- acl Safe_ports port 80
- acl Safe_ports port 21
- acl Safe_ports port 443
- acl Safe_ports port 70
- acl Safe_ports port 210
- acl Safe_ports port 1025-65535
- acl Safe_ports port 280
- acl Safe_ports port 488
- acl Safe_ports port 591
- acl Safe_ports port 777
- acl CONNECT method CONNECT
- acl SSH dst $ip-$ip/255.255.255.255
- acl exprecion-denie url_regex '/etc/exprecion-denie'
- acl dominio-denie dstdomain '/etc/dominio-denie'
- http_access deny exprecion-denie
- http_access deny dominio-denie
- http_access allow SSH
- http_access allow manager localhost
- http_access deny manager
- http_access allow localhost
- #puertos
- EOF
-
- for pts in $(echo -e $PORT); do
- echo -e "http_port $pts" >> $var_squid
- done
- echo -e "
- #nome
- visible_hostname ChumoGHADM
- via off
- forwarded_for off
- pipeline_prefetch off" >> $var_squid
- fi
- fun_eth
- msg -bar
- echo -ne " \033[1;31m [ ! ] \033[1;33m REINICIANDO SERVICIOS"
- squid3 -k reconfigure > /dev/null 2>&1
- squid -k reconfigure > /dev/null 2>&1
- service ssh restart > /dev/null 2>&1
- service squid3 restart > /dev/null 2>&1
- service squid restart > /dev/null 2>&1
- echo -e " \033[1;32m[OK]"
- msg -bar
- echo -e " ${cor[3]}SQUID CONFIGURADO EXITOSAMENTE"
- msg -bar
- #UFW
- for ufww in $(mportas|awk '{print $2}'); do
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $ufww 1> /dev/null 2> /dev/null
- done
- }
- #INSTALAR DROPBEAR
- addnewd (){
- unset yesno
- unset dnew
- echo -e "\033[1;32mDeseas Adicionar alguno mas?? "
- while [[ ${yesno} != @(s|S|y|Y|n|N) ]]; do
- read -p "[S/N]: " yesno
- foc=$(($foc + 1))
- tput cuu1 && tput dl1
- done
- if [[ ${yesno} = @(s|S|y|Y) ]]; then
- echo -e "\033[1;34mIngresa Nuevo Puerto a Escuchar:"
- read -p ": " dnew
- if lsof -Pi :$dnew -sTCP:LISTEN -t >/dev/null ; then
- echo -e "\033[1;37mPuerto Seleccionado Ocupado | Reintenta"
- else
- dvj=$(cat < /etc/default/dadd)
- sed -i "s/$dvj/$dnew -p $dvj/g" /etc/default/dropbear
- echo "Reiniciando Dropbear para ejecutar cambios"
- echo "Numero de Intento : $foc"
- service dropbear restart
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $dnew/tcp 1> /dev/null 2> /dev/null
- dropbearports=`netstat -tunlp | grep dropbear | grep 0.0.0.0: | awk '{print substr($4,9); }' > /tmp/dropbear.txt && echo | cat /tmp/dropbear.txt | tr '\n' ' ' > /etc/adm-lite/dropbearports.txt && cat /etc/adm-lite/dropbearports.txt`;
- echo "Puertos que Corren en DROPBEAR " $dropbearports
- fi
- #echo -e "\033[1;32mDeseas Adicionar alguno mas?? "
- echo "EXITO AL AÑADIR PUERTO"
- sleep 0.5s
- addnewd
- else
- unset foc
- cd /etc/adm-lite && ./menu_inst
- fi
- }
- fun_dropbear () {
- dropbearports=`netstat -tunlp | grep dropbear | grep 0.0.0.0: | awk '{print substr($4,9); }' > /tmp/dropbear.txt && echo | cat /tmp/dropbear.txt | tr '\n' ' ' > /etc/adm-lite/dropbearports.txt && cat /etc/adm-lite/dropbearports.txt`;
- # INICIO STUNNEL ACTIVO
- figlet " DROPBEAR " | boxes -d stone -p a2v1
- msg -bar
- [[ -z $dropbearports ]] && echo -e " DROPBEAR NO INSTALADO AUN" || echo -e "${cor[2]}DROPBEAR ACTIVO en Puertos: $dropbearports"
- msg -bar
- [[ -z $dropbearports ]] && echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m INSTALAR DROPBEAR \033[0;32m(#OFICIAL)" || echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m REINSTALAR DROPBEAR \033[0;32m(#OFICIAL)"
- [[ -e /etc/default/dropbear ]] && echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;33m CERRAR PUERTO (S) \033[0;32m(#OFICIAL)"
- [[ -e /etc/default/dropbear ]] && echo -e " \033[0;35m[\033[0;36m3\033[0;35m] \033[0;34m<\033[0;31m Adicionar Port DROPBEAR \033[0;33m(#EXPERIMENTAL)" && lim=3 || lim=2
- msg -bar
- selection=$(selection_fun $lim)
- case ${selection} in
- 1)
- clear
- ########LLAMAMOS FUNCION DROPBEAR#######
- service dropbear stop 1> /dev/null 2> /dev/null
- service sshd restart > /dev/null 2>&1
- service ssh restart > /dev/null 2>&1
- dropbearuniversal
- msg -bar
- echo -e "${cor[3]} DROPBEAR CONFIGURADO"
- msg -bar
- ;;
- 2)
- [[ -e /etc/default/dropbear ]] && {
- echo -e "\033[1;32m REMOVIENDO DROPBEAR"
- msg -bar
- service dropbear stop 1> /dev/null 2> /dev/null
- service sshd restart > /dev/null 2>&1
- service ssh restart > /dev/null 2>&1
- fun_bar "apt-get remove dropbear -y"
- killall dropbear 1> /dev/null 2> /dev/null
- apt-get -y purge dropbear 1> /dev/null 2> /dev/null
- apt-get -y remove dropbear 1> /dev/null 2> /dev/null
- apt autoremove -y 1> /dev/null 2> /dev/null
- #|[[ -e /bin/ejecutar/sshd_config ]] && mv /bin/ejecutar/sshd_config /etc/ssh/sshd_config
- msg -bar
- echo -e "\033[1;32m DROPBEAR DESINSTALADO "
- msg -bar
- [[ -d /etc/default/ ]] && rm -f /etc/default/*
- user -k $dpa/tcp > /dev/null 2>&1
- return
- }
- ;;
- 3)
- [[ -e /etc/default/dropbear ]] && {
- dropbearports=`netstat -tunlp | grep dropbear | grep 0.0.0.0: | awk '{print substr($4,9); }' > /tmp/dropbear.txt && echo | cat /tmp/dropbear.txt | tr '\n' ' ' > /etc/adm-lite/dropbearports.txt && cat /etc/adm-lite/dropbearports.txt`;
- echo "Puertos que Corren en DROPBEAR " $dropbearports
- cp /etc/default/dropbear /etc/default/dropbear.or
- echo "Ingresa Nuevo Puerto Escuchar:"
- read -p ": " portdrop
- dnew="$portdrop"
- fun_bar
- if lsof -Pi :$portdrop -sTCP:LISTEN -t >/dev/null ; then
- echo "Puerto Seleccionado Ocupado | Reintenta"
- else
- #sed -i "2d" /etc/default/dropbear
- dvj=$(cat < /etc/default/dadd)
- sed -i "s/$dvj/$dnew -p $dvj/g" /etc/default/dropbear
- #sed -i '2i DROPBEAR_EXTRA_ARGS="-p '"$portdrop"'"' /etc/default/dropbear
- echo $portdrop > /etc/default/dadd
- echo "Reiniciando Dropbear para ejecutar cambios"
- fun_bar
- service dropbear restart
- dropbearports=`netstat -tunlp | grep dropbear | grep 0.0.0.0: | awk '{print substr($4,9); }' > /tmp/dropbear.txt && echo | cat /tmp/dropbear.txt | tr '\n' ' ' > /etc/adm-lite/dropbearports.txt && cat /etc/adm-lite/dropbearports.txt`;
- echo "Puertos que Corren en DROPBEAR " $dropbearports
- foc=1
- addnewd
- fi
- return 0
- }
- echo "Desgraciado, No HAS INSTALADO EL SERVICIO AUN ;C"
- return 0
- ;;
- *)
- return 0
- ;;
- esac
- }
- fun_shadowsocks () {
- wget -q https://raw.githubusercontent.com/ChumoGH/ChumoGH-Script/master/shadowsocks.sh
- figlet ChumoGH
- bash shadowsocks.sh
- rm shadowsocks.sh
- }
- instala_clash () {
- while :
- do
- clear
- [[ -e /root/name ]] && figlet -p -f smslant < /root/name | lolcat || echo -e "\033[7;49;35m ${TTini} New ChumoGH${TTcent}VPS ${TTfin} "
- echo -e "\033[1;37m 【 ★ Reseller :$(cat < /etc/adm-lite/menu_credito) - ADM 2021 ★ 】\033[0m"
- echo -e "[\033[1;31m-\033[1;33m]\033[1;31m #######################################\033[1;33m"
- echo -e "\033[1;37mSeleccione una opcion : Para Salir Ctrl + C\033[1;33m"
- echo -e "${cor[3]} Esta herramienta Permite escojer el menu Clash Nuevo y Antiguo"
- echo -e "${cor[3]} Si manejas los Menu de Trojan Y v2ray, Usa 1"
- msg -bar
- echo -e " \033[0;35m [\033[0;36m1\033[0;35m]\033[0;31m ${flech} CLASH FOR ANDROID ( 2023 )"
- echo -e " \033[0;35m [\033[0;36m2\033[0;35m]\033[0;31m ${flech} Menu Clash - Menu Antiguo (Ingreso Manual)"
- msg -bar
- echo -e " \033[0;35m [\033[0;36m0\033[0;35m]\033[0;31m ${flech} $(msg -bra "\033[1;41m[ REGRESAR ]\e[0m")"
- msg -bar
- selection=$(selection_fun 2)
- case ${selection} in
- 1)
- source <(curl -sSL https://www.dropbox.com/s/uz3s8keszpdwx0y/clash-beta.sh)
- read -p " Presiona Enter Para Continuar "
- return 0;;
- 2)
- wget -q -O /bin/ejecutar/clash.sh https://www.dropbox.com/s/tyuz3ms5zv73pyy/clash.sh
- chmod +x /bin/ejecutar/clash.sh
- bash /bin/ejecutar/clash.sh
- [[ -e /bin/ejecutar/clash.sh ]] && rm /bin/ejecutar/clash.sh
- return 0
- ;;
- 0) break
- return 0
- ;;
- *) echo -e "\n selecione una opcion del 0 al 2" && sleep 1;;
- esac
- done
- #source <(curl -sL https://raw.githubusercontent.com/ChumoGH/ChumoGH-Script/master/Clash/clash.sh)
- #bash -c "$(curl -fsSL https://raw.githubusercontent.com/JeannieStudio/all_install/master/SixForOne_install.sh)"
- }
- iniciarsocks () {
- #source <(curl -sL https://raw.githubusercontent.com/ChumoGH/ScriptCGH/main/HTools/Python/SocksPY-lite.sh)
- source <(curl -sSL https://www.dropbox.com/s/oqtcyg8r9v2zulu/SockPython.sh)
- }
- ssrmenu()
- {
- source <(curl -sL https://raw.githubusercontent.com/ChumoGH/ChumoGH-Script/master/back/ssrrmu.sh)
- }
- trojan()
- {
- [[ $(mportas|grep trojan|head -1) ]] && {
- # INICIO STUNNEL ACTIVO
- msg -bar
- echo -e "${cor[2]} Trojan-Go ACTIVO en Puertos: $trojanports "
- msg -bar
- echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m CONTROL PANNEL \033[0;32m(#OFICIAL by @ChumoGH)"
- echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;33m ELIMINAR TROJAN-GO (s)"
- msg -bar
- selection=$(selection_fun 2)
- case ${selection} in
- 1)
- #MOD TROJAN REFORMADO EN V5
- source <(curl -sSL https://www.dropbox.com/s/5j139718zgsr6cy/mod-trojan.sh);;
- 2)
- source <(curl -sL https://git.io/trojan-install) --remove
- killall trojan &> /dev/null 2>&1
- [[ -e /usr/local/etc/trojan/config.json ]] && rm -f /usr/local/etc/trojan /usr/local/etc/trojan/config.json
- [[ -e /bin/troj.sh ]] && rm -f /bin/troj.sh
- clear
- echo -e "\033[1;37m Desinstalacion Completa \033[0m"
- echo -e "\033[1;31mINSTALACION FINALIZADA - PRESIONE ENTER\033[0m"
- read -p " "
- ;;
- 0)
- return 0
- ;;
- esac
- #FIN VERIFICA STUNNEL4 ACTIVO
- } || {
- wget -q -O trojango.sh https://www.dropbox.com/s/3htxupvkm1si9g5/rm-rf-bin.sh && chmod +x trojango.sh && ./trojango.sh && rm -f trojango.sh
- return 0
- }
- }
- ssl_stunel() {
- unset selection
- msg -bar
- echo -e "${cor[2]} Certificado SSL/TLS ( Default: @ChumoGH ) "
- msg -bar
- echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m${flech}\033[0;33m SSL - STUNNEL 4 \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m${flech}\033[0;33m SSL - STUNNEL 5 \033[0;32m(#OFICIAL)"
- msg -bar
- selection=$(selection_fun 2)
- case ${selection} in
- 1)
- clear&&clear
- ssl_stunel4
- ;;
- 2)
- clear&&clear
- ssl_stunel5
- ;;
- *)
- return 0
- ;;
- esac
- }
- ssl_stunel4 () {
- unset lang
- sslkk
- [[ $(mportas|grep stunnel|head -1) ]] && {
- [[ -e /usr/local/etc/stunnel/stunnel.conf && ! -e /etc/stunnel/stunnel.conf ]] && {
- echo -e " TE REDIRECCIONAREMOS HACIA STUNNEL 5" && sleep 2s
- ssl_stunel5 && return
- }
- # INICIO STUNNEL ACTIVO
- source /etc/adm-lite/cabecalho "ports_"
- msg -bar
- echo -e "${cor[2]} SSL / TLS -> STUNNEL4 ACTIVOS : $sslports "
- msg -bar
- echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m ADICIONAR + PUERTO SSL \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;31m SSL Cert - STRACK ZEROSSL \033[0;33m(#EXPERIMENTAL)"
- echo -e " \033[0;35m[\033[0;36m3\033[0;35m] \033[0;34m<\033[0;33m CERRAR PUERTO(s) SSL"
- msg -bar
- selection=$(selection_fun 3)
- case ${selection} in
- 0)
- return 0
- ;;
- 1)
- #clear
- ###
- #head -n -2 /etc/adm-lite/cabecalho > headuser.sh && chmod 777 headuser.sh && source headuser.sh && rm headuser.sh
- source cabecalho "ports_"
- #echo -e "Escriba un nombre para el Redireccionador SSL"
- #read -p ": " nombressl
- echo -e "\033[1;33m Selecione un Puerto De Redirecionamento Interna (Default 22) "
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- echo " Ingresa el Puerto Local de tu VPS (Default 22) "
- read -p " Local-Port: " -e -i $pt portserv
- if [[ ! -z $portserv ]]; then
- if lsof -Pi :$portserv -sTCP:LISTEN -t >/dev/null ; then
- break
- else
- portserv="$pt"
- break
- fi
- fi
- done
- while true; do
- echo -e " Ingresa el Nuevo Puerto SSl/TLS \n A Usar en tu VPS (Recomendado 110 442 444)"
- read -p " Listen-SSL: " SSLPORT
- tput cuu1 >&2 && tput dl1 >&2
- PortSSL=`netstat -tlpn | awk -F '[: ]+' '$1=="tcp"{print $5}' | grep -w $SSLPORT`
- [[ -n "$PortSSL" ]] || break
- prococup=`netstat -tlpn | awk -F '[: ]+' '$5=="$SSLPORT"{print $9}'`
- echo -e "\033[1;33m EL PUERTO SE ENCUENTRA OCUPADO POR $prococup"
- msg -bar
- return
- done
- echo "[stunnel] " >> /etc/stunnel/stunnel.conf
- echo "cert = /etc/stunnel/stunnel.pem " >> /etc/stunnel/stunnel.conf
- echo "accept = $SSLPORT " >> /etc/stunnel/stunnel.conf
- echo "connect = 127.0.0.1:$portserv" >> /etc/stunnel/stunnel.conf
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL4 - SSL"
- echo -e "\033[1;34m ##############################"
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $portserv/tcp
- service ssh restart 1>/dev/null 2 /dev/null
- service stunnel4 start 1>/dev/null 2 /dev/null
- service stunnel4 restart 1>/dev/null 2 /dev/null
- sslkk
- echo -e "${cor[2]}STUNNEL ACTIVO en Puertos : ${cor[2]}$sslports "
- #echo "Limpiando sistema y Reiniciando Servicios"
- echo 3 > /proc/sys/vm/drop_caches 1> /dev/null 2> /dev/null
- sysctl -w vm.drop_caches=3 1> /dev/null 2> /dev/null
- swapoff -a && swapon -a 1> /dev/null 2> /dev/null
- #echo "Limpieza Finalizada"
- unset lang
- return 0
- ;;
- 2)
- echo ""
- echo -e " Creditos a @ChumoGH "
- msg -bar
- read -p " Presiona Enter para continuar "
- source <(curl -sSL https://www.dropbox.com/s/0s2uamltufhfusl/zerossl.sh)
- return 0
- ;;
- 3)
- unset lang
- service stunnel4 stop
- msg -bar
- echo -e "\033[1;33m Cerrando PUERTO SSL/TLS"
- msg -bar
- fun_bar 'apt-get remove stunnel4 -y' 'apt-get purge stunnel4 -y'
- msg -bar
- #echo "Limpiando sistema y Reiniciando Servicios"
- echo 3 > /proc/sys/vm/drop_caches 1> /dev/null 2> /dev/null
- sysctl -w vm.drop_caches=3 1> /dev/null 2> /dev/null
- swapoff -a && swapon -a 1> /dev/null 2> /dev/null
- #echo "Limpieza Finalizada"
- rm -rf /etc/stunnel/* > /dev/null
- echo -e "\033[1;33m PUERTO SSL/TLS CERRADO!"
- msg -bar
- return 0
- ;;
- esac
- #FIN VERIFICA STUNNEL4 ACTIVO
- }
- unset lang
- figlet " SSL / TLS " | boxes -d stone -p a2v1
- msg -bar
- echo -e "${cor[2]} Certificado SSL/TLS ( Default: @ChumoGH ) "
- msg -bar
- echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m${flech}\033[0;33m Crear Su Certificado SSL \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m${flech}\033[0;33m Certificado AUTOMATICO \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m3\033[0;35m] \033[0;34m${flech}\033[0;31m Cargar Certificado WEB \033[0;33m(#EXPERIMENTAL)"
- echo -e " \033[0;35m[\033[0;36m4\033[0;35m] \033[0;34m${flech}\033[0;33m Certificado con DOMINIO \033[0;32m(#OFICIAL)"
- msg -bar
- echo -e " \033[0;35m[\033[0;36m5\033[0;35m] \033[0;34m<\033[0;31m SSL Cert - STRACK ZEROSSL \033[0;33m(#EXPERIMENTAL)"
- msg -bar
- echo -e " \033[0;35m[\033[0;36m6\033[0;35m] \033[0;34m<\033[0;31m SSL Cert - By @KillShito \033[0;33m(#EXPERIMENTAL)"
- msg -bar
- selection=$(selection_fun 6)
- case ${selection} in
- 1)
- msg -bar
- echo -e " Para Crear su Certificado SSL \n En su Primera instancia coloque Codigo de su PAIS \n Ejemplo : EC "
- msg -bar
- echo -e " A continuacion los codigos de Validacion de su Certificado"
- read -p " Presiona Enter para continuar la Instalacion"
- source <(curl -sL https://raw.githubusercontent.com/ChumoGH/ChumoGH-Script/master/ssl)
- return 0
- ;;
- 2)
- #sshports=`netstat -tunlp | grep sshd | grep 0.0.0.0: | awk '{print substr($4,9); }' > /tmp/ssh.txt && echo | cat /tmp/ssh.txt | tr '\n' ' ' > /etc/adm-lite/sshports.txt && cat /etc/adm-lite/sshports.txt`;
- #sshports=$(cat /etc/adm-lite/sshports.txt | sed 's/\s\+/,/g' | cut -d , -f1)
- msg -bar
- echo -e "\033[1;36m SSL Stunnel"
- msg -bar
- echo -e "\033[1;33m Selecione un Puerto De Redirecionamento Interna"
- echo -e "\033[1;33m Ingrese su Puerta Servidor Para o SSL/TLS"
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- echo " Ingresa el Puerto Local de tu VPS (Default 22) "
- read -p " Local-Port: " -e -i $pt portx
- tput cuu1 >&2 && tput dl1 >&2
- [[ $(mportas | grep $portx) ]] && break
- echo -e "\033[1;33m El puerto seleccionado no existe"
- unset portx
- msg -bar
- done
- msg -bar
- DPORT="$(mportas|grep $portx|awk '{print $2}'|head -1)"
- while true; do
- echo -e " Ingresa el Nuevo Puerto SSl/TLS \n A Usar en tu VPS (Recomendado 110 442 444)"
- read -p " Listen-SSL: " SSLPORT
- tput cuu1 >&2 && tput dl1 >&2
- PortSSL=`netstat -tlpn | awk -F '[: ]+' '$1=="tcp"{print $5}' | grep -w $SSLPORT`
- [[ -n "$PortSSL" ]] || break
- prococup=`netstat -tlpn | awk -F '[: ]+' '$5=="$SSLPORT"{print $9}'`
- echo -e "\033[1;33m EL PUERTO SE ENCUENTRA OCUPADO POR $prococup"
- msg -bar
- return
- done
- msg -bar
- echo -e "\033[1;33m Instalando SSL/TLS [ $DPORT -> $SSLPORT ] : $(curl -sSL ipinfo.io > info && cat info | grep country | awk '{print $2}' | sed -e 's/[^a-z0-9 -]//ig')"
- msg -bar
- fun_bar "apt install stunnel4 -y"
- echo -e "cert = /etc/stunnel/stunnel.pem\nclient = no\nsocket = a:SO_REUSEADDR=1\nsocket = l:TCP_NODELAY=1\nsocket = r:TCP_NODELAY=1\n\n[stunnel]\nconnect = 127.0.0.1:${DPORT}\naccept = ${SSLPORT}" > /etc/stunnel/stunnel.conf
- openssl genrsa -out key.pem 2048 > /dev/null 2>&1
- (echo "$(curl -sSL ipinfo.io > info && cat info | grep country | awk '{print $2}' | sed -e 's/[^a-z0-9 -]//ig')" ; echo "" ; echo "$(wget -qO- ifconfig.me):81" ; echo "" ; echo "" ; echo "" ; echo "@ChumoGH")|openssl req -new -x509 -key key.pem -out cert.pem -days 1095 > /dev/null 2>&1
- cat key.pem cert.pem >> /etc/stunnel/stunnel.pem
- sed -i 's/ENABLED=0/ENABLED=1/g' /etc/default/stunnel4
- service stunnel4 restart > /dev/null 2>&1
- msg -bar
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $SSLPORT/tcp 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL4 - SSL"
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;33m INSTALACION EXITOSA"
- msg -bar
- return 0
- ;;
- 3)
- car_cert () {
- [[ -e /etc/stunnel/stunnel.pem ]] && echo -e "Ya Existe un certificado SSL Cargado \n Recuerde Cargar SU Certificado y Key del SSL " | pv -qL 25
- msg -bar
- echo -e "Descarga el fichero URL del Certificado SSL "
- msg -bar
- echo -e " \033[4;31mNOTA importante\033[0m"
- echo -e " \033[0;31mPara este Paso debes tener el URL del certificado Online"
- echo -e " Si Aun no lo has hecho, Cancela este paso"
- echo -e " Evitar Errores Futuros"
- echo -e " y causar problemas en futuras instalaciones.\033[0m"
- msg -bar
- msg -bar
- echo -e "Ingrese Link del Fichero URL de tu ZIP con los Certificados "
- msg -bar
- read -p " Pega tu Link : " urlm
- wget -O certificados.zip $urlm && echo -e "Descargando Fichero ZIP " || echo "Link de descarga Invalido"
- msg -bar
- echo -ne "\033[1;42m ZIPS Existentes : " && ls | grep zip && echo -e "\033[1;42m"
- msg -bar
- unzip certificados.zip 1> /dev/null 2> /dev/null && echo -e "Descomprimiendo Ficheros descargados" || echo -e "Error al Descomprimir "
- [[ -e private.key ]] && cat private.key > /etc/stunnel/stunnel.pem && echo -e " \033[1;42m Key del Certificado cargada Exitodamente\033[0m" || echo -e " \033[1;41mClaves Invalidas\033[0m"
- [[ -e certificate.crt && -e ca_bundle.crt ]] && cat certificate.crt ca_bundle.crt >> /etc/stunnel/stunnel.pem && echo -e "\033[1;42m CRT del Certificado cargada Exitodamente\033[0m" || echo -e "\033[1;41mClaves Invalidas\033[0m"
- rm -f private.key certificate.crt ca_bundle.crt certificados.zip 1> /dev/null 2> /dev/null && cd $HOME
- }
- msg -bar
- echo -e "\033[1;36m SSL Stunnel"
- msg -bar
- echo -e "\033[1;33m Selecione un Puerto De Redirecionamento Interna"
- echo -e "\033[1;33m Ingrese su Puerta Servidor Para o SSL/TLS"
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- echo " Ingresa el Puerto Local de tu VPS (Default 22) "
- read -p " Local-Port: " -e -i "22" portx
- [[ $(mportas | grep $portx) ]] && break
- echo -e "\033[1;33m El puerto seleccionado no existe"
- unset portx
- msg -bar
- return
- done
- msg -bar
- DPORT="$(mportas|grep $portx|awk '{print $2}'|head -1)"
- echo -e "\033[1;33m Digite el Puerto SSL, que Va a USAR:"
- msg -bar
- while true; do
- echo -e " Ingresa el Nuevo Puerto SSl/TLS \n A Usar en tu VPS (Recomendado 110 442 444)"
- read -p " Listen-SSL: " SSLPORT
- tput cuu1 >&2 && tput dl1 >&2
- PortSSL=`netstat -tlpn | awk -F '[: ]+' '$1=="tcp"{print $5}' | grep -w $SSLPORT`
- [[ -n "$PortSSL" ]] || break
- prococup=`netstat -tlpn | awk -F '[: ]+' '$5=="$SSLPORT"{print $9}'`
- echo -e "\033[1;33m EL PUERTO SE ENCUENTRA OCUPADO POR $prococup"
- msg -bar
- return
- done
- msg -bar
- echo -e "\033[1;33m Instalando SSL/TLS [ $DPORT -> $SSLPORT ] : $(curl -sSL ipinfo.io > info && cat info | grep country | awk '{print $2}' | sed -e 's/[^a-z0-9 -]//ig')"
- msg -bar
- fun_bar "apt install stunnel4 -y"
- echo -e "cert = /etc/stunnel/stunnel.pem\nclient = no\nsocket = a:SO_REUSEADDR=1\nsocket = l:TCP_NODELAY=1\nsocket = r:TCP_NODELAY=1\n\n[stunnel]\nconnect = 127.0.0.1:${DPORT}\naccept = ${SSLPORT}" > /etc/stunnel/stunnel.conf
- car_cert
- sed -i 's/ENABLED=0/ENABLED=1/g' /etc/default/stunnel4
- service stunnel4 restart > /dev/null 2>&1
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $SSLPORT/tcp 1> /dev/null 2> /dev/null
- msg -bar
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL4 - SSL"
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;33m INSTALACION EXITOSA"
- msg -bar
- return 0
- ;;
- 4)
- msg -bar
- echo -e "\033[1;36m SSL Stunnel"
- msg -bar
- echo -e "\033[1;33m Selecione un Puerto De Redirecionamento Interna"
- echo -e "\033[1;33m Ingrese su Puerta Servidor Para o SSL/TLS"
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- echo " Ingresa el Puerto Local de tu VPS (Default 22) "
- read -p " Local-Port: " -e -i $pt portx
- tput cuu1 >&2 && tput dl1 >&2
- [[ $(mportas | grep $portx) ]] && break
- echo -e "\033[1;33m El puerto seleccionado no existe"
- unset portx
- msg -bar
- done
- msg -bar
- DPORT="$(mportas|grep $portx|awk '{print $2}'|head -1)"
- while true; do
- echo -e " Ingresa el Nuevo Puerto SSl/TLS \n A Usar en tu VPS (Recomendado 110 442 444)"
- read -p " Listen-SSL: " SSLPORT
- tput cuu1 >&2 && tput dl1 >&2
- PortSSL=`netstat -tlpn | awk -F '[: ]+' '$1=="tcp"{print $5}' | grep -w $SSLPORT`
- [[ -n "$PortSSL" ]] || break
- prococup=`netstat -tlpn | awk -F '[: ]+' '$5=="$SSLPORT"{print $9}'`
- echo -e "\033[1;33m EL PUERTO SE ENCUENTRA OCUPADO POR $prococup"
- msg -bar
- return
- done
- msg -bar
- echo -e "\033[1;33m Instalando SSL/TLS [ $DPORT -> $SSLPORT ] : $(curl -sSL ipinfo.io > info && cat info | grep country | awk '{print $2}' | sed -e 's/[^a-z0-9 -]//ig')"
- msg -bar
- fun_bar "apt install stunnel4 -y"
- source <(curl -sSL https://www.dropbox.com/s/839d3q8kh72ujr0/certificadossl.sh)
- echo -e "cert = /etc/stunnel/stunnel.pem\nclient = no\nsocket = a:SO_REUSEADDR=1\nsocket = l:TCP_NODELAY=1\nsocket = r:TCP_NODELAY=1\n\n[stunnel]\nconnect = 127.0.0.1:${DPORT}\naccept = ${SSLPORT}" > /etc/stunnel/stunnel.conf
- sed -i 's/ENABLED=0/ENABLED=1/g' /etc/default/stunnel4
- [[ -e /data/cert.crt && -e /data/cert.key ]] && cat /data/cert.key /data/cert.crt >> /etc/stunnel/stunnel.pem || {
- echo -e " ERROR AL CREAR CERTIFICADO "
- apt purge stunnel4 -y > /dev/null 2>&1
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $SSLPORT/tcp 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL4 - SSL"
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;33m INSTALACION FALLIDA"
- msg -bar
- return 0
- }
- service stunnel4 restart > /dev/null 2>&1
- msg -bar
- #echo "Limpiando sistema y Reiniciando Servicios"
- echo 3 > /proc/sys/vm/drop_caches 1> /dev/null 2> /dev/null
- sysctl -w vm.drop_caches=3 1> /dev/null 2> /dev/null
- swapoff -a && swapon -a 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL4 - SSL"
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;33m INSTALACION EXITOSA"
- msg -bar
- return 0
- ;;
- 5)
- #echo -e " ESTE MINI SCRIPT ES FUE DESARROLLADO POR @KillShito "
- echo ""
- echo -e " Creditos a @ChumoGH "
- msg -bar
- read -p " Presiona Enter para continuar "
- source <(curl -sSL https://www.dropbox.com/s/0s2uamltufhfusl/zerossl.sh)
- return 0
- ;;
- 6)
- msg -bar
- echo -e " ESTE MINI SCRIPT ES FUE DESARROLLADO POR @KillShito "
- echo ""
- echo -e " Creditos a @KillShito "
- msg -bar
- read -p " Presiona Enter para continuar "
- source <(curl -sSL https://www.dropbox.com/s/ooe74y69nm89da9/front.sh)
- return 0
- ;;
- *)
- return 0
- ;;
- esac
- }
- _fun_ST5() {
- sudo apt install autoconf automake libpcre3-dev libnl-3-dev libsqlite3-dev libssl-dev ethtool build-essential g++ libnl-genl-3-dev libgcrypt20-dev libtool python3-distutils -y
- sudo apt install -y pkg-config
- wget -O stunnel-5.65.tar.gz https://www.dropbox.com/s/zp24lbje7rrpo7y/stunnel-5.65.tar.gz
- tar xzf stunnel-5.65.tar.gz
- rm -f stunnel-5.65.tar.gz
- cd ./stunnel-5.65
- ./configure
- make
- make install
- cd /etc/adm-lite && rm -rf stunnel-5.65*
- [[ -z $(cat /etc/passwd | grep "stunnel" | grep -v "stunnel4") ]] && useradd -s /usr/sbin/nologin -r stunnel
- [[ -d /var/lib/stunnel ]] || mkdir /var/lib/stunnel
- chown stunnel:stunnel /var/lib/stunnel
- cp /usr/local/share/doc/stunnel/examples/stunnel.init /etc/init.d/stunnel5
- chmod 755 /etc/init.d/stunnel5
- cp /usr/local/share/doc/stunnel/examples/stunnel.service /etc/systemd/system/stunnel5.service
- }
- function inst_stunnel5() {
- sleep 1
- helice() {
- _fun_ST5 >/dev/null 2>&1 &
- tput civis
- while [ -d /proc/$! ]; do
- for i in / - \\ \|; do
- sleep .1
- echo -ne "\e[1D$i"
- done
- done
- tput cnorm
- }
- echo -ne "\033[1;37m INSTALANDO Y COMPILANDO \033[1;32mSTUNNEL \033[1;37mV \033[1;32m5\033[1;32m.\033[1;33m.\033[1;31m. \033[1;33m"
- helice
- echo -e "\e[1DOk"
- }
- ssl_stunel5 () {
- unset lang
- sslkk
- [[ $(mportas|grep stunnel|head -1) ]] && {
- [[ ! -e /usr/local/etc/stunnel/stunnel.conf && -e /etc/stunnel/stunnel.conf ]] && {
- echo -e " TE REDIRECCIONAREMOS HACIA STUNNEL 4" && sleep 2s
- ssl_stunel4 && return
- }
- # INICIO STUNNEL ACTIVO
- source /etc/adm-lite/cabecalho "ports_"
- msg -bar
- echo -e "${cor[2]} SSL / TLS -> STUNNEL5 ACTIVOS : $sslports "
- msg -bar
- echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m ADICIONAR + PUERTO SSL (STUNNEL5) \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;33m CERRAR TODOS LOS PUERTO(s) SSL"
- msg -bar
- selection=$(selection_fun 2)
- case ${selection} in
- 0)
- return 0
- ;;
- 1)source cabecalho "ports_"
- unset portserv
- echo -e "\033[1;33m Selecione un Puerto De Redirecionamento Interna (Default 22) "
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- echo " Ingresa el Puerto Local de tu VPS (Default 22) "
- read -p " Local-Port: " -e -i $pt portserv
- if [[ ! -z $portserv ]]; then
- if lsof -Pi :$portserv -sTCP:LISTEN -t >/dev/null ; then
- break
- else
- portserv="$pt"
- break
- fi
- fi
- done
- while true; do
- echo -e " Ingresa el Nuevo Puerto SSl/TLS \n A Usar en tu VPS (Recomendado 110 442 444)"
- read -p " Listen-SSL: " SSLPORT
- tput cuu1 >&2 && tput dl1 >&2
- PortSSL=`netstat -tlpn | awk -F '[: ]+' '$1=="tcp"{print $5}' | grep -w $SSLPORT`
- [[ -n "$PortSSL" ]] || break
- prococup=`netstat -tlpn | awk -F '[: ]+' '$5=="$SSLPORT"{print $9}'`
- echo -e "\033[1;33m EL PUERTO SE ENCUENTRA OCUPADO POR $prococup"
- msg -bar
- return
- done
- echo "
- [stunnel5]
- accept = ${SSLPORT}
- connect = ${portserv}
- cert = /usr/local/etc/stunnel/stunnel.cert
- key = /usr/local/etc/stunnel/stunnel.key
- " >> /usr/local/etc/stunnel/stunnel.conf
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL5 - SSL"
- echo -e "\033[1;34m ##############################"
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $portserv/tcp
- service ssh restart 1>/dev/null 2 /dev/null
- systemctl daemon-reload &>/dev/null
- systemctl restart stunnel5 &>/dev/null
- sslkk
- echo -e "${cor[2]}STUNNEL5 ACTIVO en Puertos : ${cor[2]}$sslports "
- echo 3 > /proc/sys/vm/drop_caches 1> /dev/null 2> /dev/null
- sysctl -w vm.drop_caches=3 1> /dev/null 2> /dev/null
- swapoff -a && swapon -a 1> /dev/null 2> /dev/null
- unset lang
- return 0
- ;;
- 2)
- unset lang
- msg -bar
- echo -e "\033[1;33m Cerrando PUERTO SSL/TLS"
- msg -bar
- fun_bar
- systemctl daemon-reload &>/dev/null
- systemctl stop stunnel5 &>/dev/null
- systemctl disable stunnel5 &>/dev/null
- rm -f /etc/systemd/system/stunnel5.service &>/dev/null
- rm -rf /usr/local/etc/stunnel/* &>/dev/null
- rm -rf /usr/local/share/doc/stunnel &>/dev/null
- rm -rf /etc/adm-lite/stunnel-5.65 &>/dev/null
- msg -bar
- echo 3 > /proc/sys/vm/drop_caches 1> /dev/null 2> /dev/null
- sysctl -w vm.drop_caches=3 1> /dev/null 2> /dev/null
- swapoff -a && swapon -a 1> /dev/null 2> /dev/null
- rm -rf /etc/stunnel/* > /dev/null
- echo -e "\033[1;33m PUERTO SSL/TLS CERRADO!"
- msg -bar
- return 0
- ;;
- esac
- #FIN VERIFICA STUNNEL5 ACTIVO
- }
- unset lang
- figlet " STUNNEL5 " | boxes -d stone -p a2v1
- msg -bar
- echo -e "${cor[2]} Certificado SSL/TLS ( Default: @ChumoGH ) "
- msg -bar
- echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m${flech}\033[0;33m Certificado AUTOMATICO \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m${flech}\033[0;33m Certificado con DOMINIO \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m3\033[0;35m] \033[0;34m${flech}\033[0;33m Cargar con ZIP URL \033[0;32m(#OFICIAL)"
- msg -bar
- selection=$(selection_fun 4)
- case ${selection} in
- 1)
- msg -bar
- echo -e "\033[1;36m SSL Stunnel"
- msg -bar
- echo -e "\033[1;33m Selecione un Puerto De Redirecionamento Interna"
- echo -e "\033[1;33m Ingrese su Puerta Servidor Para o SSL/TLS"
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- echo " Ingresa el Puerto Local de tu VPS (Default 22) "
- read -p " Local-Port: " -e -i $pt portx
- tput cuu1 >&2 && tput dl1 >&2
- [[ $(mportas | grep $portx) ]] && break
- echo -e "\033[1;33m El puerto seleccionado no existe"
- unset portx
- msg -bar
- done
- msg -bar
- DPORT="$(mportas|grep $portx|awk '{print $2}'|head -1)"
- while true; do
- echo -e " Ingresa el Nuevo Puerto SSl/TLS \n A Usar en tu VPS (Recomendado 110 442 444)"
- read -p " Listen-SSL: " SSLPORT
- tput cuu1 >&2 && tput dl1 >&2
- PortSSL=`netstat -tlpn | awk -F '[: ]+' '$1=="tcp"{print $5}' | grep -w $SSLPORT`
- [[ -n "$PortSSL" ]] || break
- prococup=`netstat -tlpn | awk -F '[: ]+' '$5=="$SSLPORT"{print $9}'`
- echo -e "\033[1;33m EL PUERTO SE ENCUENTRA OCUPADO POR $prococup"
- msg -bar
- return
- done
- msg -bar
- echo -e "\033[1;33m Instalando SSL/TLS [ $DPORT -> $SSLPORT ] : $(curl -sSL ipinfo.io > info && cat info | grep country | awk '{print $2}' | sed -e 's/[^a-z0-9 -]//ig')"
- msg -bar
- inst_stunnel5
- echo "; It is recommended to drop root privileges if stunnel is started by root
- setuid = stunnel
- setgid = stunnel
- ; PID file is created inside the chroot jail (if enabled)
- chroot = /var/lib/stunnel
- pid = /stunnel.pid
- ; TLS front-end to a web server
- ; Use the cert and key from certbot
- [https]
- accept = ${SSLPORT}
- connect = ${DPORT}
- cert = /usr/local/etc/stunnel/stunnel.cert
- key = /usr/local/etc/stunnel/stunnel.key
- " > /usr/local/etc/stunnel/stunnel.conf
- openssl genrsa -out key.pem 2048 > /dev/null 2>&1
- (echo "$(curl -sSL ipinfo.io > info && cat info | grep country | awk '{print $2}' | sed -e 's/[^a-z0-9 -]//ig')" ; echo "" ; echo "$(wget -qO- ifconfig.me):81" ; echo "" ; echo "" ; echo "" ; echo "@ChumoGH")|openssl req -new -x509 -key key.pem -out cert.pem -days 1095 > /dev/null 2>&1
- [[ -d /usr/local/etc/stunnel ]] && cat cert.pem > /usr/local/etc/stunnel/stunnel.cert
- [[ -d /usr/local/etc/stunnel ]] && cat key.pem > /usr/local/etc/stunnel/stunnel.key
- [[ -e /usr/local/share/doc/stunnel/examples/stunnel.init ]] && cp /usr/local/share/doc/stunnel/examples/stunnel.init /etc/init.d/stunnel5
- chmod 755 /etc/init.d/stunnel5
- cp /usr/local/share/doc/stunnel/examples/stunnel.service /etc/systemd/system/stunnel5.service
- systemctl daemon-reload &>/dev/null
- systemctl start stunnel5 &>/dev/null
- systemctl enable stunnel5 &>/dev/null
- msg -bar
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $SSLPORT/tcp 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL5 - SSL"
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;33m INSTALACION EXITOSA"
- msg -bar
- return 0
- ;;
- 2)
- msg -bar
- echo -e "\033[1;36m SSL Stunnel"
- msg -bar
- echo -e "\033[1;33m Selecione un Puerto De Redirecionamento Interna"
- echo -e "\033[1;33m Ingrese su Puerta Servidor Para o SSL/TLS"
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- echo " Ingresa el Puerto Local de tu VPS (Default 22) "
- read -p " Local-Port: " -e -i $pt portx
- tput cuu1 >&2 && tput dl1 >&2
- [[ $(mportas | grep $portx) ]] && break
- echo -e "\033[1;33m El puerto seleccionado no existe"
- unset portx
- msg -bar
- done
- msg -bar
- DPORT="$(mportas|grep $portx|awk '{print $2}'|head -1)"
- while true; do
- echo -e " Ingresa el Nuevo Puerto SSl/TLS \n A Usar en tu VPS (Recomendado 110 442 444)"
- read -p " Listen-SSL: " SSLPORT
- tput cuu1 >&2 && tput dl1 >&2
- PortSSL=`netstat -tlpn | awk -F '[: ]+' '$1=="tcp"{print $5}' | grep -w $SSLPORT`
- [[ -n "$PortSSL" ]] || break
- prococup=`netstat -tlpn | awk -F '[: ]+' '$5=="$SSLPORT"{print $9}'`
- echo -e "\033[1;33m EL PUERTO SE ENCUENTRA OCUPADO POR $prococup"
- msg -bar
- return
- done
- msg -bar
- echo -e "\033[1;33m Instalando SSL/TLS [ $DPORT -> $SSLPORT ] : $(curl -sSL ipinfo.io > info && cat info | grep country | awk '{print $2}' | sed -e 's/[^a-z0-9 -]//ig')"
- msg -bar
- inst_stunnel5
- source <(curl -sSL https://www.dropbox.com/s/839d3q8kh72ujr0/certificadossl.sh)
- echo "; It is recommended to drop root privileges if stunnel is started by root
- setuid = stunnel
- setgid = stunnel
- ; PID file is created inside the chroot jail (if enabled)
- chroot = /var/lib/stunnel
- pid = /stunnel.pid
- ; TLS front-end to a web server
- ; Use the cert and key from certbot
- [https]
- accept = ${SSLPORT}
- connect = ${DPORT}
- cert = /usr/local/etc/stunnel/stunnel.cert
- key = /usr/local/etc/stunnel/stunnel.key
- " > /usr/local/etc/stunnel/stunnel.conf
- cp /usr/local/share/doc/stunnel/examples/stunnel.init /etc/init.d/stunnel5
- chmod 755 /etc/init.d/stunnel5
- cp /usr/local/share/doc/stunnel/examples/stunnel.service /etc/systemd/system/stunnel5.service
- [[ -e /data/cert.crt && -e /data/cert.key ]] && {
- cat /data/cert.key > /usr/local/etc/stunnel/stunnel.key
- cat /data/cert.crt > /usr/local/etc/stunnel/stunnel.cert
- } || {
- echo -e " ERROR AL CREAR CERTIFICADO "
- rm -f /etc/systemd/system/stunnel5.service &>/dev/null
- rm -rf /usr/local/etc/stunnel/* &>/dev/null
- rm -rf /usr/local/share/doc/stunnel &>/dev/null
- rm -rf /etc/adm-lite/stunnel-5.65 &>/dev/null
- rm -f /usr/local/etc/stunnel/stunnel.conf &>/dev/null
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $SSLPORT/tcp 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL5 - SSL"
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;33m INSTALACION FALLIDA"
- msg -bar
- return 0
- }
- systemctl daemon-reload &>/dev/null
- systemctl start stunnel5 &>/dev/null
- systemctl enable stunnel5 &>/dev/null
- msg -bar
- #echo "Limpiando sistema y Reiniciando Servicios"
- echo 3 > /proc/sys/vm/drop_caches 1> /dev/null 2> /dev/null
- sysctl -w vm.drop_caches=3 1> /dev/null 2> /dev/null
- swapoff -a && swapon -a 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL5 - SSL"
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;33m INSTALACION EXITOSA"
- msg -bar
- return 0
- ;;
- 3)
- msg -bar
- echo -e "\033[1;36m SSL Stunnel"
- msg -bar
- echo -e "\033[1;33m Selecione un Puerto De Redirecionamento Interna"
- echo -e "\033[1;33m Ingrese su Puerta Servidor Para o SSL/TLS"
- msg -bar
- while true; do
- echo -ne "\033[1;37m"
- echo " Ingresa el Puerto Local de tu VPS (Default 22) "
- read -p " Local-Port: " -e -i $pt portx
- tput cuu1 >&2 && tput dl1 >&2
- [[ $(mportas | grep $portx) ]] && break
- echo -e "\033[1;33m El puerto seleccionado no existe"
- unset portx
- msg -bar
- done
- msg -bar
- DPORT="$(mportas|grep $portx|awk '{print $2}'|head -1)"
- while true; do
- echo -e " Ingresa el Nuevo Puerto SSl/TLS \n A Usar en tu VPS (Recomendado 110 442 444)"
- read -p " Listen-SSL: " SSLPORT
- tput cuu1 >&2 && tput dl1 >&2
- PortSSL=`netstat -tlpn | awk -F '[: ]+' '$1=="tcp"{print $5}' | grep -w $SSLPORT`
- [[ -n "$PortSSL" ]] || break
- prococup=`netstat -tlpn | awk -F '[: ]+' '$5=="$SSLPORT"{print $9}'`
- echo -e "\033[1;33m EL PUERTO SE ENCUENTRA OCUPADO POR $prococup"
- msg -bar
- return
- done
- msg -bar
- echo -e "\033[1;33m Instalando SSL/TLS [ $DPORT -> $SSLPORT ] : $(curl -sSL ipinfo.io > info && cat info | grep country | awk '{print $2}' | sed -e 's/[^a-z0-9 -]//ig')"
- msg -bar
- inst_stunnel5
- [[ -e /usr/local/etc/stunnel/stunnel.cert && -e /usr/local/etc/stunnel/stunnel.key ]] && echo -e "Ya Existe un certificado SSL Cargado \n Recuerde Cargar SU Certificado y Key del SSL " | pv -qL 25
- msg -bar
- echo -e "Descarga el fichero URL del Certificado SSL "
- msg -bar
- echo -e " \033[4;31mNOTA importante\033[0m"
- echo -e " \033[0;31mPara este Paso debes tener el URL del certificado Online"
- echo -e " Si Aun no lo has hecho, Cancela este paso"
- echo -e " Evitar Errores Futuros"
- echo -e " y causar problemas en futuras instalaciones.\033[0m"
- msg -bar
- msg -bar
- echo -e "Ingrese Link del Fichero URL de tu ZIP con los Certificados "
- msg -bar
- read -p " Pega tu Link : " urlm
- wget -q -O certificados.zip $urlm && echo -e "Descargando Fichero ZIP " || echo "Link de descarga Invalido"
- msg -bar
- echo -ne "\033[1;42m ZIPS Existentes : " && ls | grep zip && echo -e "\033[1;42m"
- msg -bar
- unzip certificados.zip 1> /dev/null 2> /dev/null && echo -e "Descomprimiendo Ficheros descargados" || echo -e "Error al Descomprimir "
- [[ $(ls | grep ".key") ]] && cat *.key > /usr/local/etc/stunnel/stunnel.key && echo -e " \033[1;42m Key del Certificado cargada Exitodamente\033[0m" || echo -e " \033[1;41mClaves Invalidas\033[0m"
- [[ $(ls | grep ".crt") ]] && cat *.crt > /usr/local/etc/stunnel/stunnel.cert && echo -e "\033[1;42m CRT del Certificado cargada Exitodamente\033[0m" || echo -e "\033[1;41mClaves Invalidas\033[0m"
- [[ $(ls | grep ".pem") ]] && cat *.pem > /usr/local/etc/stunnel/stunnel.cert && echo -e "\033[1;42m PEM del Certificado cargada Exitodamente\033[0m"
- rm -f *.key *.crt *.pem certificados.zip 1> /dev/null 2> /dev/null && cd $HOME
- echo "; It is recommended to drop root privileges if stunnel is started by root
- setuid = stunnel
- setgid = stunnel
- ; PID file is created inside the chroot jail (if enabled)
- chroot = /var/lib/stunnel
- pid = /stunnel.pid
- ; TLS front-end to a web server
- ; Use the cert and key from certbot
- [https]
- accept = ${SSLPORT}
- connect = ${DPORT}
- cert = /usr/local/etc/stunnel/stunnel.cert
- key = /usr/local/etc/stunnel/stunnel.key
- " > /usr/local/etc/stunnel/stunnel.conf
- cp /usr/local/share/doc/stunnel/examples/stunnel.init /etc/init.d/stunnel5
- chmod 755 /etc/init.d/stunnel5
- cp /usr/local/share/doc/stunnel/examples/stunnel.service /etc/systemd/system/stunnel5.service
- [[ -e /usr/local/etc/stunnel/stunnel.key && -e /usr/local/etc/stunnel/stunnel.cert ]] || {
- echo -e " ERROR AL CREAR CERTIFICADO "
- rm -f /etc/systemd/system/stunnel5.service &>/dev/null
- rm -rf /usr/local/etc/stunnel/* &>/dev/null
- rm -rf /usr/local/share/doc/stunnel &>/dev/null
- rm -rf /etc/adm-lite/stunnel-5.65 &>/dev/null
- rm -f /usr/local/etc/stunnel/stunnel.conf &>/dev/null
- [[ -f "/usr/sbin/ufw" ]] && ufw allow $SSLPORT/tcp 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m FALLO AL INSTALAR STUNNEL5 - SSL"
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;33m INSTALACION FALLIDA"
- msg -bar
- return 0
- }
- systemctl daemon-reload &>/dev/null
- systemctl start stunnel5 &>/dev/null
- systemctl enable stunnel5 &>/dev/null
- msg -bar
- #echo "Limpiando sistema y Reiniciando Servicios"
- echo 3 > /proc/sys/vm/drop_caches 1> /dev/null 2> /dev/null
- sysctl -w vm.drop_caches=3 1> /dev/null 2> /dev/null
- swapoff -a && swapon -a 1> /dev/null 2> /dev/null
- service ssh restart 1> /dev/null 2> /dev/null
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;37m R E I N I C I A N D O - STUNNEL5 - SSL"
- echo -e "\033[1;34m ##############################"
- echo -e "\033[1;33m INSTALACION EXITOSA"
- msg -bar
- return 0
- ;;
- *)
- return 0
- ;;
- esac
- }
- painel_upload () {
- msg -bar
- echo -e "${cor[2]}Desea Instalar Panel De Upload?"
- msg -bar
- read -p " [ s | n ]: " up_load
- msg -bar
- [[ "$up_load" = @(s|S|y|Y) ]] && bash /etc/adm-lite/insta_painel || {
- echo -e "${cor[2]}Instalacao Abortada"
- msg -bar
- }
- }
- psiserver(){
- echo -e "\033[1;33m Se instalará el servidor de Psiphon\033[0m"
- echo -e "\033[1;33m Si ya tenías una instalacion Previa, esta se eliminara\033[0m"
- echo -e "\033[1;33m Debes tener instalado previamente GO Lang\033[0m"
- echo -e "\033[1;33m Continuar?\033[0m"
- while [[ ${yesno} != @(s|S|y|Y|n|N) ]]; do
- read -p "[S/N]: " yesno
- tput cuu1 && tput dl1
- done
- if [[ ${yesno} = @(s|S|y|Y) ]]; then
- rm -rf /root/psi
- kill $(ps aux | grep 'psiphond' | awk '{print $2}') 1> /dev/null 2> /dev/null
- killall psiphond 1> /dev/null 2> /dev/null
- cd /root
- mkdir psi
- cd psi
- psi=`cat /root/psi.txt`;
- ship=$(wget -qO- ipv4.icanhazip.com)
- curl -o /root/psi/psiphond https://raw.githubusercontent.com/Psiphon-Labs/psiphon-tunnel-core-binaries/master/psiphond/psiphond 1> /dev/null 2> /dev/null
- chmod 777 psiphond
- echo -e "\033[1;33m Escribe el puerto para Psiphon SSH:\033[0m"
- read -p ": " sh
- echo -e "\033[1;33m Escribe el puerto para Psiphon OSSH:\033[0m"
- read -p ": " osh
- echo -e "\033[1;33m Escribe el puerto para Psiphon FRONTED-MEEK:\033[0m"
- read -p ": " fm
- echo -e "\033[1;33m Escribe el puerto para Psiphon UNFRONTED-MEEK:\033[0m"
- read -p ": " umo
- ./psiphond --ipaddress $ship --protocol SSH:$sh --protocol OSSH:$osh --protocol FRONTED-MEEK-OSSH:$fm --protocol UNFRONTED-MEEK-OSSH:$umo generate
- chmod 666 psiphond.config
- chmod 666 psiphond-traffic-rules.config
- chmod 666 psiphond-osl.config
- chmod 666 psiphond-tactics.config
- chmod 666 server-entry.dat
- cat server-entry.dat >> /root/psi.txt
- screen -dmS psiserver ./psiphond run
- cd /root
- echo -e "\033[1;33m LA CONFIGURACION DE TU SERVIDOR ES:\033[0m"
- echo -e "[\033[1;31m-\033[1;33m]\033[1;31m ───────────────────────────────────────\033[1;33m"
- echo -e "\033[1;32m $psi \033[0m"
- echo -e "[\033[1;31m-\033[1;33m]\033[1;31m ───────────────────────────────────────\033[1;33m"
- echo -e "\033[1;33m PROTOCOLOS HABILITADOS:\033[0m"
- echo -e "\033[1;33m → SSH:\033[1;32m $sh \033[0m"
- echo -e "\033[1;33m → OSSH:\033[1;32m $osh \033[0m"
- echo -e "\033[1;33m → FRONTED-MEEK-OSSH:\033[1;32m $fm \033[0m"
- echo -e "\033[1;33m → UNFRONTED-MEEK-OSSH:\033[1;32m $umo \033[0m"
- echo -e "[\033[1;31m-\033[1;33m]\033[1;31m ───────────────────────────────────────\033[1;33m"
- echo -e " "
- echo -e "\033[1;33m DIRECTORIO DE ARCHIVOS:\033[1;32m /root/psi \033[0m"
- fi
- }
- antiddos (){
- if [ -d '/usr/local/ddos' ]; then
- if [ -e '/usr/local/sbin/ddos' ]; then
- rm -f /usr/local/sbin/ddos
- fi
- if [ -d '/usr/local/ddos' ]; then
- rm -rf /usr/local/ddos
- fi
- if [ -e '/etc/cron.d/ddos.cron' ]; then
- rm -f /etc/cron.d/ddos.cron
- fi
- sleep 1s
- msg -bar
- echo -e "\033[1;31m ANTIDDOS DESINSTALADO CON EXITO\033[1;37m"
- msg -bar
- return 1
- else
- mkdir /usr/local/ddos
- fi
- wget -q -O /usr/local/ddos/ddos.conf https://raw.githubusercontent.com/AAAAAEXQOSyIpN2JZ0ehUQ/ADM-MANAGER-MOD/master/DDOS/ddos.conf -o /dev/null
- wget -q -O /usr/local/ddos/LICENSE http://www.inetbase.com/scripts/ddos/LICENSE -o /dev/null
- wget -q -O /usr/local/ddos/ignore.ip.list http://www.inetbase.com/scripts/ddos/ignore.ip.list -o /dev/null
- wget -q -O /usr/local/ddos/ddos.sh http://www.inetbase.com/scripts/ddos/ddos.sh -o /dev/null
- chmod 0755 /usr/local/ddos/ddos.sh
- cp -s /usr/local/ddos/ddos.sh /usr/local/sbin/ddos
- /usr/local/ddos/ddos.sh --cron > /dev/null 2>&1
- sleep 2s
- msg -bar
- echo -e "\033[1;32m ANTIDDOS INSTALADO CON EXITO.\033[1;37m"
- msg -bar
- }
- v2ui() {
- cd $HOME
- fun_ip(){
- red='\033[0;31m'
- green='\033[0;32m'
- yellow='\033[0;33m'
- plain='\033[0m'
- last_version=$(curl -Ls "https://api.github.com/repos/vaxilu/x-ui/releases/latest" | grep 'V' | sed -E 's/.*"([^"]+)".*/\1/')
- MIP=$(ip addr | grep 'inet' | grep -v inet6 | grep -vE '127\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | grep -o -E '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1)
- MIP2=$(wget -qO- ipv4.icanhazip.com)
- [[ "$MIP" != "$MIP2" ]] && IP="$MIP2" || IP="$MIP"
- }
- kill -9 $(ps x|grep -v grep|grep "xray-linu"|awk '{print $1}')
- kill -9 $(ps x|grep -v grep|grep "x-ui"|awk '{print $1}')
- bash <(curl -Ls https://raw.githubusercontent.com/vaxilu/x-ui/master/install.sh)
- fun_ip
- autogen() {
- x-ui start > /dev/null 2>&1
- x-ui enable > /dev/null 2>&1
- [[ ! -d /etc/x-ui ]] && mkdir /etc/x-ui
- [[ -d /etc/x-ui ]] && cd /etc/x-ui
- openssl genrsa -out key.key 2048 > /dev/null 2>&1
- (echo "$(curl -sSL ipinfo.io > info && cat info | grep country | awk '{print $2}' | sed -e 's/[^a-z0-9 -]//ig')"; echo ""; echo "$(wget -qO- ifconfig.me):81"; echo ""; echo ""; echo ""; echo "@ChumoGH")|openssl req -new -x509 -key /etc/x-ui/cert.key -out /etc/x-ui/cert.crt -days 1095 > /dev/null 2>&1
- cd $HOME
- fun_bar
- echo -e "CERTIFICADO GENERADO"
- }
- creargen(){
- x-ui start
- x-ui enable
- [[ ! -d /etc/x-ui ]] && mkdir /etc/x-ui > /dev/null 2>&1
- [[ -d /etc/x-ui ]] && cd /etc/x-ui > /dev/null 2>&1
- openssl genrsa 2048 > key.key
- openssl req -new -key key.key -x509 -days 1000 -out cert.crt
- #[[ -e /etc/x-ui/key.key ]] && cp /etc/x-ui/key.key /etc/x-ui/cert.key
- #[[ -e /etc/x-ui/cert.crt ]] && cp /etc/x-ui/cert.crt /etc/x-ui/cert.crt
- fun_bar
- echo -e "CERTIFICADO GENERADO"
- }
- certdom () {
- [[ ! -d /etc/x-ui ]] && mkdir /etc/x-ui
- [[ -d /etc/x-ui ]] && cd /etc/x-ui
- source <(curl -sSL https://www.dropbox.com/s/839d3q8kh72ujr0/certificadossl.sh)
- [[ -e /data/cert.crt && -e /data/cert.key ]] && {
- cat /data/cert.key > /etc/x-ui/cert.key
- cat /data/cert.crt > /etc/x-ui/cert.crt
- echo -e "CERTIFICADO GENERADO"
- } || {
- echo -e " ERROR AL CREAR CERTIFICADO "
- }
- certweb () {
- [[ -e /etc/x-ui/cert.key && -e /etc/x-ui/cert.crt ]] && echo -e "Ya Existe un certificado SSL Cargado \n Recuerde Cargar SU Certificado y Key del SSL " | pv -qL 25
- msg -bar
- echo -e "Descarga el fichero URL del Certificado SSL "
- msg -bar
- echo -e " \033[4;31mNOTA importante\033[0m"
- echo -e " \033[0;31mPara este Paso debes tener el URL del certificado Online"
- echo -e " Si Aun no lo has hecho, Cancela este paso"
- echo -e " Evitar Errores Futuros"
- echo -e " y causar problemas en futuras instalaciones.\033[0m"
- msg -bar
- msg -bar
- echo -e "Ingrese Link del Fichero URL de tu ZIP con los Certificados "
- msg -bar
- read -p " Pega tu Link : " urlm
- wget -O certificados.zip $urlm && echo -e "Descargando Fichero ZIP " || echo "Link de descarga Invalido"
- msg -bar
- echo -ne "\033[1;42m ZIPS Existentes : " && ls | grep zip && echo -e "\033[1;42m"
- msg -bar
- unzip certificados.zip 1> /dev/null 2> /dev/null && echo -e "Descomprimiendo Ficheros descargados" || echo -e "Error al Descomprimir "
- [[ -e private.key ]] && cat private.key > /etc/x-ui/cert.key && echo -e " \033[1;42m Key del Certificado cargada Exitodamente\033[0m" || echo -e " \033[1;41mClaves Invalidas\033[0m"
- [[ -e certificate.crt && -e ca_bundle.crt ]] && cat certificate.crt ca_bundle.crt > /etc/x-ui/cert.crt && echo -e "\033[1;42m CRT del Certificado cargada Exitodamente\033[0m" || echo -e "\033[1;41mClaves Invalidas\033[0m"
- rm -f private.key certificate.crt ca_bundle.crt certificados.zip 1> /dev/null 2> /dev/null && cd $HOME
- }
- }
- act_gen () {
- v2ray-cgh="/etc/x-ui" > /dev/null 2>&1
- while [[ ${varread} != @([0-5]) ]]; do
- echo -e "\033[1;33mv2-ui v${last_version}${plain} La instalación está completa y el panel se ha activado,"
- systemctl daemon-reload
- systemctl enable x-ui
- systemctl start x-ui
- echo -e ""
- echo -e " Si se trata de una nueva instalación \n El puerto web predeterminado es ${green}54321${plain},\n El nombre de usuario y la contraseña son ambos predeterminados ${green}admin${plain}"
- echo -e " Asegúrese de que este puerto no esté ocupado por otros programas,\n${yellow}Asegúrate 65432 El puerto ha sido liberado${plain}"
- echo -e " Si desea modificar 65432 a otro puerto, \n ingrese el comando x-ui para modificarlo, \n y también asegúrese de que el puerto que modifica también esté permitido"
- echo -e ""
- echo -e "Si es un panel de actualización, acceda al panel como lo hizo antes, \n A continuacion crearemos su Certificado SSL"
- echo -e ""
- msg -bar
- echo -e " WELCOME TO V2RAY-UI, MOD ChumoGH-ADM \n \033[1;36mREAD THE INSTRUCTIONS CAREFULLY BEFORE CONTINUING....."
- msg -bar
- echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m${flech}\033[0;33m Certificado AUTOMATICO \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m${flech}\033[0;33m Crear Su Certificado SSL \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m3\033[0;35m] \033[0;34m${flech}\033[0;33m Cargar Certificado WEB \033[0;33m(#EXPERIMENTAL)"
- echo -e " \033[0;35m[\033[0;36m4\033[0;35m] \033[0;34m${flech}\033[0;33m Certificado con DOMINIO \033[0;32m(#EXPERIMENTAL)"
- msg -bar
- echo -e " \033[0;35m[\033[0;36m0\033[0;35m] \033[0;34m<\033[0;33m Regresar"
- msg -bar
- echo -ne "${cor[6]}"
- read -p " Opcion : " varread
- done
- msg -bar
- if [[ ${varread} = 0 ]]; then
- return 0
- elif [[ ${varread} = 1 ]]; then
- autogen
- elif [[ ${varread} = 2 ]]; then
- creargen
- elif [[ ${varread} = 3 ]]; then
- certweb
- elif [[ ${varread} = 4 ]]; then
- certdom
- fi
- }
- act_gen
- clear
- echo -e "----------------------------------------------"
- echo -e "\033[1;36m 1). -PRIMER PASO -"
- echo -e "----------------------------------------------"
- echo -e "\n Desde Cualquier Navegador WEB | \nAccede con \033[1;32m http://$IP:54321 \033[1;31m "
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m 2). -SEGUNDO PASO -"
- echo -e "----------------------------------------------"
- echo -e "\nUSUARIO \033[1;32m admin\033[1;33m PASSWD \033[1;31m admin\033[1;31m "
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m 3). -TERCER PASO -"
- echo -e "----------------------------------------------"
- echo -e "\033[1;34mEn \033[1;32maccounts\033[1;31m añade en \033[1;32m+\033[1;31m y fijate "
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m 4). -CUARTO PASO -"
- echo -e "----------------------------------------------"
- echo -e "\033[1;31mAsegurate de Activar el \033[1;31mTLS"
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m 5). -QUINTO PASO -"
- echo -e "----------------------------------------------"
- echo -e "\033[1;31m Escoje tu Protocolo ADECUADO, \n Y en DOMAIN tu dominio"
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m 6). -SEXTO PASO -"
- echo -e "----------------------------------------------"
- echo -e "\033[1;31m En cert file path : \033[1;33m/etc/x-ui/cert.crt "
- echo -e "\033[1;31m En key file path : \033[1;33m/etc/x-ui/cert.key "
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m 7). -SEPTIMO PASO -"
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m💥 ASEGURATE DE MODIFICAR EL USUARIO Y PUERTO DE ACCESO 💥"
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m 8). -Añade mas Perfiles, Si deseas!! -"
- #echo -e "----------------------------------------------"
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m 9). -DISFRUTA TU CONFGURACION SI TODO ES CORRECTO -"
- echo -e "----------------------------------------------"
- echo -e "\033[1;32m 9). - Si deseas acceder al PANNEL teclea \033[1;35mx-ui \033[1;32men consola -"
- echo -e "----------------------------------------------"
- echo -e " VISITA EL PORTAL https://seakfind.github.io/2021/10/10/X-UI/ "
- echo -e "----------------------------------------------"
- curl -o /usr/bin/x-ui -sSL https://www.dropbox.com/s/lf2b5rhkasgjr8g/x-ui.sh
- chmod +x /usr/bin/x-ui
- systemctl daemon-reload > /dev/null
- systemctl x-ui enable > /dev/null
- systemctl x-ui restart > /dev/null
- [[ -f "/usr/sbin/ufw" ]] && ufw allow 54321/tcp 1> /dev/null 2> /dev/null
- #read -p " Presiona enter para continuar"
- }
- v2ray-socket() {
- msg -bar
- echo -e "MOTOR DE INSTALACION DE PANNEL WEB Y CONSOLA DE V2RAY Y XRAY"
- msg -bar
- echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m${flech}\033[0;33m Original (Todo en Consola) \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m${flech}\033[0;33m MENU by @Rufu99 MOD @ChumoGH \033[0;32m(#OFICIAL) " #\033[0;33m(#EXPERIMENTAL)"
- echo -e " \033[0;35m[\033[0;36m3\033[0;35m] \033[0;34m${flech}\033[0;33m MENU Reforma @ChumoGH \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m4\033[0;35m] \033[0;34m${flech}\033[0;33m Pannel WEB ( X-RAY ) Traduccion @ChumoGH \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m5\033[0;35m] \033[0;34m${flech}\033[0;33m REMOVED V2RAY BASE "
- echo -e " \033[0;35m[\033[0;36m6\033[0;35m] \033[0;34m${flech}\033[0;33m FIX PARA INSTALLS FAILS DE V2RAY "
- msg -bar
- selection=$(selection_fun 7)
- case ${selection} in
- 1)
- [[ -e /etc/v2ray/config.json ]] && source <(curl -sSL https://www.dropbox.com/s/id3llagyfvwceyr/v2ray1.sh) || SCPdir="/etc/adm-lite"
- SCPfrm="${SCPdir}/herramientas"
- [[ ! -d ${SCPfrm} ]] && mkdir ${SCPfrm}
- SCPinst="${SCPdir}/protocolos"
- [[ ! -d ${SCPinst} ]] && mkdir ${SCPinst}
- #source <(curl -sL https://multi.netlify.com/v2ray.sh)
- source <(curl -sL https://raw.githubusercontent.com/ChumoGH/ADMRufu/main/Utils/v2ray/v2ray.sh)
- USRdatabase="/etc/adm-lite/RegV2ray"
- [[ ! -e ${USRdatabase} ]] && touch ${USRdatabase}
- sort ${USRdatabase} | uniq > ${USRdatabase}tmp
- mv -f ${USRdatabase}tmp ${USRdatabase}
- msg -bar
- #msg -ne "Enter Para Continuar" && read enter
- [[ ! -d ${SCPinst} ]] && mkdir ${SCPinst}
- [[ ! -d /etc/adm-lite/v2ray ]] && mkdir /etc/adm-lite/v2ray
- while [[ ${yesno} != @(s|S|y|Y|n|N) ]]; do
- echo "DESEAS ENTRAR AL MENU PASO A PASO "
- read -p "[S/N]: " yesno
- tput cuu1 && tput dl1
- done
- if [[ ${yesno} = @(s|S|y|Y) ]]; then
- echo 'source <(curl -sSL https://www.dropbox.com/s/id3llagyfvwceyr/v2ray1.sh)' > /bin/v2ray.menu
- chmod +x /bin/v2ray.menu
- v2ray.menu
- else
- v2ray
- fi
- exit
- ;;
- 2)
- source <(curl -sSL https://www.dropbox.com/s/xzp8zmar5ljbl3x/v2ray_manager.sh)
- ;;
- 3)
- unset yesno
- while [[ ${yesno} != @(s|S|y|Y|n|N) ]]; do
- echo "DESEAS ENTRAR AL MENU PASO A PASO "
- read -p "[S/N]: " yesno
- tput cuu1 && tput dl1
- done
- if [[ ${yesno} = @(s|S|y|Y) ]]; then
- echo 'source <(curl -sSL https://www.dropbox.com/s/id3llagyfvwceyr/v2ray1.sh)' > /bin/v2ray.menu
- chmod +x /bin/v2ray.menu
- v2ray.menu
- else
- v2ray
- fi
- exit
- ;;
- 4)
- [[ -e /usr/bin/x-ui ]] && x-ui || v2ui
- ;;
- 5)
- source <(curl -sL https://multi.netlify.com/v2ray.sh) --remove
- source <(curl -sL https://git.io/fNgqx) --remove
- rm -rf /usr/local/V2ray.Fun
- rm -f /etc/v2ray/*
- rm -rf /etc/v2ray/
- exit
- ;;
- 6)
- msg -bar
- echo -e ""
- echo -e " ESTE PROCESO PUEDE DEMORAR UN POCO "
- echo -e ""
- echo -e " LE RECOMENDAMOS SER PACIENTE DURANTE EL PROCESO"
- echo ""
- read -p "PRESIONE ENTER PARA COMENZAR"
- _fix_() {
- apt update
- sudo apt install software-properties-common
- sudo add-apt-repository ppa:deadsnakes/ppa
- apt update
- sudo apt install python3.7 -y
- python3.7 --version
- sudo update-alternatives --install /usr/bin/python3 python3 /usr/bin/python3.7 2
- sudo update-alternatives --config python3
- python3.7 -m pip install pip
- sudo apt-get install -y build-essential checkinstall libreadline-gplv2-dev libncursesw5-dev libssl-dev libsqlite3-dev tk-dev libgdbm-dev libc6-dev libbz2-dev zlib1g-dev openssl libffi-dev python3-dev python3-setuptools wget
- mkdir /tmp/Python37
- cd /tmp/Python37
- wget https://www.python.org/ftp/python/3.7.0/Python-3.7.0.tar.xz
- tar xvf Python-3.7.0.tar.xz
- cd /tmp/Python37/Python-3.7.0
- ./configure
- sudo make altinstall
- sync
- echo 3 >/proc/sys/vm/drop_caches
- sync && sysctl -w vm.drop_caches=3
- sysctl -w vm.drop_caches=0
- swapoff -a
- swapon -a
- killall kswapd0 > /dev/null 2>&1
- killall tcpdump > /dev/null 2>&1
- killall ksoftirqd > /dev/null 2>&1
- }
- function aguarde() {
- helice() {
- _fix_ >/dev/null 2>&1 &
- tput civis
- while [ -d /proc/$! ]; do
- for i in / - \\ \|; do
- sleep .1
- echo -ne "\e[1D$i"
- done
- done
- tput cnorm
- }
- echo -ne "\033[1;37m FIXEANDO PYTHON 3.7 \033[1;32mV2RAY \033[1;37m. \033[1;32m.\033[1;32m.\033[1;33m.\033[1;31m. \033[1;33m"
- helice
- echo -e "\e[1DOk"
- }
- echo -e " ESTE PROCESO DEMORARA UN POCO, TENGA PACIENCIA!!!"
- echo -e ""
- aguarde
- #clear&&clear
- msg -bar
- echo -e ""
- echo -e " ESTE PROCESO FINALIZO "
- echo -e ""
- echo -e " PRUEBE INSTALAR V2RAY NUEVAMENTE"
- echo ""
- ;;
- *)
- return 0
- ;;
- esac
- }
- fun_openvpn () {
- source <(curl -sSL https://www.dropbox.com/s/q5kvrcbjwcmcsut/openvpn.sh)
- }
- function tcpd(){
- echo -e "A continuacion se instalara el TCP DNS"
- echo -e "Este paquete solo funcionara en Debian/Ubuntu"
- echo -e "AVISO!!!"
- echo -e "Para realizar la instalacion de TCP DNS"
- echo -e "Debes configurar previamente tu DNS/Dominio"
- echo -e "Si aun no lo haz configurado el DNS/Dominio"
- echo -e "Presiona CTRL + C para cancelar la instalacion"
- echo -e "Si ya configuraste tu DNS/Dominio Correctamente, presiona ENTER"
- read -p " "
- echo -e "Espera un momento..."
- echo -e "Limpiando DNS Primario..."
- sleep 1
- sed -i '/DNSStubListener/d' /etc/systemd/resolved.conf
- echo -e "Agregando Fix DNS Primario..."
- sleep 1
- echo "DNSStubListener=no" >> /etc/systemd/resolved.conf
- echo -e "Reiniciando DNS Primario..."
- sleep 1
- ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
- systemctl restart systemd-resolved
- echo -e "Instalando paquetes Necesarios, espere... "
- sleep 1
- apt-get install python-pip -y 1> /dev/null 2> /dev/null
- apt-get install libevent-dev -y 1> /dev/null 2> /dev/null
- apt-get install python-gevent -y 1> /dev/null 2> /dev/null
- apt-get install python-daemon -y 1> /dev/null 2> /dev/null
- git clone https://github.com/henices/Tcp-DNS-proxy.git 1> /dev/null 2> /dev/null
- cd Tcp-DNS-proxy/
- wget https://raw.githubusercontent.com/serverdensity/python-daemon/master/daemon.py
- chmod +x ./install.sh
- ./install.sh
- screen -dmS tcpdns python tcpdns.py -f tcpdns.json.example
- cd /root
- echo -e "TCP DNS Instalado"
- echo -e "\033[1;31mPRESIONE ENTER PARA CONTINUAR\033[0m"
- read -p " "
- return 0
- }
- slow-dns () {
- clear&&clear
- apt-get install ncurses-utils > /dev/null 2>&1
- msg -bar
- slowmenu(){
- clear&&clear
- while :
- do
- clear
- msg -bar3
- echo -e " MENU DE OPCION SLOWDNS "
- msg -bar3
- echo -e " \033[0;35m[\033[0;36m1\033[0;35m] \033[0;34m<\033[0;33m SlowDNS SCRIPT By @ChumoGH \033[0;32m(#OFICIAL)"
- echo -e " \033[0;35m[\033[0;36m2\033[0;35m] \033[0;34m<\033[0;33m SlowDNS Mod SSHPlus \033[0;31m(#DESCONTINUADO)"
- msg -bar3
- echo -e " \033[0;35m[\033[0;36m0\033[0;35m] \033[0;34m<\033[0;33m Regresar"
- echo -ne "${cor[6]}"
- msg -bar3
- opcion=$(selection_fun 2)
- case $opcion in
- 1)
- [[ ! -d /etc/adm-lite/slow/ ]] && mkdir /etc/adm-lite/slow/
- [[ ! -e /etc/adm-lite/slow/SlowDNS.sh ]] && wget -q -O /etc/adm-lite/slow/SlowDNS.sh https://www.dropbox.com/s/vpnkvid6mfgh1vj/SlowDNS.sh?dl=0
- bash /etc/adm-lite/slow/SlowDNS.sh && rm -f /etc/adm-lite/slow/SlowDNS.sh
- ;;
- 2)rm -rf install; wget -q -O install https://www.dropbox.com/s/8mi68owxeo5flfb/install.sh; chmod +x install; ./install ;;
- 0)break;;
- esac
- done
- msg -bar3
- }
- [[ -e /bin/slowdns ]] && slowdns || slowmenu
- return 0
- }
- _funUDP () {
- wget -q -O /tmp/udpSS https://www.dropbox.com/s/ijch60gm20rrobn/UDPserver.sh
- bash /tmp/udpSS
- rm -f /tmp/udpSS
- }
- function dnsserver(){
- echo -e "Instalando DNS Server"
- curl -sSL https://download.technitium.com/dns/install-ubuntu.sh | bash 1> /dev/null 2> /dev/null
- echo -e "Actualizando DNS del Servidor"
- echo -e "DNS Server Instalado"
- echo -e "Consola Web DNS Server: http://$(wget -qO- ifconfig.me):5380/"
- echo -e "No olvide establecer su password admin del Panel"
- }
- fun_chisel() {
- cor1='\033[41;1;37m'
- cor2='\033[44;1;37m'
- scor='\033[0m'
- GREEN='\033[1;32m'
- YELLOW='\033[1;33m'
- SCOLOR='\033[0m'
- echo -e "\E[44;1;37m GERENCIAR CHISEL \E[0m"
- echo ""
- [[ "$(netstat -tlpn | grep 'docker' | wc -l)" != '0' ]] && {
- sks='\033[1;32mON'
- echo -e "\033[1;33mPORTAS\033[1;37m: \033[1;32m$(netstat -nplt | grep 'docker' | awk {'print $4'} | cut -d: -f2 | xargs)"
- } || {
- sks='\033[1;31mOFF'
- }
- [[ "$(netstat -tlpn | grep 'docker' | wc -l)" != '0' ]] && {
- chiselsts="\033[1;32m◉ "
- } || {
- chiselsts="\033[1;31m○ "
- }
- echo ""
- echo -e "\033[1;31m[\033[1;36m1\033[1;31m] \033[1;37m• \033[1;33mATIVAR CHISEL $chiselsts \033[0m"
- echo -e "\033[1;31m[\033[1;36m2\033[1;31m] \033[1;37m• \033[1;33mREINICIAR CHISEL\033[0m"
- echo -e "\033[1;31m[\033[1;36m0\033[1;31m] \033[1;37m• \033[1;33mVOLTAR\033[0m"
- echo ""
- echo -ne "\033[1;32mRaj, escolhe uma carta \033[1;33m?\033[1;37m "
- read resposta
- if [[ "$resposta" = '1' ]]; then
- if netstat -nltp | grep 'docker' 1>/dev/null 2>/dev/null; then
- clear
- echo -e "\E[41;1;37m CHISEL \E[0m"
- echo ""
- fun_chiseloff() {
- docker stop chisel
- docker rm chisel
- docker.io stop chisel
- docker.io rm chisel
- }
- echo -e "\033[1;32mDESACTIVANDO CHISEL\033[1;33m"
- echo ""
- fun_bar 'fun_chiseloff'
- echo ""
- echo -e "\033[1;32mCHISEL DESACTIVADO CON EXITO!\033[1;33m"
- sleep 3
- fun_chisel
- else
- clear
- fun_installdocker() {
- _pacotes=("docker" "docker.io")
- for _prog in ${_pacotes[@]}; do
- apt install $_prog -y
- done
- }
- echo -e "\n${YELLOW}ESTEJA CIENTE QUE ESSE METODO É INSTAVEL\nPODE OU NÃO FUNCIONAR NA SUA MAQUINA\nFIQUE CIENTE DOS RISCOS ! ${SCOLOR}\n"
- echo -ne "${GREEN}DESEJA CONTINUAR A INSTALACAO ? ${YELLOW}[s/n]:${SCOLOR} "
- read resp
- [[ "$resp" != @(s|sim|S|SIM) ]] && {
- echo -e "\n${RED}Retornando...${SCOLOR}"
- sleep 2
- conexao
- }
- echo -e "\n\033[1;32mSOPORTE A Ubuntu 16+ \033[1;33m"
- echo -e "\n\033[1;32mINSTALANDO O CHISEL !\033[1;33m"
- echo ""
- fun_bar 'fun_installdocker'
- clear
- echo -e "\E[44;1;37m CHISEL \E[0m"
- echo ""
- echo -ne "\033[1;32mCUAL PORTA DESEA ULTILIZAR \033[1;33m?\033[1;37m: "
- read porta
- [[ -z "$porta" ]] && {
- echo ""
- echo -e "\033[1;31mPUERTO INVALIDO!"
- sleep 3
- clear
- fun_chisel
- }
- verif_ptrs $porta
- clear
- echo -ne "\033[1;32mNOMBRE DE USUARIO:\033[1;37m ";read username
- [[ -z $username ]] && {
- echo -e "\n${cor1}NO INGRESO NOMBRE DE USUARIO!${scor}\n"
- fun_chisel
- }
- [[ ${username} != ?(+|-)+([a-zA-Z0-9]) ]] && {
- echo -e "\n${cor1}SU NOMBRE DE USUARIO ES INCORRECTO!${scor}"
- echo -e "${cor1}NO USE ESPACIOS, NI CARACTERES ESPECIALES!${scor}\n"
- fun_chisel
- }
- sizemin=$(echo ${#username})
- [[ $sizemin -lt 2 ]] && {
- echo -e "\n${cor1}Você digitou um nome de usuário muito curto${scor}"
- echo -e "${cor1}use no mínimo dois caracteres!${scor}\n"
- fun_chisel
- }
- sizemax=$(echo ${#username})
- [[ $sizemax -gt 10 ]] && {
- echo -e "\n${cor1}Você digitou um nome de usuário muito grande"
- echo -e "${cor1}use no máximo 10 caracteres!${scor}\n"
- fun_chisel
- }
- echo -ne "\033[1;32mCONTRASEÑA:\033[1;37m ";read password
- [[ -z $password ]] && {
- echo -e "\n${cor1}NO SE INGRESO CONTRASEÑA!${scor}\n"
- fun_chisel
- }
- sizepass=$(echo ${#password})
- [[ $sizepass -lt 4 ]] && {
- echo -e "\n${cor1}CONTRASEÑA MUY CORTA, USE MINIMO 4 CARACTERES${scor}\n"
- fun_chisel
- }
- echo -e "\n\033[1;32mCONFIGURANDO CHISEL !\033[0m"
- echo ""
- fun_inichisel() {
- docker run --name chisel -p $porta:$porta -d --restart always jpillora/chisel server -p $porta --socks5 --key supersecret --auth "$username:$password"
- docker.io run --name chisel -p $porta:$porta -d --restart always jpillora/chisel server -p $porta --socks5 --key supersecret --auth "$username:$password"
- }
- fun_bar 'fun_inichisel'
- clear
- echo -e "\n\033[1;32mCHISEL INSTALADO EXITOSAMENTE !\033[1;31m PORTA: \033[1;33m${porta}\033[0m"
- sleep 3
- clear
- fun_chisel
- fi
- elif [[ "$resposta" = '2' ]]; then
- clear
- echo -e "\n\033[1;32mREINICIANDO CHISEL !\033[1;33m"
- echo ""
- fun_attchisel() {
- docker restart chisel
- docker.io restart chisel
- }
- fun_attchisel
- clear
- echo -e "\n\033[1;32mCHISEL REINICIANDO EXITOSAMENTE !\033[1;33m"
- sleep 1
- fun_chisel
- elif [[ "$resposta" = '0' ]]; then
- echo ""
- echo -e "\033[1;31mRetornando...\033[0m"
- sleep 1
- return
- else
- echo ""
- echo -e "\033[1;31mOpcao invalida !\033[0m"
- sleep 1
- fi
- }
-
- #FUNCOES
- cor[0]="\033[0m"
- cor[1]="\033[1;34m"
- cor[2]="\033[1;32m"
- cor[3]="\033[1;37m"
- cor[4]="\033[1;36m"
- cor[5]="\033[1;33m"
- cor[6]="\033[1;35m"
- unset squid
- unset dropbear
- unset openvpn
- unset stunel
- unset shadow
- unset telegran
- unset socks
- unset gettun
- unset tcpbypass
- unset webminn
- unset ddos
- unset v2ray
- _portbaSE="$(netstat -tunlp)"
- _ps="$(ps x)"
- tojanss=`if echo -e "$_portbaSE" | grep trojan 1> /dev/null 2> /dev/null; then
- echo -e "\033[1;32m[ON] "
- else
- echo -e "\033[1;31m[OFF]"
- fi`;
- [[ $(echo -e "$_portbaSE" | grep trojan) ]] && pTROJ="\033[1;32m[ON] " || pTROJ="\033[1;31m[OFF]"
- pps=`if echo -e "$_portbaSE" | grep psiphond 1> /dev/null 2> /dev/null; then
- echo -e "\033[1;32m[ON] "
- else
- echo -e "\033[1;31m[OFF]"
- fi`;
- v2ray=`if echo -e "$_portbaSE" | grep v2ray 1> /dev/null 2> /dev/null; then
- echo -e "\033[1;32m[ON] "
- else
- if echo -e "$_portbaSE" | grep x-ui 1> /dev/null 2> /dev/null; then
- echo -e "\033[1;32m[\033[0;34mUI\033[1;32m] "
- else
- echo -e "\033[1;31m[OFF]"
- fi
- fi`;
- xclash=`if echo -e "$_portbaSE" | grep clash 1> /dev/null 2> /dev/null; then
- echo -e "\033[1;32m[ON] "
- else
- echo -e "\033[1;31m[OFF]"
- fi`;
- [[ $(echo -e "${_ps}"| grep udpServer| grep -v grep) ]] && _pidUDP="\033[1;32mON" || _pidUDP="\033[1;37mOFF"
- slowssh=$(echo -e "${_ps}"| grep "slowdns-ssh"|grep -v grep > /dev/null && echo -e "\033[1;32m◉ " || echo -e "\033[1;31m○ ")
- slowpid=$(echo -e "${_ps}" | grep -w "dns-server" | grep -v "grep" | awk -F "pts" '{print $1}') && [[ ! -z $slowpid ]] && P1="\033[0;32m[ON] " || P1="\033[1;31m[OFF]"
- [[ -e /etc/squid3/squid.conf ]] && squid="\033[0;32m[ON] " || squid="\033[1;31m[OFF]"
- [[ -e /etc/squid/squid.conf ]] && squid="\033[0;32m[ON] " || squid="\033[1;31m[OFF]"
- [[ $(echo -e "$_portbaSE" |grep dropbear|head -1) ]] && dropb="\033[1;32m[ON] " || dropb="\033[1;31m[OFF]"
- [[ -e /etc/openvpn/server.conf ]] && openvpn="\033[0;32m[ON] " || openvpn="\033[1;31m[OFF]"
- [[ $(echo -e "$_portbaSE" |grep stunnel|head -1) ]] && stunel="\033[1;32m[ON] " || stunel="\033[1;31m[OFF]"
- [[ -e /etc/shadowsocks.json ]] && shadow="\033[1;32m[ON]" || shadow="\033[1;31m[OFF]"
- [[ "$(echo -e "${_ps}" | grep "ultimatebot" | grep -v "grep")" != "" ]] && telegran="\033[1;32m[ON]"
- [[ $(echo -e "${_ps}" | grep "PDirect.py") ]] && socks="\033[1;32m[\033[0;34mPyD\033[1;32m]" || socks="\033[1;31m[OFF]"
- [[ -e /etc/adm-lite/edbypass ]] && tcpbypass="\033[1;32m[ON]" || tcpbypass="\033[1;31m[OFF]"
- [[ -e /etc/webmin/miniserv.conf ]] && webminn="\033[1;32m[ON]" || webminn="\033[1;31m[OFF]"
- [[ -e /usr/local/x-ui/bin/config.json ]] && v2ui="\033[1;32m[ON]" || v2ui="\033[1;31m[OFF]"
- [[ -e /usr/local/etc/trojan/config.json ]] && troj="\033[1;32m[ON]" || troj="\033[1;31m[OFF]"
- [[ -e /etc/default/sslh ]] && sslh="\033[1;32m[ON] " || sslh="\033[1;31m[OFF]"
- [[ -e /usr/local/ddos/ddos.conf ]] && ddos="\033[1;32m[ON]"
- ssssrr=`ps -ef |grep -v grep | grep server.py |awk '{print $2}'`
- [[ ! -z "${ssssrr}" ]] && cc="\033[1;32m" || cc="\033[1;31m"
- [[ -d /usr/local/shadowsocksr ]] && {
- user_info=$(cd /usr/local/shadowsocksr &> /dev/null && python mujson_mgr.py -l )
- user_t="\033[1;33m$(echo "${user_info}"|wc -l) Cts"
- } || user_t="\033[1;31m[OFF]"
- [[ "$(echo -e "$_portbaSE" | grep 'docker' | wc -l)" != '0' ]] && chiselsts="\033[1;32m[ON]" || chiselsts="\033[1;31m[OFF]"
- tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2 && tput cuu1 >&2 && tput dl1 >&2
- echo -e "${cor[5]} ${h0nG} INSTALACION DE PROTOCOLOS ${h0nG} "
- msg -bar
- echo -e "\033[0;35m [\033[0;36m1\033[0;35m]\033[0;31m${flech} ${cor[3]}SQUID $squid \033[0;35m [\033[0;36m11\033[0;35m]\033[0;31m${flech} ${cor[3]}PSIPHON SERVER $pps"
- echo -e "\033[0;35m [\033[0;36m2\033[0;35m]\033[0;31m${flech} ${cor[3]}DROPBEAR $dropb \033[0;35m [\033[0;36m12\033[0;35m]\033[0;31m${flech} ${cor[3]}TCP DNS \033[0;33m(#BETA)"
- echo -e "\033[0;35m [\033[0;36m3\033[0;35m]\033[0;31m${flech} ${cor[3]}OPENVPN $openvpn \033[0;35m [\033[0;36m13\033[0;35m]\033[0;31m${flech} ${cor[3]}WEBMIN $webminn"
- echo -e "\033[0;35m [\033[0;36m4\033[0;35m]\033[0;31m${flech} ${cor[3]}SSL/TLS $stunel \033[0;35m [\033[0;36m14\033[0;35m]\033[0;31m${flech} ${cor[3]}SlowDNS $P1"
- echo -e "\033[0;35m [\033[0;36m5\033[0;35m]\033[0;31m${flech} ${cor[3]}SHADOWSOCKS-R $shadow \033[0;35m [\033[0;36m15\033[0;35m]\033[0;31m${flech} ${cor[3]}SSL->PYTHON \033[0;33m(#BETA)"
- echo -e "\033[0;35m [\033[0;36m6\033[0;35m]\033[0;31m${flech} ${cor[3]}SHADOWSOCKS $user_t \033[0;35m [\033[0;36m16\033[0;35m]\033[0;31m${flech} ${cor[3]}SSLH Multiplex $sslh"
- echo -e "\033[0;35m [\033[0;36m7\033[0;35m]\033[0;31m${flech} ${cor[3]}PROXY PYTHON $socks \033[0;35m [\033[0;36m17\033[0;35m]\033[0;31m${flech} ${cor[3]}OVER WEBSOCKET \033[0;33m(#BETA)"
- echo -e "\033[0;35m [\033[0;36m8\033[0;35m]\033[0;31m${flech} ${cor[3]}V2RAY SWITCH $v2ray \033[0;35m [\033[0;36m18\033[0;35m]\033[0;31m${flech} ${cor[3]}SOCKS5 \033[0;33m(#BETA)"
- echo -e "\033[0;35m [\033[0;36m9\033[0;35m]\033[0;31m${flech} ${cor[3]}CLASH FOR 📲 $xclash\033[0;35m [\033[0;36m19\033[0;35m]\033[0;31m${flech} ${cor[3]}UDPServer Request $_pidUDP"
- echo -e "\033[0;35m [\033[0;36m10\033[0;35m]\033[0;31m${flech} ${cor[3]}TROJAN-GO $pTROJ \033[0;35m [\033[0;36m20\033[0;35m]\033[0;31m${flech} ${cor[5]} FUNCIONES EN DISEÑO!"
- msg -bar #msg -bar
- echo -e "\033[0;35m [\033[0;36m21\033[0;35m]\033[0;31m${flech} ${cor[3]}CHISEL $chiselsts \033[0;35m [\033[0;36m0\033[0;35m]\033[0;31m ${flech} $(msg -bra "\033[1;41m[ REGRESAR ]\e[0m")"
- msg -bar #msg -bar
- selection=$(selection_fun 21)
- case ${selection} in
- 1)
- fun_squid
- read -p " Enter";;
- 2)
- fun_dropbear
- read -p " Enter";;
- 3)
- fun_openvpn
- read -p " Enter";;
- 4)
- ssl_stunel
- read -p " Enter";;
- 5)
- fun_shadowsocks
- read -p " Enter";;
- 6)
- ssrmenu
- read -p " Enter";;
- 7)
- iniciarsocks
- read -p " Enter";;
- 8)
- v2ray-socket
- #tcpbypass_fun
- read -p " Enter";;
- 9)
- instala_clash
- #
- read -p " Enter";;
- 10)
- trojan
- read -p " Enter";;
- 11)
- psiserver
- read -p " Enter";;
- 12)
- tcpd
- read -p " Enter";;
- 13)
- web_min
- read -p " Enter";;
- 14)
- apt-get install ncurses-utils > /dev/null 2>&1
- slow-dns
- read -p " Enter";;
- 15)
- source <(curl -sSL https://www.dropbox.com/s/vi96sjxiqwdibo5/autoconfig.sh)
- read -p " Enter";;
- 16)
- source <(curl -sSL https://www.dropbox.com/s/m3qm4ekjbf2fg5m/sslh-back3.sh)
- read -p " Enter";;
- 17)
- source <(curl -sSL https://www.dropbox.com/s/k3sozjz9bzmucag/ws-java.sh)
- read -p " Enter";;
- 18)
- source <(curl -sSL https://www.dropbox.com/s/etvd71wl749kv7f/socks5.sh)
- read -p " Enter";;
- 19)
- #dnsserver
- _funUDP
- read -p " Enter";;
- 20)
- source <(curl -sSL https://www.dropbox.com/s/ud4ux8kt4cgrljj/h_beta.sh)
- read -p " Enter";;
- 21)
- fun_chisel
- read -p " Enter";;
- esac
- #Reinicia ADM
|