Skip to content

Latest commit

 

History

History
1671 lines (864 loc) · 113 KB

README_POR.md

File metadata and controls

1671 lines (864 loc) · 113 KB

Born2beroot-Tutorial 🖥🇵🇹

Índice

  1. Descarregar imagem da máquina virtual 💿

  2. Instalação da máquina 🛠

  3. Instalação Debian 🌀

  4. Configuração de máquina virtual ⚙️

    4.1 Instalação do sudo e configuração dos utilizadores e grupos 👤

    4.2 Instalação e configuração do SSH 📶

    4.3 Instalação e configuração de UFW 🔥🧱

    4.4 Configuração de senha forte para o sudo 🔒

    4.5 Configurações de política de senhas fortes 🔑

    4.6 Conectar via SSH 🗣

  5. Script 🚨

    5.1 Resultado total do script 🆗

  6. Crontab ⏰

  7. Signature.txt 📝

  8. Bonus ⭐

    8.1 Particionamento manual do disco 🛠

    8.2 Wordpress e configuração de serviços 🌐

    8.3 Servicio adicional ➕

  9. Guia de correcção ✅

    9.1 Respostas de avaliação 💯

    9.2 Comandos de avaliação ⌨️

  10. Tester 🆗

1- Descarregar imagem da máquina virtual 💿

Clique aqui para o redireccionar para o URL onde pode descarregar a ISO em segurança.

2- Instalação da máquina 🛠

Para realizar a instalação, é necessário um software de virtualização. Neste tutorial iremos utilizar VirtualBox. Se já tiver o VirtualBox instalado e tiver a ISO Debian, podemos começar com o tutorial.

1 ◦ Abra a VirtualBox e clique em Nueva.

Captura de pantalla 2022-07-13 a las 18 02 05

2 ◦ Escolha o nome da sua máquina e a pasta onde ela estará localizada. É importante colocar a máquina dentro da pasta sgoinfre, porque se não a colocarmos lá ficaremos sem espaço e a instalação falhará (dependendo do campus, o caminho sgoinfre pode mudar).

Screen Shot 2022-11-18 at 2 30 18 PM

3 ◦ Seleccione a quantidade de RAM a reservar para a máquina.

Captura de pantalla 2022-07-13 a las 13 06 05

4 ◦ Seleccione agora a segunda opção para criar um disco rígido virtual.

Captura de pantalla 2022-07-13 a las 18 13 24

5 ◦ Escolhemos a primeira opção VDI, uma vez que descarregámos uma imagem de disco.

Captura de pantalla 2022-07-13 a las 18 16 35

6 ◦ Seleccionar a primeira opção Reservado dinámicamente para que a memória seja reservada na máquina real tal como é utilizada na máquina virtual até ser atingido o limite máximo disponível na máquina virtual.

Captura de pantalla 2022-07-13 a las 18 19 33

7 ◦ Depois de definirmos a quantidade recomendada 12 GB, devemos clicar em Crear. Se fizermos o bónus seleccionaremos 30 GB.

Captura de pantalla 2022-07-13 a las 18 25 20

8 ◦ Pode parecer que terminámos a instalação, mas ainda há mais alguns passos a dar. Precisamos de clicar na configuração

Captura de pantalla 2022-07-13 a las 18 30 46

9 ◦ Depois clique em Storage, clique novamente no emoticon 💿 à direita e novamente clique em Select a disk file.

Captura de pantalla 2022-07-13 a las 18 33 28

10 ◦ Seleccione a ISO que acabámos de descarregar e clique em Abrir e depois clique em Aceptar.

Captura de pantalla 2022-07-13 a las 18 38 39

  1. ◦ Uma vez concluídas todas as etapas acima mencionadas, podemos Iniciar a nossa máquina virtual.

Captura de pantalla 2022-07-13 a las 18 44 55

3- Instalação Debian 🌀

➤ Espera❗️ A sua visão é muito importante 👀❗️ A fim de aumentar a janela deve fazer o seguinte

Captura de pantalla 2022-07-13 a las 18 51 41

Utilize a tecla command para mover a captura do rato da máquina real para a máquina virtual e vice-versa.

Vamos continuar com a instalação 🛠

1 ◦ Escolheremos a versão sem interface gráfica Install como o assunto indica para não utilizar nenhuma. Sempre que quisermos confirmar algo, carregaremos em Enter e para nos movermos através das opções utilizaremos as setas.

Captura de pantalla 2022-07-13 a las 18 58 48

2 ◦ Escolheremos o idioma a utilizar para a instalação e o idioma predefinido que o sistema será definido como Inglês.

Captura de pantalla 2022-07-13 a las 19 00 41

3 ◦ Entre no seu país, território ou zona. No meu caso colocarei Outro.

Captura de pantalla 2022-07-13 a las 19 07 50

4 ◦ Como seleccionei outros, tenho de indicar o meu continente ou região. No meu caso coloquei Europa 🇪🇺.

Captura de pantalla 2022-07-13 a las 19 09 58

5 ◦ Seleccionamos o país. No meu caso Espanha 🇪🇸.

Captura de pantalla 2022-07-13 a las 19 12 01

6 ◦ Seleccione United States.

Captura de pantalla 2022-07-13 a las 19 13 43

7 ◦ É importante seleccionar American English como a configuração do teclado, caso contrário, terá as teclas erradas a prender.

Captura de pantalla 2022-07-13 a las 19 02 21

8 ◦ Neste passo devemos escolher o Host Name da máquina, que deve ser o seu login seguido de 42.

Captura de pantalla 2022-07-13 a las 19 17 23

9 ◦ Deixaremos esta secção vazia, pois o assunto não menciona nada sobre Domain Name.

Captura de pantalla 2022-07-13 a las 19 20 29

10 ◦ Temos de introduzir uma palavra-passe para a conta de administração do sistema. É importante escrevê-la ou tirar uma fotografia da mesma, pois iremos utilizá-la. Se quiser ver a palavra-passe para se certificar de que a digitou correctamente, introduza na tabulação a opção Show Password in Clear deve carregar na barra de espaço e a chave será afixada.

Screen Shot 2022-11-18 at 2 32 55 PM

11 ◦ Repetimos o processo novamente para verificar que não o escrevemos mal.

Screen Shot 2022-11-18 at 2 33 15 PM

12 ◦ Escolhemos o nome do nosso novo utilizador. Como o assunto indica que temos de criar um utilizador adicional que não seja root com o nosso login, por este motivo chamarei ao meu novo utilizador gemartin.

Captura de pantalla 2022-07-13 a las 19 26 20

Voltamos a colocar o nome do utilizador.

image

13 ◦ Agora temos de introduzir a palavra-passe do nosso novo utilizador. Tal como a anterior, repetiremos o processo para verificar que não a digitou mal e é também importante que a guarde porque a utilizaremos mais tarde.

Captura de pantalla 2022-07-13 a las 19 30 08

14 ◦ Seleccionamos a hora da nossa localização.

Captura de pantalla 2022-07-13 a las 19 31 41

15 ◦ Vamos escolher a terceira opção Guied - use entire disk and set up encrypted LVM uma vez que o subject nos diz que devem ser divisórias encriptadas. ⚠️❗️ Se quiser fazer o bónus, deve clicar em Manual e clique aqui ❗️⚠️

Captura de pantalla 2022-07-13 a las 19 33 13

16 ◦ Seleccione o disco em que pretende particionar (deve haver apenas um disco).

Captura de pantalla 2022-07-13 a las 19 40 03

17 ◦ Uma vez escolhido o disco, devemos parti-lo conforme solicitado. Para o fazermos correctamente, temos de seleccionar a segunda opção Separate /home partition.

Screen Shot 2023-03-08 at 1 44 16 PM

18 ◦ Vamos escolher a opção Yes para que as alterações sejam escritas em disco e o gestor de volume lógico (LVM) possa ser configurado.

Captura de pantalla 2022-07-13 a las 19 44 30

19 ◦ Clicamos em Cancel, pois não é necessário apagar os dados no disco.

Captura de pantalla 2022-07-13 a las 19 46 45

20 ◦ Mais uma vez teremos de definir uma palavra-passe, desta vez será a frase de encriptação. Como mencionei anteriormente, terá de repetir o processo e deverá escrevê-la, pois será importante no futuro.

Captura de pantalla 2022-07-13 a las 19 51 17

21 ◦ En este paso debemos introducir la cantidad de volumen que usaremos para la partición guiada. Debemos introducir max o el numero de tamaño maximo disponible en mi caso es 12.4 GB.

Captura de pantalla 2022-07-13 a las 19 55 02

22 ◦ Para finalizar a partição e escrever as alterações no disco, clicaremos na opção Finish partitioning and write changes to disk.

Screen Shot 2023-03-08 at 1 46 17 PM

23 ◦ Seleccione a opção Yes para continuar e confirmar que não queremos fazer mais nenhuma alteração ao disco.

Screen Shot 2023-03-08 at 1 46 52 PM

24 ◦ Escolhemos a opção No porque não precisamos de quaisquer pacotes adicionais.

Captura de pantalla 2022-07-13 a las 20 05 42

25 ◦ Escolhemos o nosso país.

Captura de pantalla 2022-07-13 a las 20 14 23

26 ◦ Escolhemos deb.debian.org pois é isto que a debian recomenda.

Captura de pantalla 2022-07-13 a las 20 15 00

27 ◦ Deixe esta opção vazia e clique em Continue.

Captura de pantalla 2022-07-13 a las 20 17 24

28 ◦ Escolhemos a opção No porque não queremos que os criadores vejam as nossas estatísticas, mesmo que estas sejam anónimas.

Captura de pantalla 2022-07-13 a las 20 21 54

29 ◦ Remover todas as opções de software (com a barra de espaço) e clicar em Continue.

