├── parte_10.md ├── parte_01.md ├── parte_05.md ├── parte_04.md ├── README.md ├── parte_06.md ├── parte_08.md ├── parte_07.md ├── parte_02.md ├── parte_09.md └── parte_03.md /parte_10.md: -------------------------------------------------------------------------------- 1 | << [Parte 9](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_09.md)    |    [Inicial](https://github.com/vangoncalez/42sp_born2beroot) 2 |

3 | 4 |

5 | << [Parte 9](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_09.md)    |    [Inicial](https://github.com/vangoncalez/42sp_born2beroot) 6 | 7 | -------------------------------------------------------------------------------- /parte_01.md: -------------------------------------------------------------------------------- 1 | << [Inicial](https://github.com/vangoncalez/42sp_born2beroot)    |    [Parte 2](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_02.md) >> 2 |

3 | 4 | ## Parte 1: Máquina Virtual e Virtual Box 5 | 6 | Sobre o que é uma Máquina virtual e para que serve:
7 | https://www.eveo.com.br/blog/virtual-machine/ 8 | 9 | O software do Virtual Box pode ser baixado em:
10 | https://www.virtualbox.org/ 11 | 12 |

13 | << [Inicial](https://github.com/vangoncalez/42sp_born2beroot)    |    [Parte 2](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_02.md) >> 14 | -------------------------------------------------------------------------------- /parte_05.md: -------------------------------------------------------------------------------- 1 | << [Parte 4](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_04.md)    |    [Parte 6](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_06.md) >> 2 |

3 | 4 | ## Parte 5: Instalando e Configurando o UFW 5 | 6 | 1. Instalação do UFW. 7 | 8 | `apt install ufw` 9 | 10 | 2. Verifique se foi corretamente instalado 11 | 12 | `dpkg -l | grep ufw` 13 | 14 | 3. Habilite o UFW. 15 | 16 | `ufw enable` 17 | 18 | 4. Permita conexões na porta 4242. 19 | 20 | `ufw allow 4242` 21 | 22 | 5. Verifique o status 23 | 24 | `ufw status` 25 | 26 | 6. Se você tiver fazendo o Bonus, deve permitir conexões na porta 80 27 | 28 | `ufw allow 80` 29 | 30 |

31 | << [Parte 4](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_04.md)    |    [Parte 6](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_06.md) >> 32 | -------------------------------------------------------------------------------- /parte_04.md: -------------------------------------------------------------------------------- 1 | << [Parte 3](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_03.md)    |    [Parte 5](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_05.md) >> 2 |

3 | 4 | ## Parte 4: Instalação do SSH 5 | 6 | 1. Para instalar o SSH. 7 | 8 | `apt install openssh-server` 9 | 10 | 2. Verifique a instalação do SSH. 11 | 12 | `dpkg -l | grep ssh` 13 | 14 | 3. Configurar o ssh 15 | 16 | `nano etc/ssh/sshd_config` 17 | 18 | 4. Retire o comentário da linha 13: #Port 22. 19 | 20 | `Port 4242` 21 | 22 | 5. Altere a linha 32: #PermitRootLogin prohibit-password para 23 | 24 | `PermitRootLogin no` 25 | 26 | 6. Verifique se as alterações foram feitas 27 | 28 | `service ssh status` 29 | 30 | 7. Para verificar o ip da máquina 31 | 32 | `ip addr show` 33 | 34 | Será o numero IP que aparece no segundo bloco de informações 35 | 36 | 8. Para acessar via SSH de outro terminal 37 | 38 | `ssh @ -p 4242` 39 | 40 | 9. Para deslogar 41 | 42 | `logout` 43 | 44 | ou 45 | 46 | `sair` 47 | 48 |

49 | << [Parte 3](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_03.md)    |    [Parte 5](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_05.md) >> 50 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Born2beroot 2 | 3 | ## Projeto elaborado em C na formação 42 (https://www.42sp.org.br/) 4 | Este projeto consiste em instalar e configurar uma máquina virtual (VM). 5 | 6 | 01) [Máquina Virtual e Virtual Box](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_01.md) 7 | 02) [Criação da VM e Instalação do Sistema Operacional](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_02.md) 8 | 03) [Configuração da VM](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_03.md) 9 | 04) [Instalação do SSH](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_04.md) 10 | 05) [Instalação do UFW Firewall](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_05.md) 11 | 06) [Instalação e Configuração do Sudo](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_06.md) 12 | 07) [Política de Senhas e Gerenciamento de Usuários e Grupos](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_07.md) 13 | 08) [Cron](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_08.md) 14 | 09) [Bonus](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_09.md) 15 | 10) [Finalização](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_10.md) 16 |
17 |
18 | 19 | ![image](https://user-images.githubusercontent.com/82785772/147578054-b7d4ce6b-5237-4b72-9cc1-4563aacdb6e5.png) 20 | -------------------------------------------------------------------------------- /parte_06.md: -------------------------------------------------------------------------------- 1 | << [Parte 5](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_05.md)    |    [Parte 7](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_07.md) >> 2 |

3 | 4 | ## Parte 6: Instalação e configuração do sudo 5 | 6 | #### Instalação do sudo 7 | 8 | 1. Instalação do sudo. 9 | 10 | `apt-get install sudo` 11 | 12 | 2. Verifique a instalação do sudo. 13 | 14 | `dpkg -l | grep sudo` 15 | 16 | 17 |

18 | #### Adicionar ou remover usuários do sudo 19 | 20 | 1. Adicionar um usuário ao sudo 21 | 22 | `adduser sudo` 23 | 24 | 2. Deletar um usuário do sudo 25 | 26 | `deluser sudo` 27 | 28 | 3. Verifique se o úsuario foi adicionado ou deletado corretamente ao grupo Sudo. 29 | 30 | `getent group sudo` 31 | 32 | 4. Talvez seja necessário reiniciar a máquina 33 | 34 | `reboot` 35 | 36 | 37 | 38 | #### Configurar o sudo 39 | 40 | 1. Crie a pasta onde serão salvos todas os comandos executados via sudo 41 | 42 | `sudo mkdir /var/log/sudo` 43 | 44 | 2. Abra o arquivo de configuração 45 | 46 | `sudo visudo` 47 | 48 | Acrescente as linhas ao arquivo:
49 | 50 | Para limitar a 3 tentativas:
51 | `Defaults passwd_tries = 3`

52 | 53 | Para retornar uma mensagem de erro, quando o usuário digitar a senha errada:
54 | `Defaults badpass_message = "Wrong Password, padawan!"`

55 | 56 | Para salvar todos os acessos via sudo
57 | `Defaults logfile="/var/log/sudo/sudo.log"`
58 | `Defaults log_input, log_output`
59 | `Defaults iolog_dir="/var/log/sudo"`

60 | 61 | Para solicitar TTY
62 | `Defaults requiretty`

63 | 64 | Para definir local do sudo
65 | `Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"`

66 | 67 |

68 | << [Parte 5](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_05.md)    |    [Parte 7](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_07.md) >> 69 | -------------------------------------------------------------------------------- /parte_08.md: -------------------------------------------------------------------------------- 1 | << [Parte 7](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_07.md)    |    [Parte 9](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_09.md) >> 2 |

3 | 4 | ## Parte 8: Cron 5 | 6 | 1. Crie uma pasta em algum local para armazenar o script, criei na raiz uma pasta chamada script 7 | 8 | `mkdir scripts` 9 |

10 | 2. Em seguida crie um arquivo chamado monitoring.sh dentro da pasta criada 11 | 12 | `cd scripts` 13 | `touch monitoring.sh` 14 |

15 | 3. Altere o arquivo monitoring.sh para printar na tela as informações solicitadas pelo subject 16 | 17 | | Informação | Onde encontrar | 18 | |:---------|:--------------| 19 | | #Architecture | através do comando uname -a | 20 | | #CPU physical | esta info está dentro do arquivo /proc/cpuinfo nas linhas indicadas como physical.id ??? | 21 | | #vCPU | esta info está dentro do arquivo /proc/cpuinfo na linha processor | 22 | | #Memory Usage | através do comando free -m | 23 | | #Disk Usage | através do comando df ?????? | 24 | | #CPU load | através do comando top -b -n1, buscando a linha que contém o Cpu | 25 | | #Last boot | através do comando who -b | 26 | | #LVM use | Com o comando lsblk é possível ver as unidades type lvm. Podemos fazer uma condicional caso encontre o lvm e printar yes | 27 | | #Connexions TCP | através do comando netstat, é possível verificar as conexões. Para usar esse comando, uma instalação é necessária, veja na sequência. | 28 | | #User log | através do comando who, é possível saber os usuários logados. Podemos fazer um script para contar quantos usuários | 29 | | #Network | Através de "hostname -I" e "ip a" é possível obter o ipv4 e o MAC | 30 | | #Sudo | Para contar quantos sudos há no log, podemos usar um grep -c 'COMMAND' | 31 | 32 | 33 | Para testar o script enquanto o desenvolve basta executá-lo via bash 34 | 35 | `bash scripts/monitoring.sh` 36 | 37 |

38 | 39 | 4. Para instalar o netstat 40 | 41 | `apt-get update` 42 | 43 | `apt-get install net-tools` 44 |

45 | 5. Wall 46 | 47 | Para usar o wall, basta acrescentar no arquivo de script: 48 | 49 | wall " 50 | 51 | " 52 | 53 |

54 | 6. Acesse as configurações do Cron 55 | 56 | `crontab -e` 57 |

58 | 7. Acrescente uma regra para que um script seja executado a cada 10 minutos 59 | 60 | `*/10 * * * * sh /path/to/script` 61 |

62 | 63 | 8. Exemplo de um script. EDIT: TEM ALGUNS ERRINHOS NO SCRIPT ABAIXO. AINDA NÃO TIVE TEMPO PARA FAZER AS ALTERAÇÕES POR AQUI NO GIT!!! Mas serve como exemplo. 64 | 65 | ![image](https://user-images.githubusercontent.com/82785772/137600582-9a885a29-4f55-4015-a0ec-0e1106bcaa39.png) 66 | 67 | 68 |

69 | << [Parte 7](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_07.md)    |    [Parte 9](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_09.md) >> 70 | -------------------------------------------------------------------------------- /parte_07.md: -------------------------------------------------------------------------------- 1 | << [Parte 6](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_06.md)    |    [Parte 8](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_08.md) >> 2 |

3 | 4 | ## Parte 7: Política de Senhas e Gerenciamento de Usuários e Grupos 5 | 6 | 1. Configurações de Senha 7 | 8 | Acesse o arquivo de configuração 9 | 10 | `nano /etc/login.defs` 11 | 12 | Altere a linha 160: tempo em dias para a senha expirar 13 | 14 | `PASS_MAX_DAYS 30` 15 | 16 | Altere a linha 161: tempo em dias que a senha pode ser alterada antes de expirar 17 | 18 | `PASS_MIN_DAYS 2` 19 | 20 | Altere a linha 162: tempo em dias para a mensagem de alerta antes da senha expirar 21 | 22 | `PASS_WARN_AGE 7` 23 |

24 | 25 | 2. Política de Senhas Forte - Instalação do lib-pwquality 26 | 27 | `apt install libpam-pwquality` 28 | 29 | Verifique a instalação: 30 | 31 | `dpkg -l | grep libpam-pwquality` 32 | 33 | Acesse o arquivo de configuração 34 | 35 | `nano /etc/pam.d/common-password` 36 | 37 | Linha 25: acrescentar as regras: 38 | 39 | ```password requisite pam_pwquality.so retry=3 minlen=10 ucredit=-1 dcredit=-1 maxrepeat=3 reject_username difok=7 enforce_for_root``` 40 | 41 |
42 | 43 | | Política | Descrição | 44 | |:---------|:--------------| 45 | | retry=3 | número máximo de tentativas | 46 | | minlen=10 | tamanho mínimo de caracteres da senha | 47 | | ucredit=-1 | pelo menos uma letra maiúscula | 48 | | dcredit=-1 | pelo menos um número | 49 | | maxrepeat=3 | não pode ter mais que 3 caracteres idênticos consecutivos | 50 | | reject_username | não pode incluir o nome do usuário | 51 | | difok=7 | não pode repetir 7 dos caracteres da senha anterior | 52 | | enforce_for_root | o root deve obedecer os mesmos critérios | 53 |

54 | 55 | 3. Gerenciamento de usuários 56 | 57 | Para adicionar um usuário: 58 | 59 | `adduser ` 60 | 61 | Para deletar um usuário 62 | 63 | `deluser ` 64 | 65 | Para verificar a existência de um úsuario: 66 | 67 | `getent passwd ` 68 | 69 | Para verificar quanto tempo falta para que uma senha de um úsuario esteja prestes a expirar utilize: 70 | 71 | `chage -l ` 72 |

73 | 74 | 4. Gerenciamento de grupos 75 | 76 | Para criar um grupo: 77 | 78 | `addgroup ` 79 | 80 | Para apagar um grupo: 81 | 82 | `delgroup ` 83 | 84 | Para verificar os grupos existentes: 85 | `cat etc/group` 86 | 87 | Para adicionar um usuário a um grupo: 88 | 89 | `gpasswd -a ` 90 | 91 | Para verificar se um úsuario foi corretamente adicionado a um grupo: 92 | 93 | `getent group user42` 94 | 95 | 96 |

97 | << [Parte 6](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_06.md)    |    [Parte 8](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_08.md) >> 98 | 99 | -------------------------------------------------------------------------------- /parte_02.md: -------------------------------------------------------------------------------- 1 | << [Parte 1](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_01.md)    |    [Parte 3](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_03.md) >> 2 |

3 | 4 | ## Parte 2: Criação da VM e Instalação do Sistema Operacional 5 | 6 | #### Escolha do Sistema Operacional 7 | 8 | É possível escolher entre dois sistemas Operacionais: Debian ou CentOS. No subject do projeto indica que se não há uma experiência em administração de sistemas, que o mais adequado é optar pelo Debian. Motivo pelo qual eu escolhi este Sistema Operacional. 9 | 10 | O Debian, pode ser baixado através desse link: https://www.debian.org/ 11 | 12 | #### Criação da VM 13 | 14 | 1. No Virtual Box, clique em Novo 15 | 16 | ![image](https://user-images.githubusercontent.com/82785772/137586899-305e824b-4eab-48b2-9e55-62d164831641.png) 17 | 18 | 2. Escolha um nome para a sua máquina e defina o sistema Operacional 19 | 20 | ![image](https://user-images.githubusercontent.com/82785772/137586983-817de04a-f07d-46c7-8edf-7b2930eea2fc.png) 21 | 22 | 3. Defina o tamanho de memória que será alocado para a máquina virtual 23 | 24 | ![image](https://user-images.githubusercontent.com/82785772/137587009-aecac564-a16e-49de-8758-982f623a08b6.png) 25 | 26 | 4. Criar um novo disco rígido 27 | 28 | ![image](https://user-images.githubusercontent.com/82785772/137587044-ba8e76a9-dddd-45f5-931f-b658c4011970.png) 29 | 30 | 5. VDI 31 | 32 | ![image](https://user-images.githubusercontent.com/82785772/137587075-26a3ac89-e34c-466b-ab18-81b479a5d062.png) 33 | 34 | 6. Dinamicamente alocado 35 | 36 | ![image](https://user-images.githubusercontent.com/82785772/137587094-1f59d392-b3c9-4cb8-ad33-653d273a8d70.png) 37 | 38 | 7. Defina o tamanho da imagem do disco Virtual. Como fiz o Bonus, separei 30GB. Em seguida clique em criar. 39 | 40 | ![image](https://user-images.githubusercontent.com/82785772/137587131-c3f6ec1e-4e5a-441d-be1a-d954814a1a6d.png) 41 | 42 | #### Configurações da VM 43 | 44 | 1. Clique em configurações 45 | 46 | ![image](https://user-images.githubusercontent.com/82785772/137587412-7a651285-96c6-4f0d-bd16-56b45cd17101.png) 47 | 48 | 2. Selecione Armazenamento e escolha a imagem de disco baixada 49 | 50 | ![image](https://user-images.githubusercontent.com/82785772/137587470-3c740f33-0cb3-4e11-9da9-8fae1250797c.png) 51 | 52 | ![image](https://user-images.githubusercontent.com/82785772/137587645-afce6e32-9f30-4e8c-a70b-249181815900.png) 53 | 54 | 2. Em rede, habilite o modo Bridge e clique em ok 55 | 56 | ![image](https://user-images.githubusercontent.com/82785772/137587657-06250a4d-3894-46f8-b0cd-a70dd5fbfb86.png) 57 | 58 | 59 | #### Instalação do Sistema Operacional 60 | 61 | 1. Clique em Iniciar, para iniciar a VM 62 | 63 | ![image](https://user-images.githubusercontent.com/82785772/137587196-2b239f0d-adbf-404c-9679-1c3d10000e2c.png) 64 | 65 | 2. Selecione Install (não selecione instalação Gráfica, o subject não permite) 66 | 67 | ![image](https://user-images.githubusercontent.com/82785772/137587800-20a63455-bb1f-4a27-a909-9835d221c0ea.png) 68 | 69 | 3. Selecione o idioma da sua preferência 70 | 71 | ![image](https://user-images.githubusercontent.com/82785772/137587826-333545b4-6ffa-4bc6-8481-08ff0abde739.png) 72 | 73 | 4. Selecione a localidade 74 | 75 | ![image](https://user-images.githubusercontent.com/82785772/137587839-913a1685-1dc5-48d9-893f-0d90dfe9ae40.png) 76 | 77 | 5. Selecione o teclado e em seguida aguarde a instalação. 78 | 79 | ![image](https://user-images.githubusercontent.com/82785772/137587851-ce086e53-f318-4586-83a4-43541b080566.png) 80 | 81 | 6. Agora vamos dar início às configurações. 82 | 83 |

84 | << [Parte 1](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_01.md)    |    [Parte 3](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_03.md) >> 85 | -------------------------------------------------------------------------------- /parte_09.md: -------------------------------------------------------------------------------- 1 | << [Parte 8](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_08.md)    |    [Parte 10](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_10.md) >> 2 |

3 | 4 | ## Parte 9: Bonus 5 | 6 | #### Lighttpd 7 | 8 | 1. Instalação do Lighttpd 9 | 10 | `sudo apt-get install lighttpd` 11 | 12 | 2. Verifique se foi corretamente instalado 13 | 14 | `dpkg -l | grep lighttpd` 15 | 16 | 3. Permita a porta 80 no UFW 17 | 18 | `sudo ufw allow 80` 19 | 20 |

21 | #### MariaDB 22 | 23 | 1. Instalação do MariaDB 24 | 25 | `sudo apt-get install mariadb-server` 26 | 27 | 2. Verifique se foi corretamente instalado 28 | 29 | `dpkg -l | grep mariadb-server` 30 | 31 | 3. Inicie o script de instalação segura do Mysql 32 | 33 | `sudo mysql_secure_installation` 34 | 35 | Serão solicitadas algumas informações: 36 | ``` 37 | Enter current password for root (enter for none): 38 | Set root password? [Y/n] n 39 | Remove anonymous users? [Y/n] Y 40 | Disallow root login remotely? [Y/n] Y 41 | Remove test database and access to it? [Y/n] Y 42 | Reload privilege tables now? [Y/n] Y 43 | ``` 44 | 45 | 4. Faça o login no MariaDB 46 | 47 | `sudo mariadb` 48 | 49 | 5. Crie um banco de dados 50 | 51 | `CREATE DATABASE ;` 52 | 53 | 6. Crie um novo usuário para o banco de dados e dê privilégio total 54 | 55 | `GRANT ALL ON .* TO ''@'localhost' IDENTIFIED BY '' WITH GRANT OPTION;` 56 | 57 | 7. Reinicie os novos privilégios 58 | 59 | `FLUSH PRIVILEGES;` 60 | 61 | 8. Faça logout do MariaDB 62 | 63 | `exit` 64 | 65 | 9. Faça login com o novo usuário para fazer um teste se está funcionando 66 | 67 | `mariadb -u -p` 68 | 69 | 10. Verifique se a base de dados foi realmente criada 70 | 71 | `SHOW DATABASES;` 72 | 73 | 11. Faça logout do MariaDB 74 | 75 | `exit` 76 |

77 | #### PHP 78 | 79 | 1. Instalação do PHP 80 | 81 | `sudo apt install php-cgi php-mysql` 82 | 83 | 2. Verifique se foi corretamente instalado 84 | 85 | `dpkg -l | grep php` 86 | 87 |

88 | #### WordPress 89 | 90 | 1. Instalação do wget 91 | 92 | `sudo apt install wget` 93 | 94 | 2. Download do WordPress 95 | 96 | `sudo wget http://wordpress.org/latest.tar.gz -P /var/www/html` 97 | 98 | 3. Descompressão do arquivo tar 99 | 100 | `sudo tar -xzvf /var/www/html/latest.tar.gz` 101 | 102 | 4. Remoção do arquivo tar 103 | 104 | `sudo rm /var/www/html/latest.tar.gz` 105 | 106 | 5. Copiar o conteúdo da pasta wordpress para a pasta acima 107 | 108 | `sudo cp -r /var/www/html/wordpress/* /var/www/html` 109 | 110 | 6. Remover a pasta wordpress vazia 111 | 112 | `sudo rm -rf /var/www/html/wordpress` 113 | 114 | 7. Copiar o arquivo modelo de configuração do wordpress 115 | 116 | `sudo cp /var/www/html/wp-config-sample.php /var/www/html/wp-config.php` 117 | 118 | 8. Alterar o arquivo de configuração do wordpress 119 | 120 | `sudo nano /var/www/html/wp-config.php` 121 | 122 | Alterar as informações abaixo com as informaçõe criadas 123 | 124 | ``` 125 | define( 'DB_NAME', '' ); 126 | define( 'DB_USER', '' ); 127 | define( 'DB_PASSWORD', '' ); 128 | ``` 129 | 130 | 9. Configurar o lighttpd para o php 131 | 132 | `sudo lighty-enable-mod fastcgi` 133 | 134 | `sudo lighty-enable-mod fastcgi-php` 135 | 136 | `sudo service lighttpd force-reload` 137 | 138 |

139 | #### FTP 140 | 141 | 1. Instalação do wget 142 | 143 | `sudo apt install vsftpd` 144 | 145 | 2. Verifique se foi corretamente instalado 146 | 147 | `dpkg -l | grep vsftpd` 148 | 149 | 3. Permitir porta 21 150 | 151 | `sudo ufw allow 21` 152 | 153 | 154 | 4. Para criar uma pasta para algum usuário acessar via ftp 155 | 156 | Para criar uma pasta 157 | 158 | `sudo mkdir /home//ftp` 159 | 160 | `sudo mkdir /home//ftp/files` 161 | 162 | Para alterar o "dono" da pasta 163 | 164 | `sudo chown nobody:nogroup /home//ftp` 165 | 166 | Para alterar a permissão da pasta 167 | 168 | `sudo chmod a-w /home//ftp` 169 | 170 | 5. Alterar arquivo de configuração 171 | 172 | `sudo nano /etc/vsftpd.conf` 173 | 174 | descomentar a linha abaixo: 175 | 176 | `#write_enable=YES` 177 | 178 | acrescentar as linhas abaixo para encaminhar o usuário para a pasta: 179 | 180 | ``` 181 | user_sub_token=$USER 182 | local_root=/home/$USER/ftp 183 | ``` 184 | 185 | Para previnir o usuário de acessar arquivos fora da arvore do diretório 186 | 187 | `#chroot_local_user=YES` 188 | 189 | 6. Para acessar via ftp 190 | 191 | `ftp ` 192 | 193 | 194 | 195 |

196 | << [Parte 8](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_08.md)    |    [Parte 10](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_10.md) >> 197 | -------------------------------------------------------------------------------- /parte_03.md: -------------------------------------------------------------------------------- 1 | << [Parte 2](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_02.md)    |    [Parte 4](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_04.md) >> 2 |

3 | 4 | ## Parte 3: Configuração da VM 5 | 6 | ### Configuração Básica 7 | 8 | 1. Informe o Hostname. Ele deverá ser o seu Login + 42. 9 | 10 | ![alt text](https://user-images.githubusercontent.com/82785772/136550067-b2c83493-613f-4d94-8f63-417c9e67ea3d.png) 11 | 12 | 2. O nome de domínio não será necessário nesse projeto. 13 | 14 | ![alt text](https://user-images.githubusercontent.com/82785772/136550144-c367b72a-5a64-443c-9886-7cf3ac7198af.png) 15 | 16 | 3. Defina uma senha para o root. Siga a política de senhas que o subject sugere. 17 | 18 | ![alt text](https://user-images.githubusercontent.com/82785772/136550617-6859ea60-e521-4eaf-8e41-e7cfa2e63705.png) 19 | 20 | 4. Agora vamos criar um novo usuário. Escreva o nome completo do usuário. 21 | 22 | ![alt text](https://user-images.githubusercontent.com/82785772/136550803-c4c55a4a-7c78-448b-a60d-b3dec7c5bd83.png) 23 | 24 | 5. E digite uma senha 25 | 26 | ![alt text](https://user-images.githubusercontent.com/82785772/136550862-d74698b3-52f0-498b-b5af-c20c5be80584.png) 27 | 28 | 6. Neste passo vamos configurar o fuso horário 29 | 30 | ![alt text](https://user-images.githubusercontent.com/82785772/136551018-fa4378d4-b2b7-4453-a38d-c4bbc2568c12.png) 31 | 32 | ### Particionamento da memória 33 | 34 | 1. Selecione manual 35 | 36 | ![alt text](https://user-images.githubusercontent.com/82785772/136551102-35e56aab-10bf-4676-9c51-130f72ca67b4.png) 37 | 38 | 2. Selecione a unidade de memória 39 | 40 | ![alt text](https://user-images.githubusercontent.com/82785772/136551254-df0d978a-a8db-4858-951b-f74dacdb3862.png) 41 | 42 | 3. Selecione o espaço livre para criar a partição. 43 | 44 | ![alt text](https://user-images.githubusercontent.com/82785772/136551406-3f0b0b9c-263f-4c40-b222-14dc77b4eda6.png) 45 | 46 | 4. Em seguida selecione criar uma nova partição 47 | 48 | ![alt text](https://user-images.githubusercontent.com/82785772/136551458-3f43c36d-f79a-4311-8b4c-0627175b098e.png) 49 | 50 | 5. A primeira partição será destinada ao Boot. Setaremos conforme a estrutura do Bonus do Subject. Reservaremos um espaço de 500M. 51 | 52 | ![alt text](https://user-images.githubusercontent.com/82785772/136551651-67fac43f-ed2b-4d67-bd04-1630c93c37c3.png) 53 | 54 | 6. Primária 55 | 56 | ![alt text](https://user-images.githubusercontent.com/82785772/136551689-bcb8600c-3f57-48f4-a9f0-ebf37c1effd6.png) 57 | 58 | 7. Inicial 59 | 60 | ![alt text](https://user-images.githubusercontent.com/82785772/136551722-be4c467f-5461-4074-a0a7-935260a3f1bd.png) 61 | 62 | 8. Na próxima tela, dois parâmetros deverão ser ajustados: 63 | Em Usar Como, defina ext4 "journaling".
64 | Em Ponto de Montagem", defina /boot". 65 | 66 | ![alt text](https://user-images.githubusercontent.com/82785772/136551841-2292350a-d963-43a7-a6eb-c936455c854f.png) 67 | 68 | 8. Selecione Finalizar 69 | 70 | ![alt text](https://user-images.githubusercontent.com/82785772/136551976-bb7f4e8a-6b29-4b0e-9a1b-9647fba64c53.png) 71 | 72 | 9. Selecione o espaço livre para criar uma nova partição. 73 | 74 | ![alt text](https://user-images.githubusercontent.com/82785772/136552026-61ae83e1-fec5-418f-b1c5-8ede5bfc2cbf.png) 75 | 76 | 10. Selecione criar uma nova partição 77 | 78 | ![alt text](https://user-images.githubusercontent.com/82785772/136552065-ace3c921-4f82-477b-a4fc-52d05afd8a1a.png) 79 | 80 | 11. Escreva "max" para definir todo o restante de espaço para essa nova partição 81 | 82 | ![alt text](https://user-images.githubusercontent.com/82785772/136552139-5b2912a7-e03d-4e1d-8fbf-2325fd01a834.png) 83 | 84 | 12. Selecione lógica 85 | 86 | ![alt text](https://user-images.githubusercontent.com/82785772/136552176-3d0e4e1d-050f-4ed8-8f6e-c6365ee6a45a.png) 87 | 88 | 13. Altere os parâmetros da tela seguinte para: 89 | Em Usar Como, defina ext4 "journaling".
90 | Em Ponto de Montagem, defina nenhum. 91 | 92 | ![alt text](https://user-images.githubusercontent.com/82785772/136552257-f926146d-c588-47d5-9133-342f7681469a.png) 93 | 94 | 14. Finalize a partição de memória 95 | 96 | ![alt text](https://user-images.githubusercontent.com/82785772/136552330-04b3ea61-5a99-453b-bf97-03dbe38d18f2.png) 97 | 98 | 15. Selecione a configuração de volumes encriptografados e em seguida selecione sim. 99 | 100 | ![alt text](https://user-images.githubusercontent.com/82785772/136552434-0763b7cb-1014-4e75-8dc9-b37e05c02ac1.png) 101 | 102 | 16. Selecione Criar volumes criptografados 103 | 104 | ![alt text](https://user-images.githubusercontent.com/82785772/136552584-796e0334-5999-45aa-992a-fa0ec111e9ce.png) 105 | 106 | 17. Selecionando o slot sda5 e finalize 107 | 108 | ![alt text](https://user-images.githubusercontent.com/82785772/136552648-e715589d-973e-4252-bf60-41452bcb5011.png) 109 | 110 | 18. Clique em finalizar 111 | 112 | ![alt text](https://user-images.githubusercontent.com/82785772/136552731-381da4e7-118a-47be-badb-931e9bae813f.png) 113 | 114 | ![alt text](https://user-images.githubusercontent.com/82785772/136552777-9a2c9873-e8a4-469d-9adb-eee3c9ae90c7.png) 115 | 116 | 19. Selecione sim e faça a exclusão dos dados. 117 | 118 | ![alt text](https://user-images.githubusercontent.com/82785772/136552836-f063c5e4-df65-4efe-9670-550f8817fbac.png) 119 | 120 | 20. Crie uma senha/frase para a criptação dos dados. Lembre-se de seguir a política de senhas. 121 | 122 | ![alt text](https://user-images.githubusercontent.com/82785772/136555188-8f93f984-6005-4f21-ad11-1165a915d2b4.png) 123 | 124 | 21. Selecione a opção Configuração de volumes lógicos e em seguida selecione sim. 125 | 126 | ![alt text](https://user-images.githubusercontent.com/82785772/136555493-df677dae-705e-4369-92bd-aad2c28cb0e1.png) 127 | 128 | 22. Crie um novo grupo de volumes: LVMGroup. 129 | 130 | ![alt text](https://user-images.githubusercontent.com/82785772/136555670-2e93f591-ae81-4034-bf3a-28cafd6e0e88.png) 131 | 132 | ![alt text](https://user-images.githubusercontent.com/82785772/136556019-3a88c6ee-a7f0-4b12-b92d-8a2dd6ef79c9.png) 133 | 134 | 23. Selecione a partição criptografada.
135 | 136 | ![alt text](https://user-images.githubusercontent.com/82785772/136556110-c06b5407-d7cd-4226-8b97-5a67fa903ab7.png) 137 | 138 | 24. Clique em criar volume lógico 139 | 140 | ![alt text](https://user-images.githubusercontent.com/82785772/136556173-ba153ece-80fa-4eb1-a389-e065d8779053.png) 141 | 142 | 25. Selecione o grupo de volumes 143 | 144 | ![alt text](https://user-images.githubusercontent.com/82785772/136556215-c55467d2-45e1-4140-85a6-68afc2e72d94.png) 145 | 146 | 26. Defina o nome para o volume lógico 147 | 148 | ![alt text](https://user-images.githubusercontent.com/82785772/136556781-6f27d45f-af48-4ffe-a1cf-d0590ee5a399.png) 149 | 150 | 27. Defina o tamanho ocupado do volume lógico 151 | 152 | ![alt text](https://user-images.githubusercontent.com/82785772/136557085-60ab7a27-850b-43cf-b050-4346fcd8a4cb.png) 153 | 154 | 28. Repita o processo dos itens 24 a 27 para criar cada um dos demais volumes lógicos 155 | 156 | 29. Clique em finalizar 157 | 158 | ![alt text](https://user-images.githubusercontent.com/82785772/136557910-397f3477-a167-4a3a-b21a-eac789b87afb.png) 159 | 160 | 30. Após a criação de todos nosso volumes lógicos, deve-se alterar seu Modo de uso e seuPonto de montagem 161 | Defina root como: Modo de uso = ext4 "journaling"; Ponto de montagem = /.
162 | Defina swap como: Modo de uso = "swap area".
163 | Defina home como: Modo de uso = ext4 "journaling"; Ponto de montagem = /home. 164 | 165 | ![alt text](https://user-images.githubusercontent.com/82785772/136558144-cd9b9ed8-8728-4010-9653-136437e5a224.png) 166 | 167 | ![alt text](https://user-images.githubusercontent.com/82785772/136558404-119fd22d-a65a-4f07-a2d6-6358967cd3e8.png) 168 | 169 | ![alt text](https://user-images.githubusercontent.com/82785772/136558531-193ebab2-9118-4981-9f1f-4a86b166bb7c.png) 170 | 171 | 31. Clique em finalizar e em seguida clique em sim. 172 | 173 | ![alt text](https://user-images.githubusercontent.com/82785772/136559512-7ec023c7-be64-4b7e-b3ff-456cc0e9d03d.png) 174 | 175 | ![alt text](https://user-images.githubusercontent.com/82785772/136560590-c8e0cf41-7beb-46cf-8e66-a0d5a7aac138.png) 176 | 177 | 32. Clique em não 178 | 179 | ![alt text](https://user-images.githubusercontent.com/82785772/136578558-fdf40607-617a-4c5c-bc16-1862d5df93d2.png) 180 | 181 | 33. Selecione a localização do gerenciador de pacotes 182 | 183 | ![alt text](https://user-images.githubusercontent.com/82785772/136578618-2a987d7a-8e5e-4b27-915e-c66167d62b54.png) 184 | 185 | 34. Selecione o espelho do gerenciador de pacotes 186 | 187 | ![alt text](https://user-images.githubusercontent.com/82785772/136582899-f896a260-6a58-44dd-b2e7-de861f86cc7e.png) 188 | 189 | 35. O Proxy nesse projeto pode permaneceer vazio 190 | 191 | ![alt text](https://user-images.githubusercontent.com/82785772/136582976-2bbaa7e0-f6aa-49f6-98de-d9de061c10f1.png) 192 | 193 | 36. Clique em não 194 | 195 | ![alt text](https://user-images.githubusercontent.com/82785772/136585259-4abcdcd3-256e-4efa-a2cd-a7ae0060796f.png) 196 | 197 | 37. Retire todas as marcações 198 | 199 | ![alt text](https://user-images.githubusercontent.com/82785772/136585483-ce5d453d-b18e-44da-99a8-1a409c663776.png) 200 | 201 | 38. Clique em sim para a instalação do GRUB 202 | 203 | ![alt text](https://user-images.githubusercontent.com/82785772/136585889-f8174a96-cb90-4f02-a081-4043d214ddc0.png) 204 | 205 | 39. Selecione o dispositivo onde será instalado o GRUB 206 | 207 | ![alt text](https://user-images.githubusercontent.com/82785772/136586361-8f28255b-d97f-4ed7-bc5c-92853a3039a4.png) 208 | 209 | 40. Finalize a instalação 210 | 211 | ![alt text](https://user-images.githubusercontent.com/82785772/136586555-1bf0dcd2-6d5b-4886-86ef-7be4f6f97d0c.png) 212 | 213 |

214 | << [Parte 2](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_02.md)    |    [Parte 4](https://github.com/vangoncalez/42sp_born2beroot/blob/main/parte_04.md) >> 215 | 216 | --------------------------------------------------------------------------------