1
0

dropbear.sh 2.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. #!/bin/bash
  2. #19/12/2019
  3. fun_dropbear(){
  4. clear
  5. [[ -e /etc/default/dropbear ]] && {
  6. msg -bar
  7. print_center -ama "REMOVIENDO DROPBEAR"
  8. msg -bar
  9. service dropbear stop & >/dev/null 2>&1
  10. fun_bar "apt-get remove dropbear -y"
  11. fun_bar "apt-get purge dropbear -y"
  12. fun_bar "apt-get autoremove -y"
  13. msg -bar
  14. print_center -verd "Dropbear Removido"
  15. msg -bar
  16. [[ -e /etc/default/dropbear ]] && rm /etc/default/dropbear &>/dev/null
  17. sleep 2
  18. return 1
  19. }
  20. msg -bar
  21. print_center -ama "INSTALADOR DROPBEAR"
  22. msg -bar
  23. echo -e " $(msg -verm2 "Ingrese Sus Puertos:") $(msg -verd "80 90 109 110 143 443")"
  24. msg -bar
  25. msg -ne " Digite Puertos: " && read DPORT
  26. tput cuu1 && tput dl1
  27. TTOTAL=($DPORT)
  28. for((i=0; i<${#TTOTAL[@]}; i++)); do
  29. [[ $(mportas|grep "${TTOTAL[$i]}") = "" ]] && {
  30. echo -e "\033[1;33m Puerto Elegido:\033[1;32m ${TTOTAL[$i]} OK"
  31. PORT="$PORT ${TTOTAL[$i]}"
  32. } || {
  33. echo -e "\033[1;33m Puerto Elegido:\033[1;31m ${TTOTAL[$i]} FAIL"
  34. }
  35. done
  36. [[ -z $PORT ]] && {
  37. echo -e "\033[1;31m Ningun Puerto Valida Fue Elegido\033[0m"
  38. return 1
  39. }
  40. [[ ! $(cat /etc/shells|grep "/bin/false") ]] && echo -e "/bin/false" >> /etc/shells
  41. msg -bar
  42. print_center -ama "Instalando dropbear"
  43. msg -bar
  44. fun_bar "apt-get install dropbear -y"
  45. msg -bar
  46. chk=$(cat /etc/ssh/sshd_config | grep Banner)
  47. if [ "$(echo "$chk" | grep -v "#Banner" | grep Banner)" != "" ]; then
  48. local=$(echo "$chk" |grep -v "#Banner" | grep Banner | awk '{print $2}')
  49. else
  50. local="/etc/bannerssh"
  51. fi
  52. touch $local
  53. print_center -ama "Configurando dropbear"
  54. cat <<EOF > /etc/default/dropbear
  55. NO_START=0
  56. DROPBEAR_PORT=VAR1
  57. DROPBEAR_EXTRA_ARGS="VAR"
  58. DROPBEAR_BANNER="$local"
  59. DROPBEAR_RECEIVE_WINDOW=65536
  60. EOF
  61. n=0
  62. for i in $(echo $PORT); do
  63. p[$n]=$i
  64. let n++
  65. done
  66. sed -i "s/VAR1/${p[0]}/g" /etc/default/dropbear
  67. if [[ ! -z ${p[1]} ]]; then
  68. for (( i = 0; i < ${#p[@]}; i++ )); do
  69. [[ "$i" = "0" ]] && continue
  70. sed -i "s/VAR/-p ${p[$i]} VAR/g" /etc/default/dropbear
  71. done
  72. fi
  73. sed -i "s/VAR//g" /etc/default/dropbear
  74. fun_eth
  75. service ssh restart > /dev/null 2>&1
  76. service dropbear restart > /dev/null 2>&1
  77. sleep 1
  78. msg -bar3
  79. print_center -verd "dropbear configurado con EXITO"
  80. msg -bar
  81. #UFW
  82. for ufww in $(mportas|awk '{print $2}'); do
  83. ufw allow $ufww > /dev/null 2>&1
  84. done
  85. sleep 2
  86. return 1
  87. }
  88. fun_dropbear