Captura de pantalla 2022-07-13 a las 20 24 17

30 ◦ Vamos seleccionar Yes para instalar GRUB boot no disco rígido

Captura de pantalla 2022-07-13 a las 20 26 24

31 ◦ Escolha o dispositivo para a instalação do bootloader /dev/sda (ata_VBOX_HARDDISK).

Captura de pantalla 2022-07-13 a las 20 35 46

32 ◦ Vamos dar Continue para terminar a instalação.

Captura de pantalla 2022-07-13 a las 20 39 30

4 Configuração de máquina virtual ⚙️

➤ A primeira coisa a fazer é seleccionar Debian GNU/Linux.

➤ Temos de introduzir a palavra-passe de encriptação que utilizámos anteriormente. No meu caso, é Hello42bcn.

Captura de pantalla 2022-07-13 a las 20 47 26

➤ Temos de introduzir o utilizador e a palavra-passe que criámos. No meu caso, o utilizador é gemartin e a palavra-chave Hola42spain.

Captura de pantalla 2022-07-13 a las 20 48 38

Agora temos tudo pronto para começar a configurar a nossa máquina virtual Debian❗️

4.1 - Instalação do sudo e configuração dos utilizadores e grupos 👤

1 ◦ Para instalar o sudo primeiro temos de estar no utilizador raiz, para isso vamos colocar Su no terminal e introduzir a palavra-passe, no meu caso é Hola42bcn. Uma vez que tenhamos acedido ao utilizador root, devemos colocar o comando apt install sudo para instalar os pacotes necessários.

Captura de pantalla 2022-07-14 a las 1 36 46

2 ◦ Precisamos de reiniciar a máquina para que as alterações produzam efeito. Para tal, utilizar o comando sudo reboot e esperar que a máquina reinicie.

Captura de pantalla 2022-07-14 a las 2 02 24

3 ◦ Uma vez reiniciada, devemos reintroduzir a encriptação e as palavras-passe dos utilizadores. Para verificar se instalámos correctamente o sudo, voltaremos a entrar no utilizador root e introduziremos o comando sudo -V, este comando para além de nos mostrar a versão do sudo também nos mostrará os argumentos passados para configurar quando o sudo foi criado e os plugins que podem mostrar informações mais detalhadas. (Opcional) ➤ Uma vez que a saída do comando é muito longa, se o quisermos ver completamente, devemos redireccionar a saída do comando para um ficheiro sudo -V > file.txt e depois editar o ficheiro nano file.txt. Ou colocar | more após o comando.

Captura de pantalla 2022-07-14 a las 2 09 59

4 ◦ Continuando no utilizador root criaremos um utilizador com o nosso login com o comando sudo adduser login, pois já criámos o utilizador na instalação, devemos ver que o utilizador já existe.

Captura de pantalla 2022-07-14 a las 2 15 11

5 ◦ Agora precisamos de criar um novo grupo chamado user42. Para o criar, faça sudo addgroup user42.

Screen Shot 2022-10-26 at 6 30 52 PM

🧠 O que é GID❓ É o Identificador do Grupo, abreviatura de Group Identifier 🆔.

🤔 O grupo foi criado correctamente? A verdade é que se não tiver havido qualquer mensagem de erro, ainda podemos verificar se foi criada com o comando getent group nombre_grupo ou também podemos fazer cat /etc/group e podemos ver todos os grupos e os utilizadores dentro deles.

6 ◦ Com o comando sudo adduser group, iremos incluir o utilizador no grupo. Devemos incluir o utilizador nos grupos sudo e user42.

Screen Shot 2022-10-26 at 6 32 30 PM

Screen Shot 2022-10-26 at 6 34 09 PM

7 ◦ Depois de os termos introduzido para verificar se tudo foi feito correctamente, podemos executar o comando getent group group_name ou podemos também editar o ficheiro /etc/group nano /etc/group e nos grupos sudo e login42 o nosso utilizador deve aparecer.

Screen Shot 2022-10-26 at 6 35 50 PM

Screen Shot 2022-10-26 at 6 36 18 PM

Screen Shot 2022-10-26 at 6 39 22 PM

Screen Shot 2022-10-26 at 6 38 25 PM

4.2 - Instalação e configuração do SSH 📶

🧠 O que é SSH❓ É o nome de um protocolo e do programa que o implementa, cuja função principal é o acesso remoto a um servidor através de um canal seguro no qual toda a informação é encriptada.

1 ◦ A primeira coisa que faremos é sudo apt update para actualizar os repositórios por nós definidos no ficheiro /etc/apt/sources.list

Captura de pantalla 2022-07-14 a las 3 09 44

2 ◦ A seguir instalaremos a principal ferramenta de conectividade para o login remoto com o protocolo SSH, esta ferramenta é OpenSSH. Para a instalar, introduza o comando sudo apt install openssh-server. Na mensagem de confirmação coloque Y, depois aguarde que a instalação termine.

Captura de pantalla 2022-07-14 a las 3 14 52

Para verificar se foi instalado correctamente, faremos o sudo service ssh status e este deve mostrar-se activo.

Captura de pantalla 2022-07-14 a las 3 53 59

3 ◦ Uma vez terminada a instalação, foram criados alguns ficheiros que temos de configurar. Para tal, utilizaremos Nano ou se preferir outro editor de texto. O primeiro ficheiro a editar é /etc/ssh/sshd_config. Se não estiver no utilizador root não terá permissões de escrita, para isso faremos su e colocaremos a palavra-passe para introduzir o utilizador root ou se não quiser introduzir o utilizador root colocar sudo no início do comando sudo nano /etc/ssh/sshd_config.

Captura de pantalla 2022-07-14 a las 3 24 21

4 ◦ O # no início de uma linha significa que é comentado, as linhas que vamos modificar devem remover o comentário. Uma vez editado o ficheiro, devemos modificar as seguintes linhas:

➤ #Port 22 -> Port 4242

Captura de pantalla 2022-07-14 a las 3 31 04

➤ #PermitRootLogin prohibit-password -> PermitRootLogin no

Captura de pantalla 2022-07-14 a las 3 34 13

Uma vez modificadas estas linhas, devemos guardar as alterações feitas no ficheiro e parar de o editar.

5 ◦ Temos agora de editar o ficheiro /etc/ssh/ssh_config.

Captura de pantalla 2022-07-14 a las 3 48 56

Iremos editar a seguinte linha:

➤ #Port 22 -> Port 4242

Captura de pantalla 2022-07-14 a las 3 50 29

6 ◦ Finalmente, temos de reiniciar o serviço ssh para actualizar as modificações que acabámos de fazer. Para o fazer, devemos digitar o comando sudo service ssh restart e, uma vez reiniciado, vamos olhar para o estado actual com sudo service ssh status e para confirmar que as alterações foram feitas no ouvinte do servidor, a porta 4242 deve aparecer.

Captura de pantalla 2022-07-14 a las 3 56 56

4-3 Instalação e configuração de UFW 🔥🧱

🧠 O que é UFW É um [firewall].(https://es.wikipedia.org/wiki/Cortafuegos_(inform%C3%A1tica)) que utiliza a linha de comando para configurar iptables utilizando um pequeno número de comandos simples.

1 ◦ A primeira coisa a fazer é instalar o UFW, para o fazer utilizaremos o comando sudo apt install ufw, depois escreveremos um y para confirmar que o queremos instalar e esperar que termine.

Captura de pantalla 2022-07-14 a las 19 28 55

Captura de pantalla 2022-07-14 a las 19 29 25

2 ◦ Uma vez instalada, devemos activá-la, para o fazer devemos colocar o seguinte comando sudo ufw enable e depois devemos indicar que a firewall está activa.

Captura de pantalla 2022-07-14 a las 19 32 57

3 ◦ Agora o que precisamos de fazer é permitir que a nossa firewall permita ligações através da porta 4242. Fá-lo-emos com o seguinte comando sudo ufw allow 4242.

Captura de pantalla 2022-07-14 a las 19 34 12

4 ◦ Finalmente, verificaremos se tudo está correctamente configurado, olhando para o estado da nossa firewall, onde as ligações através da porta 4242 já devem aparecer como permitidas. Para ver o estado, utilizaremos o comando sudo ufw status.

Captura de pantalla 2022-07-14 a las 19 38 37

4-4 Configuração de senha forte para o sudo 🔒

1 ◦ Vamos criar um ficheiro no caminho /etc/sudoers.d/. Decidi chamar o meu ficheiro sudo_config, pois é aqui que a configuração da senha será armazenada. O comando exacto para criar o ficheiro é touch /etc/sudoers.d/sudo_config.

Captura de pantalla 2022-07-14 a las 22 00 40

2 ◦ Devemos criar o directório sudo no caminho /var/log porque cada comando que executamos com o sudo, tanto a entrada como a saída devem ser armazenadas nesse directório. Para o criar utilizaremos o comando mkdir /var/log/sudo.

Captura de pantalla 2022-07-14 a las 21 56 53

3 ◦ Devemos editar o ficheiro criado no passo 1. Como disse antes, pode usar qualquer editor que quiser, mas eu usarei nano. Comando para editar o ficheiro: nano /etc/sudoers.d/sudo_config.

Captura de pantalla 2022-07-14 a las 22 04 10

4 ◦ Uma vez editado o ficheiro, deve introduzir os seguintes comandos para cumprir todos os requisitos do subject.

Defaults  passwd_tries=3
Defaults  badpass_message="Mensaje de error personalizado"
Defaults  logfile="/var/log/sudo/sudo_config"
Defaults  log_input, log_output
Defaults  iolog_dir="/var/log/sudo"
Defaults  requiretty
Defaults  secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

➤ Como deve ser o ficheiro.

Captura de pantalla 2022-07-16 a las 2 03 45

🤔 O que cada comando does❓

Captura de pantalla 2022-07-16 a las 2 04 56

4-5 Configurações de política de senhas fortes 🔑

1 ◦ O primeiro passo é a edição do ficheiro login.defs.

Captura de pantalla 2022-07-16 a las 2 54 06

2 ◦ Uma vez que estamos a editar o ficheiro, modificaremos os seguintes parâmetros:

➤ PASS_MAX_DAYS 99999 -> PASS_MAX_DAYS 30

➤ PASS_MIN_DAYS 0 -> PASS_MIN_DAYS 2

Captura de pantalla 2022-07-16 a las 3 05 49

PASS_MAX_DAYS: Este é o tempo de expiração da palavra-passe. O número corresponde a dias.

PASS_MIN_DAYS: O número mínimo de dias permitido antes de alterar uma palavra-passe.

PASS_WARN_AGE: O utilizador receberá uma mensagem de aviso indicando que o número de dias especificado permanece até a sua senha expirar.

3 ◦ Para continuar com a configuração temos de instalar os seguintes pacotes com este comando sudo apt install libpam-pwquality, depois colocar Y para confirmar a instalação e esperar que termine.

Captura de pantalla 2022-07-16 a las 3 13 52

4 ◦ A próxima coisa a fazer é voltar atrás e editar um ficheiro e modificar algumas linhas. Faremos nano /etc/pam.d/com palavras-passe comuns.

Captura de pantalla 2022-07-16 a las 3 27 02

5 ◦ Após nova tentativa=3, devemos acrescentar os seguintes comandos:

minlen=10
ucredit=-1
dcredit=-1
lcredit=-1
maxrepeat=3
reject_username
difok=7
enforce_for_root

➤ É assim que a linha deve ser ↙️

Screen Shot 2023-01-03 at 7 41 57 PM

➤ Esta é a aparência que deve ter no ficheiro ↙️

Captura de pantalla 2022-07-16 a las 3 38 08

🤔 O que cada comando does❓

minlen=10 ➤ O número mínimo de caracteres que a senha deve conter.

ucredit=-1 ➤ Deve conter pelo menos uma letra maiúscula. Colocamos o - como deve conter pelo menos um caracter, se colocarmos + queremos dizer no máximo esses caracteres.

dcredit=-1 ➤ Deve conter pelo menos um dígito.

lcredit=-1 ➤ Deve conter pelo menos uma letra minúscula.

maxrepeat=3 ➤ Não se pode ter o mesmo carácter mais de 3 vezes seguidas.

reject_username ➤ Não pode conter o nome do utilizador.

difok=7 ➤ Deve ter pelo menos 7 caracteres que não façam parte da senha antiga.

enforce_for_root ➤ Iremos implementar esta política para o utilizador de raiz.

6 ◦ A política de palavras-passe recentemente implementada afecta apenas os novos utilizadores. Portanto, é necessário atualizar as contas de utilizador que foram criadas antes desta política para cumprir os novos requisitos de segurança. Para verificar se o utilizador não está em conformidade com a política, vamos utilizar o comando sudo chage -l username.

É assim que se apresenta, devemos verificar se os dias

image

7 ◦ Se verificarmos que este utilizador não cumpre a política devemos modificar o número mínimo e máximo de dias entre alterações de password, para isso vamos utilizar o seguinte comando: sudo chage -m <time> <username> y sudo chage -M <time> <username>.

-m é para o número mínimo de dias e -M para o número máximo de dias.

Os comandos devem ter o seguinte aspeto

image

Quando as alterações tiverem sido aplicadas, deverá ter o seguinte aspeto:

image

4-6 Conectar via SSH 🗣

1 ◦ Para ligar via SSH temos de fechar a máquina, abrir a VirtualBox e clicar na configuração.

Captura de pantalla 2022-07-18 a las 10 15 13

2 ◦ Uma vez na configuração devemos clicar na secção Red , clicar emAvanzadas para nos mostrar mais opções e clicar emReenvío de puertos.

Captura de pantalla 2022-07-18 a las 10 18 32

3 ◦ Clique no seguinte emoticon para adicionar uma regra de reencaminhamento.

Captura de pantalla 2022-07-18 a las 10 21 24

4 ◦ Finalmente, acrescentaremos o porto 4242 ao anfitrião e convidado. Os IP's não são necessários. Clique no botão de aceitação para aplicar as alterações.

Captura de pantalla 2022-07-18 a las 10 22 29

➤ Para nos podermos ligar à máquina virtual a partir da máquina real, temos de abrir um terminal na máquina real e escrever ssh gemartin@localhost -p 4242, pedir-nos-á a palavra-passe do utilizador e assim que a introduzirmos veremos o login a verde e isso significa que estaremos ligados.

Screen Shot 2022-10-27 at 12 40 23 AM

Screen Shot 2022-10-27 at 12 40 04 AM

5- Script 🚨

Esta é uma parte muito importante do projecto. Deve-se prestar atenção a tudo, muito importante não copiar e colar directamente o ficheiro sem saber o que faz o quê. Na avaliação, deve explicar cada comando se o avaliador o pedir.

🧠 O que é um script❓ É uma sequência de comandos armazenados num ficheiro que, quando executado, fará a função de cada comando.

5-1 Arquitectura

Para ver a arquitectura do SO e a sua versão do kernel utilizaremos o comando uname -a ("-a" == "--all" ) que basicamente imprimirá toda a informação excepto se o tipo de processador for desconhecido ou a plataforma de hardware.

Screen Shot 2022-10-27 at 4 50 06 PM

5-2 Núcleos físicos

Para exibir o número de núcleos físicos, faremos uso do ficheiro /proc/cpuinfo que fornece informações sobre o processador: o seu tipo, marca, modelo, desempenho, etc. Utilizaremos o comando grep "physical id" /proc/cpuinfo | wc -l com o comando grep procuraremos dentro do ficheiro "physical id" e com wc -l contaremos as linhas do resultado do grep. Fazemo-lo porque a forma de quantificar os núcleos não é muito comum. Se houver um processador, marcará 0 e se houver mais do que um processador, mostrará toda a informação do processador separadamente contando os processadores usando notação zero. Desta forma, contamos simplesmente o número de linhas, pois é mais conveniente quantificá-lo desta forma.

Screen Shot 2022-10-27 at 4 50 49 PM

5-3 Núcleos virtuais

Mostrar o número de núcleos virtuais é muito semelhante ao anterior. Utilizaremos novamente o ficheiro /proc/cpuinfo, mas, neste caso, utilizaremos o comando grep processor /proc/cpuinfo | wc -l. A utilização é praticamente a mesma que a anterior, excepto que em vez de contarmos as linhas físicas de id, iremos contar as linhas do processador. Fazemo-lo desta forma pela mesma razão que anteriormente, a forma de quantificar marcas 0 se houver um processador.

Screen Shot 2022-10-27 at 4 55 48 PM

5-4 Memória RAM

Para exibir a memória do carneiro utilizaremos o comando free para ver num relance informações sobre o carneiro, a peça usada, gratuita, reservada para outros recursos, etc. Para mais informações sobre o comando utilizaremos gratuitamente --help. Utilizaremos gratuitamente --mega porque no assunto existe essa unidade de medida (Megabyte). É importante usar --mega e não -m. Com -m referir-nos-emos à unidade de medida Mebibyte e esta não é a especificada no assunto.

Captura de pantalla 2022-08-02 a las 2 46 10

Uma vez executado este comando, devemos filtrar a nossa pesquisa uma vez que não precisamos de toda a informação que nos dá, a primeira coisa que devemos mostrar é a memória utilizada, para isso utilizaremos o comando awk, o que este comando faz é processar dados com base em ficheiros de texto, ou seja, podemos utilizar os dados que nos interessam no ficheiro X. Finalmente o que faremos é comparar se a primeira palavra de uma linha for igual a "Mem:" imprimiremos a terceira palavra dessa linha que será a memória utilizada. O comando completo em conjunto seria free --mega | awk '$1 == "Mem:" {print $3}'. No script, o valor de retorno deste comando será atribuído a uma variável que será concatenada com outras variáveis, para que tudo se mantenha igual ao especificado no assunto.

Captura de pantalla 2022-08-02 a las 2 55 21

Para obter a memória total, o comando é praticamente o mesmo que o anterior, a única alteração é que em vez de imprimir a terceira palavra da linha, queremos a segunda palavra free --mega | awk '$1 == "Mem:" {print $2}'.

Captura de pantalla 2022-08-02 a las 3 00 02

Por último, precisamos de calcular a % de memória utilizada. O comando é novamente semelhante aos anteriores, a única modificação que faremos está na parte da impressão. Como a operação para obter a percentagem não é exacta, pode dar-nos muitas casas decimais e no assunto apenas 2 são mostradas, pelo que faremos o mesmo, por isso utilizamos %.2f para que apenas 2 casas decimais sejam mostradas. Outra coisa que talvez não saiba é que na impressão para mostrar um % tem de colocar %%. O comando completo free --mega | awk '$1 == "Mem:" {printf("(%.2f%%%%)\n", $3/$2*100)}'.

Captura de pantalla 2022-08-02 a las 3 51 01

5-5 Memória em disco

A fim de ver a memória de disco ocupada e disponível, utilizaremos o comando df que significa "sistema de ficheiros de disco", que é utilizado para obter uma visão completa da utilização do espaço em disco. Como o assunto indica que a memória utilizada é mostrada em MB, utilizaremos a bandeira -m. Em seguida, iremos grep para mostrar apenas linhas contendo "/dev/" e depois grep novamente com a bandeira -v para excluir linhas contendo "/boot". Finalmente utilizaremos o comando awk e acrescentaremos o valor da terceira palavra de cada linha para imprimir o resultado final da soma. O comando completo é o seguinte: df -m | grep "/dev/" | grep -v "/boot" | awk '{memory_use += $3} END {print memory_use}'.

Captura de pantalla 2022-08-03 a las 2 26 15

Para obter o espaço total, utilizaremos um comando muito semelhante. As únicas diferenças serão que os valores que adicionaremos serão os $2 em vez de $3 e a outra diferença é que no assunto aparece o tamanho total em Gb, pelo que, como resultado da soma nos dá o número em Mb devemos transformá-lo em Gb, pois deve dividir-se o número entre 1024 e retirar as casas decimais.

Screen Shot 2023-03-14 at 8 54 34 PM

Finalmente, precisamos de mostrar uma percentagem da memória utilizada. Para tal, mais uma vez, utilizaremos um comando muito semelhante aos dois anteriores. A única coisa que vamos mudar é que vamos combinar os dois comandos anteriores para termos duas variáveis, uma representando a memória utilizada e a outra o total. Uma vez feito isto, faremos uma operação para obter a percentagem use/total*100 e o resultado desta operação será impresso tal como aparece no assunto, entre parênteses e com o símbolo % no final. O comando final é: df -m | grep "/dev/" | grep -v "/boot" | awk '{use += $3} {total += $2} END {printf("(%d%%%%)}, use/total*100}'.

Captura de pantalla 2022-08-03 a las 2 49 33

5-6 Percentagem de utilização de CPU

Para ver a percentagem de utilização de CPU faremos uso do comando vmstat que mostra as estatísticas do sistema, permitindo-nos obter um detalhe geral dos processos, utilização de memória, actividade de CPU, estado do sistema, etc. Poderemos colocar se não houver opção mas no meu caso colocarei um intervalo de segundos de 1 a 4. Também faremos uso do comando tail -1 que nos permitirá produzir apenas a última linha, depois dos 4 gerados apenas a última será impressa. Finalmente, imprimiremos apenas a palavra 15 que é a utilização de memória disponível. O comando completo é o seguinte: vmstat 1 4 | tail -1 | awk '{print $15}'. O resultado deste comando é apenas uma parte do resultado final, uma vez que ainda é necessário fazer algumas operações no guião para o obter correctamente. O que teríamos de fazer é subtrair de 100 o montante devolvido pelo nosso comando, o resultado desta operação será impresso com uma casa decimal e uma % no final e a operação será feita.

Captura de pantalla 2022-08-03 a las 0 33 39

5-7 Último reinício

Para ver a data e hora do nosso último reboot utilizaremos o comando quem com a bandeira -b porque com esta flag veremos a hora do último boot do sistema. Como já aconteceu antes, mostra-nos mais informação do que queremos, por isso filtraremos e mostraremos apenas aquilo em que estamos interessados, para o fazer utilizaremos o comando awk e compararemos se a primeira palavra de uma linha for "sistema" a terceira palavra dessa linha, um espaço e a quarta palavra será impressa no ecrã. Todo o comando seria o seguinte: who -b | awk '$1 == "system" {print $3 " " $4}'.

Captura de pantalla 2022-08-02 a las 12 24 58

5-8 Utilização de LVM

Para verificar se o LVM está ou não activo, utilizaremos o comando lsblk, que nos mostra informação de todos os dispositivos de bloco (discos rígidos, SSD, memórias, etc.) entre toda a informação que nos fornece, podemos ver o lvm no tipo de gestor. Basicamente a condição que procuramos é contar o número de linhas onde "lvm" aparece e se houver mais de 0 imprimimos Sim, se houver 0 imprimimos Não. O comando completo seria: if [ $(lsblk | grep "lvm" | wc -l) -gt 0 ]; then echo yes; else echo no; fi.

Captura de pantalla 2022-08-02 a las 22 38 43

5-9 Conexões TCP

Para olhar para o número de ligações TCP estabelecidas. Utilizaremos o comando ss para substituir o comando obsoleto netstat. Filtrar com a flag -ta para que apenas as ligações TCP sejam mostradas. Finalmente, vamos ver quais são as que estão estabelecidas, uma vez que também existem as que só ouvem, e fechar com wc -l para contar o número de linhas. O comando é o seguinte: ss -ta | grep ESTAB | wc -l.

Captura de pantalla 2022-08-03 a las 0 53 36

5-10 Número de utilizadores

Utilizaremos o comando users que nos mostrará o nome dos utilizadores, sabendo isto, configuraremos wc -w para contar o número de palavras na saída do comando. Todo o comando tem o seguinte aspecto users | wc -w.

Captura de pantalla 2022-08-02 a las 12 33 29

5-11 Endereço IP e MAC

Para obter o endereço do anfitrião utilizaremos o comando Hostname -I e para obter o endereço MAC utilizaremos o comando ip link que é utilizado para mostrar ou modificar as interfaces de rede. Como mais do que uma interface, aparecem os IP's, etc. Utilizaremos o comando grep para procurar o que queremos imprimir no ecrã apenas o que nos é pedido. Para tal, utilizaremos ip link | grep "link/ether" | awk '{print $2}' e, desta forma, imprimiremos apenas o MAC.

Captura de pantalla 2022-08-02 a las 14 53 14

5-12 Número de comandos executados com sudo

Para obter o número de comandos que são executados com o sudo, utilizaremos o comando jornalctl, que é uma ferramenta responsável pela recolha e gestão dos registos do sistema. Depois colocamos _COMM=sudo para filtrar as entradas, especificando o seu caminho. No nosso caso, colocamos _COMM, uma vez que se refere a um script executável. Depois de filtrarmos a pesquisa e só aparecerem os logs do sudo, ainda temos de filtrar um pouco mais porque quando se faz o log in ou log out como root também aparece no log, então para terminar a filtragem colocaremos um grep COMMAND e assim só aparecem as linhas de comando. Finalmente, colocaremos wc -l para que as linhas sejam listadas. O comando completo é o seguinte: journalctl _COMM=sudo | grep COMMAND | wc -l). Para verificar se funciona correctamente, podemos executar o comando no terminal, colocar um comando que inclui o sudo e executar novamente o comando e este deve aumentar o número de execuções de sudo.

