Advertisement
LightProgrammer000

Instalação Servidores [Ubuntu]

Jan 18th, 2019
333
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Bash 8.98 KB | None | 0 0
  1. # !/bin/bash
  2. # Programa: Instalacao de Ferramentas de Servidores
  3. # Assunto: Funcoes Multiplas Funcao
  4. # Compilar: chmod 777
  5.  
  6. # FUNCOES: 1
  7.  
  8. ## Atualizacao de Sistema
  9. ATUALIZACAO()
  10. {
  11.     # Titulo
  12.     echo ""
  13.     echo -e "\033[01;32m ATUALIZANDO...\033[01;37m"
  14.     echo ""
  15.  
  16.     # Comandos de atualizacao do sistema e limpeza
  17.     sudo apt-get update
  18.     sudo apt-get upgrade
  19.     sudo apt-get autoclean
  20. }
  21.  
  22. ## Servidor [WEB]
  23. APACHE2()
  24. {
  25.     # Titulo
  26.     echo ""
  27.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  28.     echo ""
  29.  
  30.     # Subtitulo
  31.     echo -e "\033[01;33m--------------\033[01;37m"
  32.     echo -e "\033[01;33m--- APACHE ---\033[01;37m"
  33.     echo -e "\033[01;33m--------------\033[01;37m"
  34.     echo ""
  35.  
  36.     # Comandos de instalacao
  37.     sudo apt-get install apache2
  38.  
  39.     ## Estruturas de Decisao ##
  40.    
  41.     # -f: Analisando existencia do diretĂ³rio
  42.     if [[ -e /var/www/uploads ]]
  43.     then
  44.         echo "Arquivo existe"
  45.  
  46.     else
  47.         # Criando pasta 'uploads' [Permissao total]
  48.         mkdir /var/www/uploads && chmod 777 /var/www/uploads
  49.     fi
  50. }
  51.  
  52. ## Gerenciador de Banco de Dados [PHP]
  53. PHP()
  54. {
  55.     # Titulo
  56.     echo ""
  57.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  58.     echo ""
  59.  
  60.     # SubTitulo
  61.     echo -e "\033[01;33m-----------\033[01;37m"
  62.     echo -e "\033[01;33m--- PHP ---\033[01;37m"
  63.     echo -e "\033[01;33------------\033[01;37m"
  64.     echo ""
  65.  
  66.     # Comandos
  67.     sudo apt-get install php5
  68.     sudo apt-get install phpmyadmin
  69.     sudo apt-get install php php7.0-mysql libapache2-mod-php7.0
  70. }
  71.  
  72. # Servidor de Banco de Dados [MySql 5.7]
  73. MySQL()
  74. {
  75.     wget https://dev.mysql.com/get/mysql-apt-config_0.8.11-1_all.deb
  76.     dpkg -i mysql-apt-config_0.8.11-1_all.deb
  77.     sudo apt-get update
  78.     sudo apt-get install mysql-server
  79. }
  80.  
  81. ## Servidor de Banco de Dados [MySQL MariaDB]
  82. MYSQL_MariaDB()
  83. {
  84.     # Titulo
  85.     echo ""
  86.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  87.     echo ""
  88.  
  89.     # Subtitulo
  90.     echo -e "\033[01;33m-----------------------\033[01;37m"
  91.     echo -e "\033[01;33m--- MYSQL [MariaDB] ---\033[01;37m"
  92.     echo -e "\033[01;33m-----------------------\033[01;37m"
  93.     echo ""
  94.  
  95.     # Comando de instalacao
  96.     apt-get install mysql-server mysql-client
  97.  
  98.     # Sub-Menu
  99.     echo ""
  100.     echo -e "\033[01;33m - Funcoes Extras: \033[01;37m"
  101.     echo "[1] Trocar senha do MySQL"
  102.     echo "[2] Exportar Banco de Dados"
  103.     echo "[3] Importar Banco de Dados"
  104.     echo "[4] Nenhumas das Opcoes"
  105.     echo -n "Opcao: "
  106.     read item
  107.  
  108.     # Estrutura de escolha
  109.     case $item in
  110.     1)
  111.         # Titulo
  112.         echo ""
  113.         echo -e "\033[01;32m TROCANDO SENHA... \033[01;37m"
  114.         echo ""
  115.  
  116.         # SubTitulo
  117.         echo -e "\033[01;33m-------------\033[01;37m"
  118.         echo -e "\033[01;33m--- MySQL ---\033[01;37m"
  119.         echo -e "\033[01;33m-------------\033[01;37m"
  120.         echo ""
  121.  
  122.         # Comando para alterar senha
  123.         #mysqladmin -u root -p password;;
  124.         mysql_secure_installation;;
  125.  
  126.     2)
  127.         # Titulo
  128.         echo ""
  129.         echo -e "\033[01;32m EXPORTAR BANCO DE DADOS... \033[01;37m"
  130.         echo ""
  131.  
  132.         # SubTitulo
  133.         echo -e "\033[01;33m-------------\033[01;37m"
  134.         echo -e "\033[01;33m--- MySQL ---\033[01;37m"
  135.         echo -e "\033[01;33m-------------\033[01;37m"
  136.         echo ""
  137.  
  138.         # Entrada de dados
  139.         echo -n "Digite corretamente o nome do banco de dados: "
  140.         read banco_de_dados
  141.  
  142.         # Exportacao de banco de dados
  143.         mysqldump -u root -p $banco_de_dados > $banco_de_dados.sql;;
  144.  
  145.     3)
  146.         # Titulo
  147.         echo ""
  148.         echo -e "\033[01;32m IMPORTAR BANCO DE DADOS... \033[01;37m"
  149.         echo ""
  150.  
  151.         # SubTitulo
  152.         echo -e "\033[01;33m-------------\033[01;37m"
  153.         echo -e "\033[01;33m--- MySQL ---\033[01;37m"
  154.         echo -e "\033[01;33m-------------\033[01;37m"
  155.         echo ""
  156.  
  157.         echo -n "Digite corretamente o nome [Banco a ser Importado]: "
  158.         read dump
  159.  
  160.         # Exportacao de banco de dados
  161.         mysql -u root -p < $dump.sql;;
  162.     *)
  163.         echo -e "\033[01;31mOK\033[00;37m";;
  164.  
  165.     esac
  166. }
  167.  
  168. ## Servidor [DNS]
  169. BIND9()
  170. {
  171.     # Titulo
  172.     echo ""
  173.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  174.     echo ""
  175.  
  176.     # SubTitulo
  177.     echo -e "\033[01;33m--------------\033[01;37m"
  178.     echo -e "\033[01;33m---- BIND ----\033[01;37m"
  179.     echo -e "\033[01;33m--------------\033[01;37m"
  180.     echo ""
  181.  
  182.     # Comando
  183.     sudo apt-get install bind9
  184. }
  185.  
  186. ## Servidor [Proxy]
  187. SQUID()
  188. {
  189.     # Titulo
  190.     echo ""
  191.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  192.     echo ""
  193.  
  194.     # SubTitulo
  195.     echo -e "\033[01;33m---------------\033[01;37m"
  196.     echo -e "\033[01;33m---- SQUID ----\033[01;37m"
  197.     echo -e "\033[01;33m---------------\033[01;37m"
  198.     echo ""
  199.  
  200.     # Comando
  201.     sudo apt-get install squid
  202. }
  203.  
  204. # WORDPRESS
  205. WORDPRESS()
  206. {
  207.     # Titulo
  208.     echo ""
  209.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  210.     echo ""
  211.  
  212.     # SubTitulo
  213.     echo -e "\033[01;33m-----------------\033[01;37m"
  214.     echo -e "\033[01;33m--- WORDPRESS ---\033[01;37m"
  215.     echo -e "\033[01;33m-----------------\033[01;37m"
  216.     echo ""
  217.  
  218.     # -e: Existencia da pasta
  219.     if [[ -e /var/www ]]
  220.     then
  221.        
  222.         # Comando
  223.         wget http://wordpress.org/latest.tar.gz
  224.         tar -xzvf latest.tar.gz
  225.         rsync -avP wordpress/ /var/www/html # Move e autoriza permissoes
  226.         chown -R www-data:www-data /var/www/html
  227.         rm -rf latest.tar.gz
  228.         rm -rf wordpress/
  229.  
  230.     else
  231.         echo "Servidor Apache nao instalado"
  232.    
  233.     fi
  234. }
  235.  
  236. ## Secure Shell [SSH]
  237. SSH()
  238. {
  239.     # Titulo
  240.     echo ""
  241.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  242.     echo ""
  243.  
  244.     # SubTitulo
  245.     echo -e "\033[01;33m-----------\033[01;37m"
  246.     echo -e "\033[01;33m--- SSH ---\033[01;37m"
  247.     echo -e "\033[01;33m-----------\033[01;37m"
  248.     echo ""
  249.  
  250.     # Comando
  251.     sudo apt-get install ssh
  252. }
  253.  
  254. # Compactador de arquivo (zip)
  255. ZIP()
  256. {
  257.     # Titulo
  258.     echo ""
  259.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  260.     echo ""
  261.  
  262.     # SubTitulo
  263.     echo -e "\033[01;33m-----------\033[01;37m"
  264.     echo -e "\033[01;33m--- ZIP ---\033[01;37m"
  265.     echo -e "\033[01;33m-----------\033[01;37m"
  266.     echo ""
  267.  
  268.     # Comando
  269.     sudo apt-get install zip
  270. }
  271.  
  272. # Git [GitHub]
  273. GIT()
  274. {
  275.     # Titulo
  276.     echo ""
  277.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  278.     echo ""
  279.  
  280.     # SubTitulo
  281.     echo -e "\033[01;33m--------------\033[01;37m"
  282.     echo -e "\033[01;33m--- GITHUB ---\033[01;37m"
  283.     echo -e "\033[01;33m--------------\033[01;37m"
  284.     echo ""
  285.  
  286.     # Comando
  287.     sudo apt-get install git
  288. }
  289.  
  290. # Extras
  291. Ferramentas_extras()
  292. {
  293.     # Titulo
  294.     echo ""
  295.     echo -e "\033[01;32m INSTALANDO... \033[01;37m"
  296.     echo ""
  297.  
  298.     # SubTitulo
  299.     echo -e "\033[01;33m--------------------------\033[01;37m"
  300.     echo -e "\033[01;33m--- FERRAMENTAS EXTRAS ---\033[01;37m"
  301.     echo -e "\033[01;33m--------------------------\033[01;37m"
  302.     echo ""
  303.  
  304.     # Comandos
  305.     sudo apt-get install bc
  306.     sudo apt-get install yum
  307.     sudo apt-get install csh
  308.     sudo apt-get install rsync
  309.     sudo apt-get install dialog
  310.     sudo apt-get install ipcalc
  311.     sudo apt-get install ntfs-3g
  312.     sudo apt-get install whiptail  
  313. }
  314.  
  315. # FUNCOES: 2
  316.  
  317. ## Ativando Servicos
  318. UP()
  319. {
  320.     # Titulo
  321.     echo ""
  322.     echo -e "\033[01;31m ##### LIGANDO SERVICOS ##### \033[00;37m"
  323.     echo -e "\033[01;32m =========== SSH ============ \033[00;37m"
  324.     echo -e "\033[01;32m ========== MYSQL =========== \033[00;37m"
  325.     echo -e "\033[01;32m ========= APACHE =========== \033[00;37m"
  326.     echo -e "\033[01;32m ========== BIND ============ \033[00;37m"
  327.     echo -e "\033[01;32m ========= SQUID ============ \033[00;37m"
  328.     echo ""
  329.  
  330.     # Comandos
  331.     service ssh start
  332.     service mysql start
  333.     service apache2 start
  334.     service bind9 start
  335.     service squid start
  336. }
  337.  
  338. ##################################################
  339. #################### PROGRAMA ####################
  340. ##################################################
  341.  
  342. # Variavel de controle
  343. a=1
  344.  
  345. # Estrutura em Laco
  346. while (( $a == 1 ))
  347. do
  348.     # Titulo
  349.     clear
  350.     echo ""
  351.     echo -e "\033[01;32m------------------\033[01;37m"
  352.     echo -e "\033[01;32m    INSTALACAO    \033[01;37m"
  353.     echo -e "\033[01;32m------------------\033[01;37m"
  354.  
  355.     # MENU - Entrada de dados
  356.     echo ""
  357.     echo -e "\033[01;33m[1] INSTALAR PROGRAMAS\033[01;37m"
  358.     echo -e "\033[01;36m[2] INICIAR SERVICOS  \033[01;37m"
  359.     echo ""
  360.     echo -n -e "\033[01;34m- Escolha: \033[01;37m"
  361.     read escolha
  362.  
  363.     # Estrutura de decisao #
  364.  
  365.     # Caso 1: Opcoes de menu
  366.     if (( $escolha == 1 ))
  367.     then
  368.         echo ""
  369.         echo "--- INSTALACAO ---"
  370.         echo "[1] ATUALIZACAO"
  371.         echo "[2] APACHE [Web]"
  372.         echo "[3] PHP [Gerenciador de Banco de Dados]"
  373.         echo "[4] MySQL [5.7]"
  374.         echo "[5] MySQL [MariaDB]" 
  375.         echo "[6] BIND [Dns]"
  376.         echo "[7] SQUID [Proxy]"
  377.         echo "[8] WORDPRESS"
  378.         echo "[9] SSH [Secure Shell]"
  379.         echo "[10] ZIP [Compactador]"
  380.         echo "[11] GIT [GitHub]"
  381.         echo "[12] Ferramentas [Extras]"
  382.         echo ""
  383.         echo -n "- Escolha: "
  384.         read item
  385.         echo ""
  386.  
  387.         # Estrutura de escolha
  388.         case $item in
  389.         1)
  390.             ATUALIZACAO;;
  391.        
  392.         2)
  393.             APACHE2;;
  394.  
  395.         3)
  396.             PHP;;  
  397.  
  398.         4)
  399.             MySQL;;
  400.  
  401.         5)
  402.             MYSQL_MariaDB;;        
  403.  
  404.         6)
  405.             BIND9;;
  406.  
  407.         7)
  408.             SQUID;;        
  409.  
  410.         8)
  411.             WORDPRESS;;
  412.  
  413.         9)
  414.             SSH;;      
  415.            
  416.         10)
  417.             ZIP;;
  418.  
  419.         11)
  420.             GIT;;
  421.  
  422.         12)
  423.             Ferramentas_extras;;
  424.  
  425.         *)
  426.             echo -e "\033[01;31mERRO\033[00;37m";;
  427.  
  428.         esac
  429.  
  430.     # Caso 2: Opcoes para Subir Servicos
  431.     elif (( $escolha == 2 ))
  432.     then
  433.         # Chamada de funcao
  434.         UP
  435.     fi
  436.  
  437.     echo ""
  438.     echo -e "\033[01;31m==-== Deseja retornar ao menu principal ==-==\033[00;37m"
  439.     echo "[1] Sim"
  440.     echo "[2] Nao"
  441.     echo -n "OPCAO: "
  442.     read opcao
  443.  
  444.     # Estrutura de escolha
  445.     case $opcao in
  446.     1)
  447.         a=1;;
  448.  
  449.     *)
  450.         clear
  451.         a=0;;
  452.     esac
  453. done
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement