Guest User

Untitled

a guest
Aug 2nd, 2017
48
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 24.86 KB | None | 0 0
  1. #!/bin/bash
  2. if [ $(id -u) -eq 0 ]
  3. then
  4. clear
  5. else
  6. echo -e "Execute o script como usuario \033[1;32mroot\033[0m"
  7. exit
  8. fi
  9. if [ -d /etc/VpsPackdir ]
  10. then
  11. true
  12. else
  13. mkdir /etc/VpsPackdir
  14. fi
  15. if [ -d /etc/VpsPackdir/senha ]
  16. then
  17. true
  18. else
  19. mkdir /etc/VpsPackdir/senha
  20. fi
  21. if [ -d /etc/VpsPackdir/limite ]
  22. then
  23. true
  24. else
  25. mkdir /etc/VpsPackdir/limite
  26. fi
  27.  
  28. function configurarsquid(){
  29. clear
  30. cat -n /etc/issue |grep 1 |cut -d' ' -f6,7,8 |sed 's/1//' |sed 's/ //' > /etc/so
  31. if [ -f /etc/lsb-release ]
  32. then
  33. sistema=$(cat /etc/lsb-release |grep "DISTRIB_DESCRIPTION" | awk -F = '{print $2}' |sed 's/"//g')
  34. else
  35. sistema=Null
  36. fi
  37. echo -e "\033[1;31mPara a instalação ser correta é preciso o ip.
  38. Digite o ip !\033[0m"
  39. read -p ": " ip
  40. clear
  41. echo -e "\033[1;31m-----> \033[01;37mScript Feito por Luiz Henrique (Unix SSH)\033[0m"
  42. echo -e "\033[1;31m-----> \033[01;37mSeu sistema operacional:\033[1;31m $sistema"
  43. echo -e "\033[1;31m-----> \033[01;37mSeu ip:\033[1;31m $ip"
  44. echo -e "\033[1;31m-----> \033[1;37mSQUID NAS PORTAS:\033[1;31m 80, 8080, 8799, 3128\033[0m"
  45. echo -e "\033[1;31m-----> \033[1;37mSSH NAS PORTAS: \033[1;31m443, 22\033[0m"
  46. echo -e "\033[1;31m-----> \033[1;37mSSH NOS IPS: \033[1;31m$ip, localhost, 127.0.0.1\033[0m"
  47. echo -e "\033[1;31m-----> \033[1;37mFERRAMENTA ADICIONAR DOMINIOS:\033[1;31m addhost\033[0m"
  48.  
  49. function sshd_config(){
  50. echo 'Port 443
  51. PermitRootLogin yes
  52. PubkeyAuthentication yes
  53. PasswordAuthentication yes
  54. ' >> /etc/ssh/sshd_config
  55. }
  56.  
  57. function addihost(){ echo '#!/bin/bash
  58. echo -e "\033[1;31mHosts atualmente permitidos\n\n\033[1;32m$(cat /etc/payloads)\n\033[0m"
  59. echo "Qual host deseja adicionar ?"
  60. read -p ": " host
  61. echo "$host" >> /etc/payloads
  62. squid -k reconfigure > /dev/null 2> /dev/null
  63. squid3 -k reconfigure > /dev/null 2> /dev/null
  64. echo "$host Adicionado" ' > /bin/addhost
  65. chmod a+x /bin/addhost
  66. }
  67. function removerhostf(){ echo '#!/bin/bash
  68. echo -e "\033[1;31mHosts atualmente permitidos\n\n\033[1;32m$(cat /etc/payloads)\n\033[0m"
  69. echo -ne "\033[1;37mQual host deseja remover: \033[0m"
  70. read host
  71. hosts = $(cat /etc/payloads |grep -v $host)
  72. echo "$hosts" > /etc/payloads
  73. squid -k reconfigure >/dev/null 2>/dev/null
  74. squid3 -k reconfigure >/dev/null 2>/dev/null
  75. echo -e "\n\033[1;32mHost Removido\033[0m"
  76. ' > /bin/removerhost
  77. }
  78. function payloads(){ echo ".claro.com.br
  79. .claro.com.sv
  80. .vivo.com.br
  81. .ddivulga.com" > /etc/payloads
  82. }
  83.  
  84. if cat /etc/so |grep -i ubuntu |grep 16 1> /dev/null 2> /dev/null ; then
  85. echo -e "\033[1;37mConfigurando, Aguarde...\033[0m"
  86. apt-get update 1> /dev/null 2> /dev/null
  87. apt-get install -y squid3 1> /dev/null 2> /dev/null
  88.  
  89. service apache2 stop 1> /dev/null 2> /dev/null
  90. chattr -i /etc/ssh/sshd_config > /dev/null 2> /dev/null
  91. sshd_config
  92. service ssh restart 1> /dev/null 2> /dev/null
  93.  
  94. echo "http_port 80
  95. http_port 8080
  96. http_port 8799
  97. http_port 3128
  98. visible_hostname VpsPack
  99. acl ip dstdomain $ip
  100. http_access allow ip" > /etc/squid/squid.conf
  101. echo 'acl accept dstdomain -i "/etc/payloads"
  102. http_access allow accept
  103. acl local dstdomain localhost
  104. http_access allow local
  105. acl iplocal dstdomain 127.0.0.1
  106. http_access allow iplocal
  107. http_access deny all' >> /etc/squid/squid.conf
  108.  
  109. addihost
  110. removerhostf
  111. payloads
  112. service squid restart 1> /dev/null 2> /dev/null
  113. echo -e "\033[1;37mPara adicionar novos hosts ao squid execute o comando \033[1;32maddhost
  114. \033[1;37mPara remover execute o comando \033[1;32mremoverhost\033[1;37m
  115. Os hosts ficam no arquivo /etc/payloads\033[0m"
  116. echo -e "\033[01;31mTudo terminado crie um usuario e teste !! \033[0m"
  117. exit 0
  118. fi
  119.  
  120. if cat /etc/so |grep -i ubuntu 1> /dev/null 2> /dev/null ; then
  121. echo -e "\033[1;37mConfigurando, Aguarde...\033[0m"
  122. apt-get update 1> /dev/null 2> /dev/null
  123. apt-get install -y squid3 1> /dev/null 2> /dev/null
  124.  
  125. service apache2 stop 1> /dev/null 2> /dev/null
  126. chattr -i /etc/ssh/sshd_config > /dev/null 2> /dev/null
  127. sshd_config
  128. service ssh restart 1> /dev/null 2> /dev/null
  129.  
  130. echo "http_port 80
  131. http_port 8080
  132. http_port 8799
  133. http_port 3128
  134. visible_hostname VpsPack
  135. acl ip dstdomain $ip
  136. http_access allow ip" > /etc/squid3/squid.conf
  137. echo 'acl accept dstdomain -i "/etc/payloads"
  138. http_access allow accept
  139. acl local dstdomain localhost
  140. http_access allow local
  141. acl iplocal dstdomain 127.0.0.1
  142. http_access allow iplocal
  143. http_access deny all' >> /etc/squid3/squid.conf
  144. payloads
  145. service squid3 restart 1> /dev/null 2> /dev/null
  146. addihost
  147. removerhostf
  148. echo -e "\033[1;37mPara adicionar novos hosts ao squid execute o comando \033[1;32maddhost
  149. \033[1;37mPara remover execute o comando \033[1;32mremoverhost\033[1;37m
  150. Os hosts ficam no arquivo /etc/payloads\033[0m"
  151. echo -e "\033[01;31mTudo terminado crie um usuario e teste !! \033[0m"
  152. exit 0
  153. fi
  154.  
  155. if cat /etc/so |grep -i centos 1> /dev/null 2> /dev/null ; then
  156. echo -e "\033[01;37mConfigurando, Aguarde...\033[0m"
  157. yum -y update 1> /dev/null 2> /dev/null
  158. yum install -y squid 1> /dev/null 2> /dev/null
  159.  
  160. service httpd stop 1> /dev/null 2> /dev/null
  161. chattr -i /etc/ssh/sshd_config > /dev/null 2> /dev/null
  162. sshd_config
  163. service sshd restart 1> /dev/null 2> /dev/null
  164.  
  165. echo "http_port 80
  166. http_port 8080
  167. http_port 8799
  168. http_port 3128
  169. visible_hostname VpsPack
  170. acl ip dstdomain $ip
  171. http_access allow ip" > /etc/squid/squid.conf
  172. echo 'acl accept dstdomain -i "/etc/payloads"
  173. http_access allow accept
  174. acl local dstdomain localhost
  175. http_access allow local
  176. acl iplocal dstdomain 127.0.0.1
  177. http_access allow iplocal
  178. http_access deny all' >> /etc/squid/squid.conf
  179. payloads
  180. service squid restart 1> /dev/null 2> /dev/null
  181. addihost
  182. removerhostf
  183. echo -e "\033[1;37mPara adicionar novos hosts ao squid execute o comando \033[1;32maddhost
  184. \033[1;37mPara remover execute o comando \033[1;32mremoverhost\033[1;37m
  185. Os hosts ficam no arquivo /etc/payloads\033[0m"
  186. echo -e "\033[01;31mTudo terminado crie um usuario e teste !! \033[0m"
  187. exit
  188. fi
  189.  
  190. if cat /etc/so |grep -i debian 1> /dev/null 2> /dev/null ; then
  191. echo -e "\033[01;37mConfigurando, Aguarde...\033[0m"
  192. apt-get update 1> /dev/null 2> /dev/null
  193. apt-get install -y squid3 1> /dev/null 2> /dev/null
  194. service apache2 stop 1> /dev/null 2> /dev/null
  195. chattr -i /etc/ssh/sshd_config > /dev/null 2> /dev/null
  196. sshd_config
  197.  
  198. service ssh restart 1> /dev/null 2> /dev/null
  199.  
  200. echo "http_port 80
  201. http_port 8080
  202. http_port 8799
  203. http_port 3128
  204. visible_hostname VpsPack
  205. acl ip dstdomain $ip
  206. http_access allow ip" > /etc/squid3/squid.conf
  207. echo 'acl accept dstdomain -i "/etc/payloads"
  208. http_access allow accept
  209. acl local dstdomain localhost
  210. http_access allow local
  211. acl iplocal dstdomain 127.0.0.1
  212. http_access allow iplocal
  213. http_access deny all' >> /etc/squid3/squid.conf
  214. payloads
  215. service squid3 restart 1> /dev/null 2> /dev/null
  216. addihost
  217. removerhostf
  218. echo -e "\033[1;37mPara adicionar novos hosts ao squid execute o comando \033[1;32maddhost
  219. \033[1;37mPara remover execute o comando \033[1;32mremoverhost\033[1;37m
  220. Os hosts ficam no arquivo /etc/payloads\033[0m"
  221. echo -e "\033[01;31mTudo terminado crie um usuario e teste !! \033[0m"
  222. exit 0
  223. fi
  224. if cat /etc/issue |grep -i kernel 1> /dev/null 2> /dev/null ; then
  225. echo -e "\033[01;31mConfigurando, Aguarde...\033[0m"
  226. yum -y update 1> /dev/null 2> /dev/null
  227. yum install -y squid 1> /dev/null 2> /dev/null
  228.  
  229. service httpd stop 1> /dev/null 2> /dev/null
  230. chattr -i /etc/ssh/sshd_config > /dev/null 2> /dev/null
  231. sshd_config
  232. service sshd restart 1> /dev/null 2> /dev/null
  233.  
  234. echo "http_port 80
  235. http_port 8080
  236. http_port 8799
  237. http_port 3128
  238. visible_hostname VpsPack
  239. acl ip dstdomain $ip
  240. http_access allow ip" > /etc/squid/squid.conf
  241. echo 'acl accept dstdomain -i "/etc/payloads"
  242. http_access allow accept
  243. acl local dstdomain localhost
  244. http_access allow local
  245. acl iplocal dstdomain 127.0.0.1
  246. http_access allow iplocal
  247. http_access deny all' >> /etc/squid/squid.conf
  248. payloads
  249. service squid restart 1> /dev/null 2> /dev/null
  250. addihost
  251. removerhostf
  252. echo -e "\033[1;37mPara adicionar novos hosts ao squid execute o comando \033[1;32maddhost
  253. \033[1;37mPara remover execute o comando \033[1;32mremoverhost\033[1;37m
  254. Os hosts ficam no arquivo /etc/payloads\033[0m"
  255. echo -e "\033[01;31mTudo terminado crie um usuario e teste !! \033[0m"
  256. exit
  257. fi
  258. echo -e "\033[01;31mConfigurando, Aguarde...\033[0m"
  259. yum -y update 1> /dev/null 2> /dev/null
  260. yum install -y squid 1> /dev/null 2> /dev/null
  261. apt-get update > /dev/null 2> /dev/null
  262. apt-get install -y squid3 > /dev/null 2>/dev/null
  263. service httpd stop 1> /dev/null 2> /dev/null
  264. service apache2 stop >/dev/null 2> /dev/null
  265. chattr -i /etc/ssh/sshd_config > /dev/null 2> /dev/null
  266. sshd_config
  267. service sshd restart 1> /dev/null 2> /dev/null
  268. service ssh restart > /dev/null 2> /dev/null
  269. echo "http_port 80
  270. http_port 8080
  271. http_port 8799
  272. http_port 3128
  273. visible_hostname VpsPack
  274. acl ip dstdomain $ip
  275. http_access allow ip" > /etc/squid*/squid.conf
  276. echo 'acl accept dstdomain -i "/etc/payloads"
  277. http_access allow accept
  278. acl local dstdomain localhost
  279. http_access allow local
  280. acl iplocal dstdomain 127.0.0.1
  281. http_access allow iplocal
  282. http_access deny all' >> /etc/squid*/squid.conf
  283. payloads
  284. service squid restart 1> /dev/null 2> /dev/null
  285. service squid3 restart > /dev/null 2> /dev/null
  286. addihost
  287. removerhostf
  288. echo -e "\033[1;37mPara adicionar novos hosts ao squid execute o comando \033[1;32maddhost
  289. \033[1;37mPara remover execute o comando \033[1;32mremoverhost\033[1;37m
  290. Os hosts ficam no arquivo /etc/payloads\033[0m"
  291. echo -e "\033[01;31mTudo terminado crie um usuario e teste !! \033[0m"
  292. }
  293. function sistemadetalhes(){
  294. if [ -f /proc/cpuinfo ]
  295. then
  296. echo -e "\n\033[1;30mProcessador\033[0m"
  297. modelo=$(cat /proc/cpuinfo |grep "model name" |uniq |awk -F : {'print $2'})
  298. cpucores=$(cat /proc/cpuinfo |grep "cpu cores" |uniq |awk -F : {'print $2'})
  299. cache=$(cat /proc/cpuinfo |grep "cache size" |uniq |awk -F : {'print $2'})
  300. echo -e "\033[1;32mModelo:\033[0m$modelo"
  301. echo -e "\033[1;32mNucleos:\033[0m$cpucores"
  302. echo -e "\033[1;32mMemoria Cache:\033[0m$cache"
  303. echo -e "\033[1;32mArquitetura: \033[0m$(uname -p)"
  304. else
  305. echo -e "\033[1;30mProcessador\033[0m"
  306. echo "Não foi possivel encontrar /proc/cpuinfo"
  307. fi
  308. if [ -f /etc/lsb-release ]
  309. then
  310. echo -e "\n\033[1;30mSistema Operacional\033[0m"
  311. name=$(cat /etc/lsb-release |grep DESCRIPTION |awk -F = {'print $2'})
  312. codename=$(cat /etc/lsb-release |grep CODENAME |awk -F = {'print $2'})
  313. echo -e "\033[1;32mNome: \033[0m$name"
  314. echo -e "\033[1;32mCodeName: \033[0m$codename"
  315. echo -e "\033[1;32mKernel: \033[0m$(uname -s)"
  316. echo -e "\033[1;32mKernel Release: \033[0m$(uname -r)"
  317. if [ -f /etc/os-release ]
  318. then
  319. devlike=$(cat /etc/os-release |grep LIKE |awk -F = {'print $2'})
  320. echo -e "\033[1;32mDerivado do Antecedente OS: \033[0m$devlike"
  321. fi
  322. else
  323. echo -e "\n\033[1;30mSistema Operacional\033[0m"
  324. echo "Não foi possivel encontrar /etc/lsb-release"
  325. fi
  326. if free 1>/dev/null 2>/dev/null
  327. then
  328. echo -e "\n\033[1;30mMemoria RAM\033[0m"
  329. echo -e "\033[1;32mTotal: \033[0m$(free -m |grep -i mem |awk {'print $2'}) MB | $(( $(free -m |grep -i mem |awk {'print $2'}) / 1024 )) GB"
  330. echo -e "\033[1;32mEm Uso: \033[0m$(free -m |grep -i mem |awk {'print $3'}) MB | $(( $(free -m |grep -i mem |awk {'print $3'}) / 1024 )) GB"
  331. echo -e "\033[1;32mLivre: \033[0m$(free -m |grep -i mem |awk {'print $4'}) MB | $(( $(free -m |grep -i mem |awk {'print $4'}) / 1024 )) GB"
  332. echo -e "\n\033[1;30mSwap\033[0m"
  333. echo -e "\033[1;32mTotal: \033[0m$(free -m |grep -i swap |awk {'print $2'}) MB | $(( $(free -m |grep -i swap |awk {'print $2'}) / 1024 )) GB"
  334. echo -e "\033[1;32mEm Uso: \033[0m$(free -m |grep -i swap |awk {'print $3'}) MB | $(( $(free -m |grep -i swap |awk {'print $3'}) / 1024 )) GB"
  335. echo -e "\033[1;32mLivre: \033[0m$(free -m |grep -i swap |awk {'print $4'}) MB | $(( $(free -m |grep -i swap |awk {'print $4'}) / 1024 )) GB"
  336. else
  337. echo -e "\n\033[1;30mMemoria RAM\033[0m"
  338. echo "Não foi possivel obter informações sobre a memoria RAM"
  339. fi
  340. }
  341. function monitorar(){
  342. clear
  343. echo -e "\033[1;37m -------------------------------------------------------\033[0m"
  344. echo -e " \033[47;30m Usuario : Conexoes S \033[0m"
  345. echo -e "\033[1;37m -------------------------------------------------------\033[0m"
  346. for usur in `awk -F : '$3 > 900 { print $1 }' /etc/passwd |grep -v "nobody" |grep -vi polkitd |grep -vi systemd-[a-z] |grep -vi systemd-[0-9] |sort`; do
  347. if [ -f /etc/VpsPackdir/limite/$usur ]; then
  348. limite=$(cat -n /etc/VpsPackdir/limite/$usur |awk '$1 = 1 {print $2}')
  349. else
  350. limite=null
  351. fi
  352. usurnum="$(ps -u $usur |grep sshd |wc -l)\033[1;30m/\033[1;33m$limite"
  353. echo -e "\033[1;33m $(printf '%-41s%s' $usur $usurnum) \033[0m"
  354. echo -e "\033[1;37m -------------------------------------------------------\033[0m"
  355. done
  356. }
  357. function removerexpirados(){
  358. clear
  359. echo -e " \033[1;33mRemover Usuarios Expirados\033[0m"
  360. datahoje=$(date +%s)
  361. for user in $(cat /etc/passwd |grep -v "nobody" |awk -F : '$3 > 900 {print $1}')
  362. do
  363. dataexp=$(chage -l $user |grep "Account expires" |awk -F : '{print $2}')
  364. if [[ $dataexp == ' never' ]]; then
  365. id > /dev/null 2>/dev/null
  366. else
  367. dataexpn=$(date -d"$dataexp" '+%d/%m/%Y')
  368. dataexpnum=$(date '+%s' -d"$dataexp")
  369. fi
  370. if [[ $dataexpnum < $datahoje ]]; then
  371. printf "\033[1;31m"
  372. printf '%-41s' $user
  373. printf "\033[0m"
  374. echo "Expired Deleted"
  375. kill $(ps -u $user |awk '{print $1}') >/dev/null 2>/dev/null ; userdel $user
  376. else
  377. printf "\033[1;32m"
  378. printf '%-41s' $user
  379. printf "\033[0m"
  380. echo $dataexpn
  381. fi
  382. done
  383. }
  384. function criarusuarioteste(){
  385. mkdir /etc/usuariosteste 1>/dev/null 2>/dev/null
  386. echo -e " Usuarios teste"
  387. for testus in $(ls /etc/usuariosteste |sort |sed 's/.sh//g')
  388. do
  389. echo "$testus"
  390. done
  391. printf "\n"
  392. printf "Nome do novo usuario: "; read nome
  393. printf "Senha do usuario: "; read pass
  394. echo -e "\nUse s = segundos, m = minutos, h = horas e d = dias EX: 14s ."
  395. printf "Quanto tempo usuario $nome deve durar: ";read tempoin
  396. tempo=$(echo "$tempoin" |sed 's/ //g')
  397. useradd -M -s /bin/false $nome
  398. (echo $pass;echo $pass) |passwd $nome 1>/dev/null 2>/dev/null
  399. echo "#!/bin/bash
  400. sleep $tempo
  401. kill"' $(ps -u '"$nome |awk '{print"' $1'"}') 1>/dev/null 2>/dev/null
  402. userdel --force $nome
  403. rm -rf /etc/usuariosteste/$nome.sh
  404. exit" > /etc/usuariosteste/$nome.sh
  405. echo -e "Usuario: $nome
  406. Senha: $pass
  407. Validade: $tempo\n
  408. Apos o tempo expirar o usuario sera deletado e todos serão desconectados."
  409. bash /etc/usuariosteste/$nome.sh &
  410. exit
  411. }
  412. function badvpn_install(){
  413. wget https://raw.githubusercontent.com/RicKbrL/VpsConf/master/badvpn.sh && bash badvpn.sh
  414. }
  415. function removerlimite(){
  416. echo -ne "\033[1;32mQual usuario a retirar o limite: \033[0m"
  417. read user
  418. cronsemuser=$(cat /etc/crontab |grep -v "#$user#")
  419. echo "$cronsemuser" > /etc/crontab
  420. rm -rf /etc/VpsPackdir/limite/$user 2>/dev/null
  421. rm -rf /etc/VpsPackdir/limite/$user.sh 2>/dev/null
  422. pids=$(ps x |grep "#$user#" |awk {'print $1'})
  423. kill $pids 2>/dev/null
  424. kill "$pids" 2>/dev/null
  425. kill -9 `ps x |grep "#$user#" |awk {'print $1'}` 2>/dev/null
  426. kill `ps x |grep "#$user#" |awk {'print $1'}` 2>/dev/null
  427. echo -e "\033[1;37mUsuario: $user, Limite removido\033[0m"
  428. }
  429. function backup_de_usuarios(){
  430. clear
  431. echo -e "\033[1;37mFazendo Backup de Usuarios...\033[0m"
  432. for user in `awk -F : '$3 > 900 { print $1 }' /etc/passwd |grep -v "nobody" |grep -vi polkitd |grep -vi systemd-[a-z] |grep -vi systemd-[0-9]`
  433. do
  434. if [ -e /etc/VpsPackdir/senha/$user ]
  435. then
  436. pass=$(cat /etc/VpsPackdir/senha/$user)
  437. else
  438. echo -e "\033[1;31mNão foi possivel ter a senha do usuario\033[1;37m ($user)"
  439. read -p "Digite a Senha Manualmente ou Tecle ENTER: " pass
  440. fi
  441.  
  442. if [ -e /etc/VpsPackdir/limite/$user ]
  443. then
  444. limite=$(cat /etc/VpsPackdir/limite/$user)
  445. echo "$user:$pass:$limite" >> /etc/VpsPackdir/backup
  446. echo -e "\033[1;37mUser $user Backup [\033[1;31mOK\033[1;37m]\033[0m"
  447. else
  448. echo "$user:$pass" >> /etc/VpsPackdir/backup
  449. echo -e "\033[1;37mUser $user Backup [\033[1;31mOK\033[1;37m]\033[0m"
  450. fi
  451. done
  452. echo " "
  453. echo -e "\033[1;31mBackup Completo !!!\033[0m"
  454. echo " "
  455. echo -e "\033[1;37mAs informações sobre usuarios ficam no arquivo \033[1;31m /etc/VpsPackdir/backup \033[1;37m
  456. Guarde os Para uma futura Restauração\033[0m"
  457. }
  458. function mudarnome(){
  459. printf "Usuario qual deseja mudar o nome: "; read user
  460. if cat /etc/passwd |grep $user: >/dev/null 2>/dev/null
  461. then
  462. printf ""
  463. else
  464. echo "Usuario não existe"
  465. exit
  466. fi
  467. printf "Novo nome para usuario $user: "; read nome
  468. usermod -l $nome $user 1>/dev/null 2>/dev/null
  469. echo -e "\nUsuario: $user, Novo nome: $nome."
  470. exit
  471. }
  472. function firewallblock(){
  473. read -p "Digite o ip do vps: " ip
  474. echo Configurando...
  475. sleep 1
  476. iptables -P INPUT DROP
  477. iptables -P OUTPUT DROP
  478. iptables -P FORWARD DROP
  479. iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  480. iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
  481. iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
  482. iptables -t filter -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
  483. iptables -A OUTPUT -p tcp -d $ip --dport 443 -m state --state NEW -j ACCEPT
  484. iptables -A OUTPUT -p tcp -d $ip --dport 80 -m state --state NEW -j ACCEPT
  485. iptables -A OUTPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT
  486. iptables -A OUTPUT -p udp --dport 53 -m state --state NEW -j ACCEPT
  487. iptables -A OUTPUT -p tcp --dport 67 -m state --state NEW -j ACCEPT
  488. iptables -A OUTPUT -p udp --dport 67 -m state --state NEW -j ACCEPT
  489. iptables -A INPUT -p tcp --dport 22 -j ACCEPT
  490. iptables -A INPUT -p tcp --dport 443 -j ACCEPT
  491. iptables -A OUTPUT -p tcp --dport 22 -j ACCEPT
  492. iptables -A OUTPUT -p tcp --dport 443 -j ACCEPT
  493. iptables -A INPUT -p tcp --dport 8080 -j ACCEPT
  494. iptables -A INPUT -p tcp --dport 80 -j ACCEPT
  495. iptables -A INPUT -p tcp --dport 3128 -j ACCEPT
  496. iptables -A INPUT -p tcp --dport 8799 -j ACCEPT
  497. iptables -A OUTPUT -p tcp --dport 8080 -j ACCEPT
  498. iptables -A OUTPUT -p tcp --dport 80 -j ACCEPT
  499. iptables -A OUTPUT -p tcp --dport 3128 -j ACCEPT
  500. iptables -A OUTPUT -p tcp --dport 8799 -j ACCEPT
  501. iptables -A FORWARD -p tcp --dport 8080 -j ACCEPT
  502. iptables -A FORWARD -p tcp --dport 80 -j ACCEPT
  503. iptables -A FORWARD -p tcp --dport 3128 -j ACCEPT
  504. iptables -A FORWARD -p tcp --dport 8799 -j ACCEPT
  505. iptables -A INPUT -p icmp --icmp-type echo-request -j DROP
  506. iptables -A INPUT -p tcp --dport 10000 -j ACCEPT
  507. iptables -A OUTPUT -p tcp --dport 10000 -j ACCEPT
  508. echo -e "\033[1;37mFirewall modificado
  509. Portas 443 22 8799 8080 80 3128
  510. Bloqueio ICMP
  511. Bloqueio Torrent\033[0m"
  512. }
  513. function resetfirewall(){
  514. iptables -F
  515. iptables -X
  516. iptables -t mangle -F
  517. iptables -t mangle -X
  518. iptables -t nat -F
  519. iptables -t nat -X
  520. iptables -t filter -F
  521. iptables -t filter -X
  522. echo "Regras resetadas"
  523. }
  524. function detalhes_usuarios(){
  525. clear
  526.  
  527. echo -e "\033[1;30m----------------------------------------------------------------------\033[0m"
  528. echo -e "\033[1;37m Usuario Senha Data E. Logins S. \033[0m"
  529. echo -e "\033[1;30m----------------------------------------------------------------------\033[0m"
  530. for users in `awk -F : '$3 > 900 { print $1 }' /etc/passwd |sort |grep -v "nobody" |grep -vi polkitd |grep -vi system-`
  531. do
  532.  
  533. if cat /etc/VpsPackdir/limite/$users > /dev/null 2> /dev/null
  534. then
  535. limitecs=$(cat /etc/VpsPackdir/limite/$users)
  536. else
  537. limitecs="null"
  538. fi
  539.  
  540. if senha=$(cat /etc/VpsPackdir/senha/$users > /dev/null 2> /dev/null)
  541. then
  542. senha=$(cat /etc/VpsPackdir/senha/$users)
  543. else
  544. senha="null"
  545. fi
  546.  
  547. data=$(chage -l $users |grep -i co |awk -F : '{print $2}')
  548. if [ $data = never ] 2> /dev/null
  549. then
  550. date="Nunca"
  551. fi
  552. detalhesdata=$(printf '%-18s' "$data")
  553. detalheslimit=$(printf '%-10s' "$limitecs")
  554. detalhes=$(printf ' %-21s' "$users")
  555. detalhespass=$(printf '%-18s' "$senha")
  556. echo -e "\033[1;33m$detalhes $detalhespass $detalhesdata $detalheslimit\033[0m"
  557. echo -e "\033[1;30m----------------------------------------------------------------------\033[0m"
  558. done
  559. }
  560. function restaurar_usuarios(){
  561. echo -n "Digite o diretorio do arquivo Backup: "
  562. read arq
  563. echo -e "\033[1;37mRestaurando Usuarios...\033[0m"
  564.  
  565. for user in `cat $arq`
  566. do
  567. usuario=$(echo "$user" |awk -F : '{print $1}')
  568. senha=$(echo "$user" |awk -F : '{print $2}')
  569. if cat /etc/passwd |grep $usuario: 1> /dev/null 2>/dev/null
  570. then
  571. echo " " > /dev/null
  572. else
  573. echo "$user" |cut -d: -f3 1> /dev/null 2>/dev/null
  574. if [ $? = 0 ]
  575. then
  576. limite=$(echo "$user" |awk -F : '{print $3}')
  577. useradd -M -s /bin/false $usuario
  578. (echo $senha ; echo $senha) | passwd $usuario > /dev/null 2> /dev/null
  579. limit $usuario $limite 1> /dev/null 2> /dev/null
  580. echo "$senha" > /etc/gerenciadorinfo/senha/$usuario
  581. else
  582. useradd -M -s /bin/false $usuario
  583. (echo $senha ; echo $senha) | passwd $usuario > /dev/null 2> /dev/null
  584. echo "$senha" > /etc/gerenciadorinfo/senha/$usuario
  585. fi
  586. echo -e "\033[1;37mUsuario: \033[1;31m$usuario \033[1;37mBackup: [\033[1;31mOk\033[1;37m]\033[0m"
  587. fi
  588. done
  589. }
  590. function banner(){
  591. sshd_config_bak=$(cat /etc/ssh/sshd_config |grep -v "Banner")
  592. echo "$sshd_config_bak" > /etc/ssh/sshd_config
  593. echo "Banner /etc/bannerssh" >> /etc/ssh/sshd_config
  594. service ssh restart 1>/dev/null 2>/dev/null
  595. service sshd restart 1>/dev/null 2>/dev/null
  596. if [ -f /etc/bannerssh ]
  597. then
  598. banner=$(cat /etc/bannerssh)
  599. else
  600. banner="Não há um banner no momento"
  601. fi
  602. echo -e "\033[1;32mBanner atual\n\n\033[1;37m$banner\n\033[0m"
  603. echo "Qual banner deseja adicionar (ctrl + c para sair )"
  604. read -p ": " bannerssh
  605. echo "$bannerssh" > /etc/bannerssh
  606. service ssh restart 1> /dev/null 2>/dev/null
  607. service sshd restart 1>/dev/null 2>/dev/null
  608. }
  609. function deletar_todos(){
  610. for user in $(cat /etc/passwd |awk -F : '$3 > 900 {print $1}' |grep -v "rick" |grep -vi "nobody")
  611. do
  612. userpid=$(ps -u $user |awk {'print $1'})
  613. kill "$userpid" 2>/dev/null
  614. userdel $user
  615. echo "$user Deletado"
  616. done
  617. }
  618. clear
  619. if [[ $1 == "" ]]
  620. then
  621. echo -e "\033[1;37m VpsPack V2 © RicKUX \033[0m"
  622. echo -e "\033[1;37mEscolha uma opção: Para Sair Ctrl + C\033[1;33m
  623. [\033[1;30m01\033[1;33m] Configurar_Squid_SSH \033[1;30m(Squid e openssh configuração)\033[1;33m
  624. [\033[1;30m02\033[1;33m] Limite \033[1;30m(limite de conexoes simultaneas)\033[1;33m
  625. [\033[1;30m03\033[1;33m] Criar_Usuario \033[1;30m(Criar usuarios)\033[1;33m
  626. [\033[1;30m04\033[1;33m] Remover_expirados \033[1;30m(Remover usuarios ja expirados)\033[1;33m
  627. [\033[1;30m05\033[1;33m] Criar_Teste \033[1;30m(Criar usuarios de curta duração)\033[1;33m
  628. [\033[1;30m06\033[1;33m] BadVpn \033[1;30m(Instala badvpn para tunnel udp)\033[1;33m
  629. [\033[1;30m07\033[1;33m] BadVpn_Start \033[1;30m(liberar chamadas voip, jogos online, etc)\033[1;33m
  630. [\033[1;30m08\033[1;33m] BadVpn_Stop \033[1;30m(Parar serviço do badvpn)\033[1;33m
  631. [\033[1;30m09\033[1;33m] Remover_Limite \033[1;30m(Remover limite de conexoes de um usuario)\033[1;33m
  632. [\033[1;30m10\033[1;33m] Mudar_Nome \033[1;30m(Mudar nome de um usuario)\033[1;33m
  633. [\033[1;30m11\033[1;33m] Redefinir_Usuario \033[1;30m(Redefinir Data, senha, etc)\033[1;33m
  634. [\033[1;30m12\033[1;33m] Deletar_Usuario \033[1;30m(Menu Deletar, Desconectar, etc)\033[1;33m
  635. [\033[1;30m13\033[1;33m] Firewall-block \033[1;30m(bloquear torrent, icmp [\033[1;31mRISCOS\033[1;30m])\033[1;33m
  636. [\033[1;30m14\033[1;33m] Reset_Firewall \033[1;30m(Resetar regras iptables [\033[1;31mRISCOS\033[1;30m])\033[1;33m
  637. [\033[1;30m15\033[1;33m] Addhost \033[1;30m(Adicionar Hosts aceitos pelo squid )\033[1;33m
  638. [\033[1;30m16\033[1;33m] Remover_Host \033[1;30m(Remover Hosts aceitos pelo squid)\033[1;33m
  639. [\033[1;30m17\033[1;33m] Monitorar \033[1;30m(Monitorar conexões atuais)\033[0m\033[1;33m
  640. [\033[1;30m18\033[1;33m] Backup-Users \033[1;30m(Backup dos usuarios)\033[1;33m
  641. [\033[1;30m19\033[1;33m] Rest-Users \033[1;30m(Restaurar usuarios feito backup)\033[1;33m
  642. [\033[1;30m20\033[1;33m] Usuarios_Detalhes \033[1;30m(Informacoes sobre os usuarios !!)\033[1;33m
  643. [\033[1;30m21\033[1;33m] Banner \033[1;30m(Adicionar um banner)\033[1;33m
  644. [\033[1;30m22\033[1;33m] Speedtest \033[1;30m(Teste de conexão [velocidade de banda])\033[1;33m
  645. [\033[1;30m23\033[1;33m] Sistema_Detalhes \033[1;30m(Detalhes sobre o Sistema)\033[1;33m
  646. [\033[1;30m24\033[1;33m] Deletar_Todos \033[1;30m(Todos os usuarios serão deletados)\033[1;33m
  647. [\033[1;30m25\033[1;33m] Desinstalar \033[1;30m(Remover VpsPack)\033[0m"
  648. read -p ": " opcao
  649. else
  650. opcao=$1
  651. fi
  652. case $opcao in
  653. 1 | 01 )
  654. configurarsquid;;
  655. 2 | 02 )
  656. read -p "Usuario: " user
  657. read -p "Limite: " limite
  658. limite $user $limite;;
  659. 3 | 03 )
  660. criarusuario;;
  661. 4 | 04 )
  662. removerexpirados;;
  663. 5 | 05 )
  664. criarusuarioteste;;
  665. 6 | 06 )
  666. badvpn_install;;
  667. 7 | 07 )
  668. badvpn start;;
  669. 8 | 08 )
  670. badvpn stop;;
  671. 9 | 09 )
  672. removerlimite;;
  673. 10)
  674. mudarnome;;
  675. 11)
  676. redefinirusuario;;
  677. 12)
  678. deletarusuario;;
  679. 13)
  680. firewallblock;;
  681. 14)
  682. resetfirewall;;
  683. 15)
  684. addhost;;
  685. 16)
  686. removerhost;;
  687. 17)
  688. monitorar;;
  689. 18)
  690. backup_de_usuarios;;
  691. 19)
  692. restaurar_usuarios;;
  693. 20)
  694. detalhes_usuarios;;
  695. 21)
  696. banner;;
  697. 22)
  698. speedtest.py;;
  699. 23)
  700. sistemadetalhes;;
  701. 24)
  702. deletar_todos;;
  703. 25)
  704. rm -rf /bin/speedtest.py 2>/dev/null
  705. rm -rf /bin/deletarusuario 2>/dev/null
  706. rm -rf /bin/redefinirusuario 2>/dev/null
  707. rm -rf /bin/limite 2>/dev/null
  708. rm -rf /bin/criarusuario 2>/dev/null
  709. rm -rf /bin/vpspack 2>/dev/null;;
  710. esac
Add Comment
Please, Sign In to add comment