Captura de pantalla 2022-08-02 a las 23 50 39

5-13 Resultado total do script

⚠️ Lembre-se de não copiar e colar se não souber como funciona cada comando. ⚠️

#!/bin/bash

# ARCH
arch=$(uname -a)

# CPU PHYSICAL
cpuf=$(grep "physical id" /proc/cpuinfo | wc -l)

# CPU VIRTUAL
cpuv=$(grep "processor" /proc/cpuinfo | wc -l)

# RAM
ram_total=$(free --mega | awk '$1 == "Mem:" {print $2}')
ram_use=$(free --mega | awk '$1 == "Mem:" {print $3}')
ram_percent=$(free --mega | awk '$1 == "Mem:" {printf("%.2f"), $3/$2*100}')

# DISK
disk_total=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{disk_t += $2} END {printf ("%.1fGb\n"), disk_t/1024}')
disk_use=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{disk_u += $3} END {print disk_u}')
disk_percent=$(df -m | grep "/dev/" | grep -v "/boot" | awk '{disk_u += $3} {disk_t+= $2} END {printf("%d"), disk_u/disk_t*100}')

# CPU LOAD
cpul=$(vmstat 1 2 | tail -1 | awk '{printf $15}')
cpu_op=$(expr 100 - $cpul)
cpu_fin=$(printf "%.1f" $cpu_op)

# LAST BOOT
lb=$(who -b | awk '$1 == "system" {print $3 " " $4}')

# LVM USE
lvmu=$(if [ $(lsblk | grep "lvm" | wc -l) -gt 0 ]; then echo yes; else echo no; fi)

# TCP CONNEXIONS
tcpc=$(ss -ta | grep ESTAB | wc -l)

# USER LOG
ulog=$(users | wc -w)

# NETWORK
ip=$(hostname -I)
mac=$(ip link | grep "link/ether" | awk '{print $2}')

# SUDO
cmnd=$(journalctl _COMM=sudo | grep COMMAND | wc -l)

wall "	Architecture: $arch
	CPU physical: $cpuf
	vCPU: $cpuv
	Memory Usage: $ram_use/${ram_total}MB ($ram_percent%)
	Disk Usage: $disk_use/${disk_total} ($disk_percent%)
	CPU load: $cpu_fin%
	Last boot: $lb
	LVM use: $lvmu
	Connections TCP: $tcpc ESTABLISHED
	User log: $ulog
	Network: IP $ip ($mac)
	Sudo: $cmnd cmd"

Script visto de nano ↙️

Captura de pantalla 2022-08-03 a las 3 47 31

Resultado após a execução do script ↙️

Captura de pantalla 2022-08-03 a las 3 46 15

6- Crontab ⏰

🧠 O que é crontab❓É um gestor de processos de fundo. Os processos especificados serão executados no momento que especificar no ficheiro crontab.

Para termos a crontab correctamente configurada, devemos editar o ficheiro crontab com o seguinte comando sudo crontab -u root -e.

No ficheiro devemos adicionar o seguinte comando para que o script seja executado de 10 em 10 minutos */10 * * * * sh /ruta del script.

Captura de pantalla 2022-08-03 a las 4 40 18

Funcionamento de cada parâmetro da crontab:

m ➤ Corresponde ao minuto em que o script será executado, o valor varia de 0 a 59.

h ➤ A hora exacta, o formato de 24 horas é utilizado, os valores variam entre 0 e 23, sendo 0 às 12:00 da meia-noite.

dom ➤ Refere-se ao dia do mês, por exemplo, pode especificar 15 se quiser correr todos os 15 dias.

dow ➤ Significa o dia da semana, pode ser numérico (0 a 7, onde 0 e 7 são domingo) ou as 3 primeiras letras do dia em inglês: mon, tue, tue, wed, thu, fri, sat, sun.

