Configurando nosso servidor na nuvem¶
Nesse passo a passo vamos dar os primeiros passos na configuração de um servidor na nuvem usando a empresa Digital Ocean e tem como objetivo:
- Explicar o que é VPS
- Explicar o que é SSH
- Criando seu servidor na Digital Ocean
- Criando Chave Pública
- Configurando SSH para acesso sem chave
- Alterando porta padrão para acesso
- Permitir acesso via VPN
Referência: Esse material foi inspirado em uma apresentação que fiz para um antigo time em que eu participei e o link está disponivel: https://github.com/greenmind-sec/init-cloud/
Antes de começar¶
O que é¶
-
VPS (Virtual Private Server)
DEFINIÇÂO VPS
-
SSH (Secure Shell)
DEFINIÇÂO SSH
Criando Digital Ocean¶
- Criando uma instância na Digital Ocean.
Com a nossa conta já criada, vamos clicar no botão que temos no topo.
Ou também podemos clicar ao lado esquerdo para realizar a criação da Droplets.
Criando Droplet¶
Inicialmente temos as seguintes opções:
- Distribuições
- Containers de distribuições
- Marketplace
- Backups
- Imagem customizada
Vamos escolher distribuição e ir para a Ubuntu 20.04 (LTS) X64.
Escolhendo plano¶
Tome cuidado com o plano, pois inicialmente ele inicia com um valor alto.
Vamos usar uma droplet com os seguintes detalhes:
- 4 GB
- 2 CPU Intel
- 80 GB NVMe SSD
- 4 TB transferência
Essas configurações foram baseadas na documentação oficial que está disponivel no site do CERT.BR - Tutorial para a instalação de MISP em Sistemas Ubuntu
Agora vamos escolher a localização que será hospedado o servidor.
Criando senha¶
Também podemos configurar uma senha para o servidor e posteriormente realizar as configurações necessárias para a segurança.
Depois de adicionar uma senha vamos ter todos esses checks na cor verde.
Adicionando backup¶
É recomendado usar o backup usado pela digitalocean, e nos ajuda realizando toda semana o backup da imagem.
Isso tem o valor de 4.80 dolar por mês.
Adicionando nome ao host¶
Vamos inserir um nome que vamos usar em nosso servidor.
Finalizando¶
Podemos agora clicar em Create Droplet para finalizar a criação de nosso VPS.
Após clicar vamos ser redirecionados e ver um load.
Podemos agora acessar nosso site.
Criando chave pública e adicionando SSH Key¶
Vamos criar uma chave pública, com essa chave é usada para o login no servidor e assim não precisando adicionar senha.
Vamos adicionar mais tarde uma chave de forma manual.
Vamos criar uma chave¶
Em nossa máquina local que vamos usar para criar uma chave pública, vamos criar usando o seguinte comando.
ssh-keygen
Lembrando que quando geramos a chave, ela vai ser gerada no diretório atual.
Nesse caso eu gerei em um diretório meu que é o:
/home/greenmind/Documentos/MISP
Podemos ver a chave criada no diretório atual.
Adicionando chave¶
Vamos copiar a chave usando do diretório em que copiamos, nesse caso é o diretório.
Vamos até o diretório chamado.
cd /home/greenmind/Documentos/MISP
Agora vamos ver a nossa chave para adicionarmos no nosso servidor.
SSH¶
O que é¶
- O que é o Secure Shell (SSH)
Instalação¶
- Instalando no Linux
Veja como podemos instalar o openssh client
$ sudo apt-get install openssh-client
Primeiro Conexão¶
Já com o openssh-client instalado em nossa máquina, vamos pegar o endereço IP da máquina e realizar o teste.
Vamos imaginar que nosso IP é**134.122.126.167**.
Inicialmente vamos realizar a primeira conexão com root para realizar as configurações necessárias.
Vamos adicionar a senha criada anteriormente na criação do servidor na DigitalOcean e logar no servidor.
Criando um novo usuário¶
Vamos adicionar um novo usuário.
# adduser misp
Vamos criar nosso usuário para o sistema e assim evitar o uso do root.
Adicionando ao grupo sudo¶
Por motivos de segurança não é recomendado usar o root e assim podemos usar o sudo.
Vamos instalar o sudo.
# apt-get install sudo
Vamos adicionar ele ao grupo sudo
# adduser misp sudo
Não podemos esquecer de ver se o diretório ~/.ssh está criado, senão vamos criar usando o comando:
$ mkdir ~/.ssh
O ~/ é usado para se referenciar ao diretório /home/ do usuário usado, no caso do nosso usuário misp ficaria assim /home/misp/.
Adicionando Public Key¶
Vamos logar no usuário misp e realizar a configuração para adicionar a public-key.
Vamos até o arquivo authorized_keys.
$ nano /home/misp/.ssh/authorized_keys
Vamos copiar a chave pública de nossa máquina para a máquina VPS que está na cloud.
Liberando acesso via public-key¶
Será necessário abrir o arquivo usando um editor para realizar algumas modificações.
$ sudo nano /etc/ssh/sshd_config
Em seguida para que as configurações sejam efetuadas podemos realizar o restart do serviço.
$ sudo service ssh restart
Vamos deixar as configurações iguais à imagem acima.
Caso tenha dúvidas segue o passo a passo:
Vamos entrar no arquivo /etc/ssh/ssh_config e editar ele.
- Retirando login senha
- Inserindo login por chave pública
Podemos descomentar a linha PasswordAuthentication yes e mudar para no.
- Retirando login root
-
Vamos alterar de PermitRootLogin yes para PermitRootLogin no.
-
Perigos de logando por senha
Logando por senha você pode ser hackeado ou até receber um ataque de brute.
Depois de realizar todas as configurações vamos realizar um restart no serviço
$ sudo service ssh restart
Logando no sistema¶
Podemos agora logar no sistema usando o usuário misp.
ssh [email protected] -i lab-misp