user ➤ Definir o utilizador que vai executar o comando, pode ser o root, ou outro utilizador desde que tenha permissões para executar o script.

command ➤ Refere-se ao comando ou caminho absoluto do script a ser executado.

7- Signature.txt 📝

Para obter a assinatura, a primeira coisa a fazer é desligar a máquina virtual, porque assim que a ligar ou modificar algo, a assinatura mudará.

Captura de pantalla 2022-08-03 a las 4 47 32

O próximo passo será localizar o caminho onde temos o .vdi da nossa máquina virtual.

Screen Shot 2022-08-03 at 4 57 37 AM

Finalmente, faremos shasum nomemáquina.vdi e isto dar-nos-á a assinatura. O resultado desta assinatura é o que teremos de adicionar ao nosso ficheiro signature.txt para mais tarde carregar o ficheiro para o repositório intra. É muito importante não reabrir a máquina, pois isto irá modificar a assinatura. Para as correcções lembrem-se de clonar a máquina para que a possam ligar sem medo de alterar a assinatura.

🧠 O que é shasum❓ Um comando para identificar a integridade de um ficheiro através da soma de verificação do hash SHA-1 de um ficheiro.

Screen Shot 2022-08-03 at 4 58 48 AM

8- Bonus ⭐️

8.1- Particionamento manual do disco

1 ◦ Ao escolher o particionamento do disco, seleccionar o particionamento manual. Desta forma, podemos editar as partições uma a uma.

Screen Shot 2022-10-23 at 4 30 48 PM

2 ◦ Esta secção mostra uma visão geral das nossas divisórias e pontos de montagem. Actualmente não temos divisórias feitas. Para criar uma nova tabela de partições, devemos escolher o dispositivo onde as queremos criar. No nosso caso, escolheremos o único disponível.

Screen Shot 2022-10-23 at 4 35 39 PM

3 ◦ Aceitamos a mensagem de confirmação. Basicamente, avisa-nos que se já existirem partições no dispositivo, elas serão apagadas e que se tivermos a certeza de criar uma nova tabela de partições vazia.

Screen Shot 2022-10-23 at 4 36 08 PM

4 ◦ Uma vez concluída a etapa anterior, podemos ver como aparece a nossa tabela de partição vazia. Agora temos de a configurar, para o fazermos temos de a seleccionar.

Screen Shot 2022-10-23 at 4 36 35 PM

5 ◦ Iremos criar uma nova partição.

Screen Shot 2022-10-23 at 4 36 54 PM

Começaremos por criar esta:

image

6 ◦ Como o assunto indica, o tamanho da divisória deve ser de 500 megabytes.

Screen Shot 2022-10-23 at 4 37 27 PM

7 ◦ Escolher o tipo de divisória. Escolhemos a primária, pois será a partição onde o Sistema Operativo será instalado.

Screen Shot 2022-10-23 at 4 37 38 PM

Breve descrição de todos os tipos de divisórias:

Primária: A única divisória em que um sistema operativo pode ser instalado. Só pode haver 4 partições primárias por disco rígido ou 3 primárias e 1 estendida.

Secundário/Extendido: Foi concebido para quebrar a limitação de 4 partições primárias num único disco físico. Apenas uma dessas partições pode existir por disco, e só pode conter partições lógicas.

Lógica: Ocupa uma parte da partição alargada/primária ou a sua totalidade, que foi formatada com um tipo específico de sistema de ficheiros (no nosso caso utilizaremos ext4) e foi-lhe atribuída uma unidade, pelo que o sistema operativo reconhece as partições lógicas ou o seu sistema de ficheiros. Pode haver um máximo de 23 partições lógicas numa partição alargada, no entanto o SO linux com o qual estamos actualmente a trabalhar reduz para 15, mais do que suficiente para este projecto.

8 ◦ Seleccionaremos o início, pois queremos que a nova partição seja criada no início do espaço disponível.

Screen Shot 2022-10-23 at 4 37 52 PM

9 ◦ A captura de ecrã seguinte mostra os detalhes da divisória. Modificaremos o ponto de montagem a que o assunto especifica.

Screen Shot 2022-10-23 at 4 38 27 PM

10 ◦ Escolhemos boot como ponto de montagem para a nossa partição.

Screen Shot 2022-10-23 at 4 38 49 PM

11 ◦ Concluímos a configuração da partição actual.

Screen Shot 2022-10-23 at 4 39 07 PM

12 ◦ Uma vez concluída a etapa anterior, a partição deve aparecer. Agora devemos criar uma partição lógica com todo o espaço disponível em disco, que não tenha um ponto de montagem e esteja encriptada. Para o fazer, seleccione o espaço livre onde pretende criá-la.

Screen Shot 2022-10-23 at 4 39 37 PM

image

13 ◦ Criar uma nova partição.

Screen Shot 2022-10-23 at 4 39 58 PM

14 ◦ Seleccionar o tamanho máximo.

Screen Shot 2022-10-23 at 4 40 26 PM

15 ◦ Seleccionar o tipo de divisória, neste caso, lógica.

Screen Shot 2022-10-23 at 4 40 53 PM

16 ◦ Modificaremos o ponto de montagem.

Screen Shot 2022-10-23 at 4 41 44 PM

17 ◦ Escolheremos a opção de não a montar.

Screen Shot 2022-10-23 at 4 42 11 PM

18 ◦ Concluímos a configuração da partição actual.

Screen Shot 2022-10-23 at 4 42 41 PM

19 ◦ Iremos criar volumes encriptados. A fim de encriptar a nossa partição.

Screen Shot 2022-10-23 at 4 43 08 PM

20 ◦ Aceitamos a mensagem de confirmação.

Screen Shot 2022-10-23 at 4 43 27 PM

21 ◦ Criamos os volumes encriptados.

Screen Shot 2022-10-23 at 4 43 46 PM

22 ◦ Seleccione a partição que pretende encriptar.

Screen Shot 2022-10-23 at 4 44 06 PM

23 ◦ Concluímos a configuração da partição actual.

Screen Shot 2022-10-23 at 4 44 35 PM

24 ◦ Fazemo-lo porque não queremos criar mais volumes encriptados.

Screen Shot 2022-10-23 at 4 44 49 PM

25 ◦ Aceitamos a mensagem de confirmação. Ela diz-nos que tudo dentro da partição será encriptado e que não deverá demorar muito tempo a terminar.

Screen Shot 2022-10-23 at 4 45 06 PM

26 ◦ Não importa se demora muito ou pouco tempo, clicamos em cancelar, pois não há nada a encriptar, uma vez que a partição está vazia.

Screen Shot 2022-10-23 at 4 45 27 PM

27 ◦ Mais uma vez teremos de definir uma palavra-passe, desta vez será a frase de encriptação. Como mencionei anteriormente, terá de repetir o processo e deverá escrevê-la, pois será importante no futuro.

Screen Shot 2022-10-23 at 4 48 38 PM

28 ◦ Repetimos a frase de encriptação.

Screen Shot 2022-10-23 at 4 49 01 PM

29 ◦ Vamos configurar o gestor de volume lógico.

Screen Shot 2022-10-23 at 4 50 17 PM

30 ◦ Aceitaremos a mensagem de confirmação, uma vez que concordamos em guardar as alterações no disco.

Screen Shot 2022-10-23 at 4 50 42 PM

31 ◦ Iremos criar um novo grupo de volume. Os grupos de volume agrupam as partições.

Screen Shot 2022-10-23 at 4 52 04 PM

32 ◦ Introduza o nome que pretende dar-lhe: LVMGroup como indicado pelo assunto.

Screen Shot 2022-10-23 at 4 52 58 PM

33 ◦ Seleccione a partição onde pretende criar o grupo.

Screen Shot 2022-10-23 at 4 53 22 PM

34 ◦ Agora temos de criar todas as partições lógicas. Como temos de repetir as mesmas acções várias vezes, há capturas que não serão documentadas.

image

Screen Shot 2022-10-23 at 4 53 50 PM

35 ◦ Começaremos por escolher o grupo onde queremos que eles sejam criados. Seleccionamos o único disponível (aquele que acabámos de criar).

Screen Shot 2022-10-23 at 4 54 02 PM

36 ◦ A ordem de criação das unidades lógicas será a mesma que a do assunto, portanto comece pela raiz e termine com var-log. Depois seleccionaremos o nome do volume lógico.

Screen Shot 2022-10-23 at 4 55 42 PM

37 ◦ O tamanho, como o assunto indica, será 10g.

Screen Shot 2022-10-23 at 4 56 21 PM

38 ◦ Repetimos o processo de swap. Apenas mudaremos o nome e o tamanho.

Screen Shot 2022-10-23 at 4 56 49 PM

Screen Shot 2022-10-23 at 4 57 26 PM

Screen Shot 2022-10-23 at 4 57 41 PM

Screen Shot 2022-10-23 at 4 58 11 PM

39 ◦ Repetimos o processo de home. Apenas mudaremos o nome e o tamanho.

Screen Shot 2022-10-23 at 4 58 57 PM

Screen Shot 2022-10-23 at 4 59 07 PM

Screen Shot 2022-10-23 at 5 01 13 PM

Screen Shot 2022-10-23 at 5 04 34 PM

40 ◦ Repetimos o processo de var. Apenas mudaremos o nome e o tamanho.

Screen Shot 2022-10-23 at 5 05 10 PM

Screen Shot 2022-10-23 at 5 05 30 PM

Screen Shot 2022-10-23 at 5 06 03 PM

41 ◦ Repetimos o processo para srv. Apenas mudaremos o nome.

Screen Shot 2022-10-23 at 5 06 14 PM

Screen Shot 2022-10-23 at 5 06 39 PM

Screen Shot 2022-10-23 at 5 06 57 PM

Screen Shot 2022-10-23 at 5 07 13 PM

42 ◦Repetimos o processo para tmp. Apenas mudaremos o nome.

Screen Shot 2022-10-23 at 5 07 34 PM

Screen Shot 2022-10-23 at 5 07 46 PM

Screen Shot 2022-10-23 at 5 07 55 PM

Screen Shot 2022-10-23 at 5 08 19 PM

43 ◦ Finalmente, repetimos o processo para var-log. Apenas mudaremos o nome e o tamanho.

Screen Shot 2022-10-23 at 5 08 34 PM

Screen Shot 2022-10-23 at 5 08 40 PM

Screen Shot 2022-10-23 at 5 08 59 PM

Screen Shot 2022-10-23 at 5 09 28 PM

44 ◦ Uma vez concluídos todos os passos acima referidos, terminaremos a configuração do gestor lógico do volume.

Screen Shot 2022-10-23 at 5 09 51 PM

45 ◦ Agora podemos ver como na secção onde mostram todas as nossas divisórias e espaço livre, aparecem todas as divisórias lógicas que acabámos de criar. Bem, temos de configurar todas elas para seleccionar o sistema de ficheiros que queremos e o ponto de montagem indicado pelo assunto. Mais uma vez, iremos por ordem e seleccionar a primeira que aparece que é home.

Screen Shot 2022-10-23 at 5 10 36 PM

46 ◦ Mostra-nos a configuração da partição. Temos de escolher um sistema de ficheiros, uma vez que actualmente não o tem.

Screen Shot 2022-10-23 at 5 10 55 PM

47 ◦ Escolhemos o sistema de ficheiros Ext4, o sistema de ficheiros mais amplamente utilizado nas distribuições Linux.

Screen Shot 2022-10-23 at 5 11 18 PM

48 ◦ Agora temos de seleccionar o ponto de montagem.

Screen Shot 2022-10-23 at 5 11 44 PM

49 ◦ Seleccione home como indicado no subject.

Screen Shot 2022-10-23 at 5 11 54 PM

50 ◦ Depois de a termos seleccionado, terminaremos a configuração da partição.

Screen Shot 2022-10-23 at 5 12 10 PM

51 ◦ Mais uma vez, estes passos podem tornar-se muito repetitivos, por isso não vou comentar muito. Repetimos tudo na mesma (excepto o ponto de montagem) para root.

Screen Shot 2022-10-23 at 5 13 36 PM

Screen Shot 2022-10-23 at 5 13 53 PM

Screen Shot 2022-10-23 at 5 14 08 PM

Screen Shot 2022-10-23 at 5 14 22 PM

Screen Shot 2022-10-23 at 5 14 39 PM

Screen Shot 2022-10-23 at 5 14 52 PM

52 ◦ Repetir o processo para srv e mudar o ponto de montagem.

Screen Shot 2022-10-23 at 5 15 05 PM

Screen Shot 2022-10-23 at 5 15 31 PM

Screen Shot 2022-10-23 at 5 15 37 PM

Screen Shot 2022-10-23 at 5 15 44 PM

Screen Shot 2022-10-23 at 5 15 52 PM

Screen Shot 2022-10-23 at 5 16 04 PM

53 ◦ Para o swap, abriremos uma excepção, pois o sistema de ficheiros será diferente. Seleccione swap.

Screen Shot 2022-10-23 at 5 16 32 PM

54 ◦ Ao seleccionar o sistema de arquivo, deixe-o na swap area.

Screen Shot 2022-10-23 at 5 16 41 PM

55 ◦ Uma vez concluída a etapa anterior, terminaremos a configuração da partição.

Screen Shot 2022-10-23 at 5 16 59 PM

Screen Shot 2022-10-23 at 5 17 09 PM

56 ◦ Agora faremos o mesmo que antes, mas agora fá-lo-emos com o tmp e mudaremos o ponto de montagem.

Screen Shot 2022-10-23 at 5 17 41 PM

Screen Shot 2022-10-23 at 5 17 49 PM

Screen Shot 2022-10-23 at 5 18 01 PM

Screen Shot 2022-10-23 at 5 18 08 PM

Screen Shot 2022-10-23 at 5 18 24 PM

Screen Shot 2022-10-23 at 5 18 40 PM

57 ◦ Repetimos novamente o processo para var, alterando o ponto de montagem.

Screen Shot 2022-10-23 at 5 19 13 PM

Screen Shot 2022-10-23 at 5 19 21 PM

Screen Shot 2022-10-23 at 5 19 28 PM

Screen Shot 2022-10-23 at 5 19 36 PM

Screen Shot 2022-10-23 at 5 19 51 PM

Screen Shot 2022-10-23 at 5 20 00 PM

58 ◦ Finalmente, repetimos o processo de var-log neste, teremos de entrar manualmente no ponto de montagem.

Screen Shot 2022-10-23 at 5 20 23 PM

image

image

image

image

image

image

59 ◦ Assim que tivermos completado todas as etapas acima, estamos quase a terminar, temos de clicar em Terminar partição para guardar todas as alterações no disco.

image

60 ◦ Aceitar a mensagem e as alterações serão guardadas. Certificar-se de que todas as partições são as mesmas que na imagem do ecrã.

image

61 ◦ Seleccionamos a opção No porque não precisamos de quaisquer pacotes adicionais.

Captura de pantalla 2022-07-13 a las 20 05 42

62 ◦ Nós escolhemos o nosso país.

Captura de pantalla 2022-07-13 a las 20 14 23

63 ◦ Escolhemos deb.debian.org, pois é a nossa região onde teremos uma melhor conexão.

Captura de pantalla 2022-07-13 a las 20 15 00

64 ◦ Deixe esta opção vazia e clique directamente em Continue.

Captura de pantalla 2022-07-13 a las 20 17 24

65 ◦ Seleccionamos a opção No porque não queremos que os programadores vejam as nossas estatísticas, mesmo que sejam anónimas.

Captura de pantalla 2022-07-13 a las 20 21 54

66 ◦ Remova todas as opções de software (com a barra de espaço) e clique em Continue.

Captura de pantalla 2022-07-13 a las 20 24 17

67 ◦ Seleccione Yes para instalar GRUB boot no disco rígido.

Captura de pantalla 2022-07-13 a las 20 26 24

68 ◦ Escolha o dispositivo para a instalação do bootloader /dev/sda (ata_VBOX_HARDDISK).

Captura de pantalla 2022-07-13 a las 20 35 46

69 ◦ Clique em Continue para terminar a instalação.

Captura de pantalla 2022-07-13 a las 20 39 30

70 ◦ Uma vez terminada a instalação do debian, temos de configurar a nossa máquina virtual.

Clique aqui para ir para a configuração da máquina virtual ⚙️

8.2 - Wordpress e configuração de serviços 🌐

Lighttpd

🧠 O que é Lighttpd❓ É um servidor web concebido para ser rápido, seguro, flexível, e compatível com as normas. É optimizado para ambientes onde a velocidade é muito importante. Isto é porque consome menos CPU e RAM do que outros servidores.

1 ◦ Instalação de pacotes lighttpd.

Screen Shot 2022-10-27 at 4 09 24 AM

2 ◦ Permitimos ligações através da porta 80 com o comando sudo ufw allow 80.

Screen Shot 2022-10-27 at 4 15 24 AM

3 ◦ Verificamos que realmente permitimos. O porto 80 e permitir deve aparecer.

Screen Shot 2022-10-27 at 4 15 45 AM

4 ◦ Adicione a regra que inclui a porta 80. Se não se lembrar como adicionar regras no reencaminhamento de portos. Configuração da máquina → Rede → Encaminhamento de Porta → Espelhar a captura.

Screen Shot 2022-11-18 at 2 49 56 PM

WordPress

🧠 O que é Wordpress❓ É um sistema de gestão de conteúdos centrado na criação de qualquer tipo de página web.

1 ◦ Para instalar a última versão do WordPress temos primeiro de instalar wget e zip. Para o fazer, usaremos o seguinte comando sudo apt install wget zip.

🧠 O que é wget❓ É uma ferramenta de linha de comando utilizada para descarregar ficheiros a partir da web.

🧠 O que é zip❓ Este é um utilitário de linha de comando para comprimir e descomprimir ficheiros em formato ZIP.

Screen Shot 2022-11-18 at 2 45 11 PM

2 ◦ Uma vez instalados os pacotes, devemos localizar-nos na pasta /var/www/ com o comando cd, aceder-lhe-emos. cd /var/www.

Screen Shot 2022-11-18 at 2 45 53 PM

3 ◦ Uma vez no caminho /var/wwww/ temos de descarregar a última versão do WordPress. Como a minha língua materna é o espanhol, vou seleccionar a versão mais recente em espanhol. Usaremos o seguinte comando: sudo wget https://es.wordpress.org/latest-es_ES.zip.

Screen Shot 2022-11-18 at 2 47 00 PM

4 ◦ Descompacte o ficheiro que acabou de descarregar com o comando sudo unzip latest-es_ES.zip.

Screen Shot 2022-11-18 at 2 47 25 PM

5 ◦ Vamos renomear a pasta html e chamar-lhe html_old. sudo mv html/ html_old/.

Screen Shot 2022-11-18 at 2 48 21 PM

6 ◦ Agora vamos renomear a pasta wordpress e chamar-lhe html. sudo mv wordpress/ html.

Screen Shot 2022-11-18 at 2 48 49 PM

7 ◦ Finalmente, colocaremos estas permissões na pasta html. Utilizaremos o comando sudo chmod -R 755 html. O número 7 indica que o proprietário tem permissões de leitura, escrita e execução. O número 5 indica que o grupo e outros só têm permissões de leitura e execução.

Screen Shot 2022-11-18 at 2 49 17 PM

Mariadb

🧠 O que é MariaDB❓ É uma base de dados. É utilizada para diversos fins, tais como armazenamento de dados, comércio electrónico, funções a nível empresarial e aplicações de registo.

1 ◦ Vamos instalar os pacotes com o comando sudo apt install mariadb-server

Screen Shot 2022-10-27 at 4 17 09 AM

2 ◦ Como a configuração padrão deixa a sua instalação MariaDB insegura, utilizaremos um script fornecido pelo pacote mariadb-server para restringir o acesso ao servidor e remover contas não utilizadas. Iremos executar o script com o seguinte comando sudo mysql_secure_installation. Assim que executarmos o guião, ele irá fazer-nos uma série de perguntas, perguntando se queremos mudar para a autenticação da tomada Unix. Como já temos uma conta raiz protegida, iremos escrever N.

Switch to unix_socket autentication? → N
Change the root password? → N
Remove anonymous users? → Y
Disallow root login remotely? → Y
Remove test database and acces to it? → Y
Reaload privilege tables now? → Y

Screen Shot 2022-10-27 at 4 19 25 AM

Screen Shot 2022-10-27 at 1 00 20 AM

Screen Shot 2022-10-27 at 1 00 40 AM

Switch to unix_socket autentication? Escolhemos N porque não queremos que mude para autenticação de tomada Unix porque já temos uma conta raiz protegida.

Change the root password? Escolhemos N. Não queremos alterar a palavra-passe do utilizador de raiz. Por defeito não temos palavra-passe, mas em mariadb não é realmente root, uma vez que temos de lhe dar permissões de administrador.

Remove anonymous users? Escolhemos Y. Por defeito quando se instala mariadb tem um utilizador anónimo, o que permite a qualquer pessoa entrar no mariadb sem ter de criar a sua própria conta de utilizador. Isto é concebido para fins de teste e para tornar a instalação mais suave. Quando deixamos o ambiente de desenvolvimento e queremos mudar para um ambiente de produção, temos de remover os utilizadores anónimos.

Disallow root login remotely? Escolhemos Y. A desactivação do login remoto de raiz impedirá qualquer pessoa de adivinhar a palavra-passe de raiz. Só nos será possível ligar à raiz a partir do anfitrião local.

Remove test database and acces to it? Escolhemos Y. Isto irá remover a base de dados de testes e quaisquer utilizadores que tenham acesso à mesma.

Reaload privilege tables now? Escolhemos Y. Isto irá recarregar as tabelas de permissão MySQL para que as alterações às definições de segurança entrem em vigor imediatamente.

1 ◦ Uma vez terminada a instalação da mariadb devemos criar a base de dados e o utilizador para o WordPress. Primeiro temos de aceder à mariadb.

Screen Shot 2023-03-31 at 12 16 28 AM

2 ◦ Criamos uma base de dados para o WordPress. No meu caso, vou chamar-lhe wp_database. Vou fazer tudo isto com o comando CREATE DATABASE wp_database;.

Screen Shot 2023-03-31 at 9 53 17 PM

3 ◦ Para garantir que a base de dados para o WordPress foi criada, podemos visualizar todas as bases de dados existentes com o comando SHOW DATABASES;.

Screen Shot 2023-03-31 at 9 54 04 PM

4 ◦ A seguir, temos de criar um utilizador na base de dados. Utilizaremos o comando CREATE USER 'gemartin'@'localhost' IDENTIFIED BY '12345';.

Screen Shot 2023-03-31 at 9 56 59 PM

5 ◦ Ligamos o novo utilizador à nossa base de dados de modo a conceder-lhe as permissões necessárias para poder trabalhar. Utilizaremos o comando GRANT ALL PRIVILEGES ON wp_database.* TO 'gemartin'@'localhost';.

Screen Shot 2023-03-31 at 10 01 32 PM

6 ◦ Actualizamos as permissões para que as alterações entrem em vigor com o comando FLUSH PRIVILEGES;.

Screen Shot 2023-03-31 at 10 02 01 PM

7 ◦ Uma vez concluída a etapa anterior, podemos sair de mariadb.

Screen Shot 2023-04-01 at 10 43 40 PM

PHP

🧠 O que é PHP❓ É uma linguagem de programação. É utilizada principalmente para desenvolver aplicações web dinâmicas e sites interactivos. O PHP corre no lado do servidor.

1 ◦ Instalamos os pacotes necessários para poder executar aplicações web escritas em linguagem PHP e que necessitam de se ligar a uma base de dados MySQL. Executamos o seguinte comando sudo apt install php-cgi php-mysql.

Screen Shot 2023-03-31 at 10 07 04 PM

Configuração WordPress

1 ◦ Aceder ao directório /var/wwww/html com o comando: cd /var/www/html

Screen Shot 2023-04-01 at 8 26 46 PM

2 ◦ Copie o ficheiro wp-config-sample.php e renomeie-o wp-config.php

Screen Shot 2023-04-01 at 8 28 42 PM

3 ◦ Uma vez alterado o seu nome, editaremos o ficheiro wp-config.php nano wp-config.php e modificaremos os seguintes valores.

Screen Shot 2023-04-01 at 8 42 25 PM

É necessário substituí-los pelos valores que definimos anteriormente quando criámos a base de dados e o utilizador, para que o WordPress possa ligar-se e fazer uso dela.

Screen Shot 2023-04-01 at 8 46 08 PM

4 ◦ Permitimos o módulo fastcgi-php no Lighttpd para melhorar o desempenho e a velocidade das aplicações web no servidor. sudo lighty-enable-mod fastcgi

image

5 ◦ Permitimos o módulo fastcgi-php no Lighttpd para melhorar o desempenho e a velocidade das aplicações web baseadas em PHP no servidor. sudo lighty-enable-mod fastcgi-php

image

6 ◦ Actualizamos e aplicamos alterações à configuração com o comando sudo service lighttpd force-reload.

image

7 ◦ Uma vez completados os passos anteriores, podemos voltar ao nosso navegador e digitar localhost. Deverá ver o seguinte:

Screen Shot 2023-04-01 at 8 49 00 PM

Screen Shot 2023-04-01 at 8 00 38 PM

8 ◦ Temos de preencher todos os campos. No meu caso, coloquei o seguinte:

Screen Shot 2023-04-01 at 8 02 29 PM

9 ◦ Uma vez preenchidos todos os campos, devemos clicar em Install WordPress e teremos terminado a instalação. Verá o próximo separador. Agora o WordPress pode criar as tabelas e descarregar todos os dados que necessita para trabalhar na base de dados que lhe atribuímos.

Screen Shot 2023-04-01 at 8 02 52 PM

10 ◦ Se voltarmos a aceder ao nosso localhost a partir do browser, podemos ver a nossa página funcional.

Screen Shot 2023-04-01 at 9 02 51 PM

11 ◦ Se quisermos aceder ao painel de administração para fazer alterações ao nosso site, teremos de colocar no browser localhost/wp-admin e iniciar sessão com a nossa conta

Screen Shot 2023-04-01 at 9 05 41 PM

Screen Shot 2023-04-01 at 9 06 44 PM

12 ◦ Uma vez iniciada a sessão, pode modificar o que quiser. A personalização da página é opcional, uma vez que não está especificada no assunto deste guia, não a trataremos.

Screen Shot 2023-04-01 at 9 07 38 PM

8.3 - Serviço adicional ➕

LiteSpeed ⚡️

🧠 O que é LiteSpeed❓ É um software proprietário de servidor web. É o quarto servidor web mais popular, e estima-se que seja utilizado por 10% dos sítios web.

1 ◦ Antes de instalar qualquer software, é importante assegurar que o sistema está actualizado.

sudo apt update

Screen Shot 2022-11-25 at 2 59 17 AM

sudo apt upgrade

Screen Shot 2022-11-25 at 3 00 18 AM

2 ◦ Por defeito, o OpenLiteSpeed está disponível no repositório base do Debian 11. Assim, deve executar o seguinte comando para adicionar o repositório OpenLiteSpeed ao seu sistema Debian:

wget -O - https://repo.litespeed.sh | sudo bash

Como o comando é longo, liguei-me via ssh.

Screen Shot 2022-11-25 at 3 05 49 AM

3 ◦ Mais uma vez, actualizamos os pacotes e instalamos o OpenLiteSpeed.

sudo apt update

Screen Shot 2022-11-25 at 3 07 31 AM

sudo apt install openlitespeed

Screen Shot 2022-11-25 at 3 11 22 AM

4 ◦ A password predefinida para OpenLiteSpeed é 123456. Alteraremos a palavra-passe para algo mais seguro com o seguinte comando.

sudo /usr/local/lsws/admin/misc/admpass.sh

Screen Shot 2022-11-25 at 3 12 33 AM

5 ◦ Configuramos a firewall para permitir ligações através das portas 8088 e 7080. Depois adicionamos as regras no reencaminhamento de portas.

sudo ufw allow 8088/tcp

Screen Shot 2022-11-25 at 3 15 39 AM

sudo ufw allow 7080/tcp

Screen Shot 2022-11-25 at 3 15 59 AM

sudo ufw reload

Screen Shot 2022-11-25 at 3 16 18 AM

Regras de encaminhamento de portos.

Screen Shot 2022-11-25 at 3 16 52 AM

6 ◦ Uma vez concluída a etapa anterior, podemos ligar-nos. Colocaremos no motor de busca do nosso navegador localhost:7080 fornecemos as nossas credenciais de login e teremos acesso a tudo.

Screen Shot 2022-11-25 at 3 18 53 AM

Screen Shot 2022-11-24 at 8 49 24 PM




Este tutorial tem tido muito trabalho, se acharem que tem sido útil ficaria muito grato por ter starred 🌟 para que possa ser partilhado e ajudar mais estudantes. 👨🏻‍🎓❤️




9- Guia de correcção ✅

Screen Shot 2023-01-22 at 5 13 44 PM

Screen Shot 2023-01-22 at 5 14 52 PM

Screen Shot 2023-01-22 at 5 15 10 PM

Screen Shot 2023-01-22 at 5 15 22 PM

9-1 Respostas de avaliação 💯

▪️ O que é uma máquina virtual?

Software que simula um sistema informático e pode executar programas como se fosse um computador real. Permite a criação de múltiplos ambientes simulados ou recursos dedicados a partir de um único sistema de hardware físico.

▪️ Porque escolheu Debian❓

Isto é uma coisa pessoal para todos, a minha opinião: o próprio assunto explica que é mais fácil fazê-lo no Debian e se procurar documentação/tutoriais há muitos e todos eles foram feitos no debian.

▪️ Diferenças básicas entre Rocky e Debian

182516961-c3e4da77-2db8-4737-a68f-27b033908705 (1) (1)

▪️ Qual é a finalidade das máquinas virtuais❓

Visa fornecer uma plataforma de hardware e um ambiente de execução independente do sistema operativo, que esconde os detalhes da plataforma subjacente e permite que um programa seja sempre executado da mesma forma em qualquer plataforma.

▪️ Diferenças entre apt e aptitude ↙️

Aptitude é uma versão melhorada do apt. APT é um gestor de pacotes de nível inferior e aptitude é um gestor de pacotes de nível superior. Outra grande diferença é a funcionalidade oferecida por ambas as ferramentas. O Aptitude oferece uma melhor funcionalidade em comparação com o apt-get. Ambos são capazes de fornecer os meios necessários para efectuar a gestão de pacotes. Contudo, se estiver à procura de uma abordagem mais rica em funcionalidades, o Aptitude deve ser ele.

▪️ O que é APPArmor❓

Um módulo de segurança no kernel do Linux que permite ao administrador do sistema restringir as capacidades de um programa.

▪️ O que é LVM❓

É um gestor de volume lógico. Fornece um método de atribuição de espaço em dispositivos de armazenamento de massa, que é mais flexível do que os esquemas convencionais de partição para armazenamento de volumes.

9-2 Comandos de avaliação ⌨️

1 ◦ Verificar se não há nenhuma interface gráfica em uso.

Utilize o comando ls /usr/bin/*session e deverá obter o mesmo resultado que na imagem do ecrã. Se vir algo diferente, estará a utilizar uma interface gráfica.

Screen Shot 2022-11-25 at 12 00 02 AM

2 ◦ Verificar se o serviço UFW está a ser utilizado.

sudo ufw status

Screen Shot 2022-11-24 at 1 25 06 AM

sudo service ufw status

Screen Shot 2022-11-24 at 1 25 37 AM

3 ◦ Verificar se o serviço SSH está a ser utilizado.

sudo service ssh status

Screen Shot 2022-11-24 at 1 26 43 AM

4 ◦ Verifique se está a utilizar o sistema operativo Debian ou Centos.

uname -v o uname --kernel-version

Screen Shot 2022-11-24 at 1 37 17 AM

5 ◦ Verifique se o seu utilizador está nos grupos "sudo" e "user42".

getent group sudo

getent group user42

Screen Shot 2022-11-24 at 3 26 30 AM

6 ◦ Criar um novo utilizador e mostrar que segue a política de palavra-passe que criámos.

sudo adduser name_user e introduzir uma palavra-passe que siga a política.

Screen Shot 2022-11-24 at 3 29 45 AM

7 ◦ Criamos um novo grupo chamado "evaluating".

sudo addgroup evaluating

Screen Shot 2022-11-24 at 3 30 47 AM

8 ◦ Acrescentar o novo utilizador ao novo grupo.

sudo adduser name_user evaluating

Screen Shot 2022-11-24 at 3 33 08 AM

Para verificar se foi introduzido correctamente.

Screen Shot 2022-11-24 at 3 33 31 AM

9 ◦ Verificar se o nome da máquina está correcto para o login42.

Screen Shot 2022-11-24 at 3 37 27 AM

10 ◦ Modifique o nome de anfitrião para substituir o seu login pelo login do avaliador. Neste caso, substituí-lo-ei por estudante42.

sudo nano /etc/hostname e substituir o nosso login pelo novo.

Screen Shot 2022-11-24 at 3 42 30 AM

Screen Shot 2022-11-24 at 3 43 47 AM

sudo nano /etc/hosts e substituir o nosso login pelo novo.

Screen Shot 2022-11-24 at 3 44 08 AM

Screen Shot 2022-11-24 at 3 44 35 AM

Reiniciar a máquina.

Screen Shot 2022-11-24 at 3 44 58 AM

Uma vez que tenhamos entrado novamente no sistema, podemos ver que o nome do anfitrião foi alterado correctamente.

Screen Shot 2022-11-24 at 3 46 30 AM

11 ◦ Verificar se todas as partições estão como indicado no subject.

lsblk

Screen Shot 2022-11-24 at 3 52 17 AM

12 ◦ Verificar se o sudo está instalado.

which sudo

Screen Shot 2022-11-24 at 4 00 42 AM

Utilizar o comando which não é realmente uma boa prática, uma vez que nem todos os pacotes são encontrados nos caminhos que são pesquisados, no entanto, para avaliação é melhor, uma vez que é um comando simples e fácil de aprender. Para uma melhor utilização, faremos uso do seguinte comando:

dpkg -s sudo

Screen Shot 2022-11-24 at 4 02 13 AM

13 ◦ Introduzir o novo utilizador no grupo sudo.

sudo adduser name_user sudo

Screen Shot 2022-11-24 at 5 02 24 AM

Verificamos se está no grupo.

Screen Shot 2022-11-24 at 5 02 39 AM

14 ◦ Mostra a aplicação das regras impostas ao sudo pelo subject.

Screen Shot 2022-11-24 at 5 12 02 AM

Screen Shot 2022-11-24 at 5 12 17 AM

15 ◦ Mostra que o caminho /var/log/sudo/ existe e contém pelo menos um ficheiro, no qual se deve ver um histórico dos comandos utilizados com o sudo.

Screen Shot 2022-11-24 at 5 17 54 AM

Screen Shot 2022-11-24 at 5 19 07 AM

Executar um comando com sudo e verificar se o ficheiro está actualizado.

Screen Shot 2022-11-24 at 5 23 08 AM

Screen Shot 2022-11-24 at 5 23 21 AM

16 ◦ Verificar se o programa UFW está instalado na máquina virtual e verificar se está a funcionar correctamente.

dpkg -s ufw

Screen Shot 2022-11-24 at 5 24 47 AM

sudo service ufw status

Screen Shot 2022-11-24 at 5 25 49 AM

17 ◦ Listar as regras activas na UFW se a parte de bónus não for feita, apenas a regra para a porta 4242 deve aparecer.

sudo ufw status numbered

Screen Shot 2022-11-24 at 5 27 50 AM

18 ◦ Criar uma nova regra para o porto 8080. Verifique se foi adicionada às regras activas e depois pode apagá-la.

sudo ufw allow 8080 para o criar

Screen Shot 2022-11-24 at 5 31 35 AM

sudo ufw status numbered

Screen Shot 2022-11-24 at 5 31 59 AM

Para eliminar a regra, devemos usar o comando sudo ufw delete num_rule

Screen Shot 2022-11-24 at 5 33 15 AM

Verificamos se foi eliminada e vemos o número da regra seguinte a ser eliminada.

Screen Shot 2022-11-24 at 5 33 41 AM

Eliminamos novamente a regra.

Screen Shot 2022-11-24 at 5 34 03 AM

Verificamos que só nos restam as regras necessárias no assunto.

Screen Shot 2022-11-24 at 5 34 11 AM

19 ◦ Verificar se o serviço ssh está instalado na máquina virtual, se funciona correctamente e se só funciona no porto 4242.

which ssh

Screen Shot 2022-11-24 at 5 37 25 AM

sudo service ssh status

Screen Shot 2022-11-24 at 5 40 34 AM

20 ◦ Utilize ssh para iniciar sessão com o utilizador recém-criado. Certifique-se de que não pode utilizar o ssh com o utilizador de raiz.

Tentamos ligar-nos via ssh com o utilizador raiz, mas não temos permissões.

Screen Shot 2022-11-24 at 5 44 07 AM

Ligamo-nos via ssh ao novo utilizador com o comando ssh newuser@localhost -p 4242

Screen Shot 2022-11-24 at 5 48 06 AM

21 ◦ Modificar o tempo de execução do guião de 10 minutos para 1 minuto.

Executar o seguinte comando para modificar o ficheiro crontab sudo crontab -u root -e

Screen Shot 2022-11-24 at 6 30 57 AM

Modificamos o primeiro parâmetro, em vez de 10 alteramo-lo para 1.

Screen Shot 2022-11-24 at 6 31 44 AM

22 ◦ Finalmente, fazer o guião parar de funcionar quando o servidor tiver começado, mas não modificar o guião.

sudo /etc/init.d/cron stop

Screen Shot 2022-11-24 at 3 25 53 PM

Se quisermos que volte a funcionar:

sudo /etc/init.d/cron start

Screen Shot 2022-11-24 at 3 27 38 PM

10- Tester 🆗

Verifique se não deixou nada de fora! Testador próprio para verificar se a instalação e a configuração foram bem sucedidas.

AQUI

Screen Shot 2023-03-09 at 3 40 54 AM

Autor ✍🏼

100px
gemartin

Intra 42

Contacto 📥

Contacte-me se pensa que posso melhorar o tutorial! Pode ajudar futuros estudantes! 😁

◦ Email: gemartin@student.42barcelona.com

◦ Linkedin: https://www.linkedin.com/in/gemartin99/

Talvez esteja interessado!

- Para ver o meu progresso no common core 42 ↙️

AQUI

- O meu perfil na intranet 42 ↙️

AQUI