Para administradores de sistema, Webmin é uma dádiva. É um painel de controle baseado na web que permite gerenciar uma máquina Linux remotamente, usando uma interface moderna baseada na web. O Webmin pode alterar várias configurações do sistema dinamicamente, incluindo servidores web e bancos de dados. Ele também pode gerenciar usuários, grupos e pacotes de software.
Neste guia, vamos orientá-lo através de as etapas de instalação e configuração do Webmin no Ubuntu 18.04.
Webmin no Ubuntu
Embora o Webmin seja uma ferramenta popular para administradores de sistema, ele não está disponível nos repositórios oficiais do Ubuntu . Felizmente, o Webmin possui um PPA dedicado para o Ubuntu. Ele se encarrega de manter o software atualizado. Aqui estão os pré-requisitos que você precisará antes de começarmos:
- Você precisará de um servidor Ubuntu com um usuário sudo não-root e um firewall. Confira como instalar seu servidor Ubuntu aqui, e como configurar seu usuário sudo aqui.
- Devido à natureza do Webmin, é importante proteger o acesso de mãos indesejadas. Por padrão, o Webmin vem com uma série de recursos de segurança. Neste guia, no entanto, o Webmin será protegido usando o Let’s Encrypt e o Apache. Siga este tutorial para instalar seu servidor Apache.
- Para o tutorial a seguir, você também precisa ter um FQDN com um registro DNS apontando para o endereço IP do servidor.
- Você também precisará do Certbot, que você pode acompanhar como instalar a partir do Passo 1 do nosso tutorial de Como Proteger o Apache com Let’s Encrypt no Ubuntu 18.04. Você utilizará o Certbot para criar o certificado TLS/SSL para o Webmin.
Agora, vamos começar!
Instalando o Webmin no Ubuntu
Para instalar o Webmin, precisamos adicionar o PPA do Webmin. Primeiro, certifique-se de que o sistema contém todas as dependências necessárias:
|
1 |
sudo apt update && sudo apt install software-properties-common apt-transport-https wget |
Em seguida, importe a chave PGP do Webmin:
|
1 |
wget -q http://www.webmin.com/jcameron-key.asc -O- | sudo apt-key add - |
Finalmente, adicione o repositório do Webmin:
|
1 |
sudo add-apt-repository "deb [arch=amd64] http://download.webmin.com/download/repository sarge contrib" |
O APT agora pode reconhecer o PPA do Webmin. Atualize o cache do APT:
|
1 |
sudo apt update |
Finalmente, instale o Webmin:
|
1 |
sudo apt install webmin |
Assim que a instalação for concluída, será exibido algo como isto, indicando que o Webmin pode ser acessado diretamente através do seguinte link. Neste exemplo, está usando o hostname do meu sistema:
|
1 |
https://localhost:10000 |
Ele afirma que para ter controle total sobre o sistema usando o Webmin, o usuário precisa saber a senha do root. No entanto, isso não é suficiente para proteger algo tão sensível quanto o Webmin. Nós o colocaremos atrás do servidor web Apache com um certificado TLS/SSL válido, como mencionamos anteriormente.
Securing Webmin
Para acessar o Webmin, o método padrão é ter a porta 10000 aberta. No nosso caso, isso não é o ideal. Para resolver o problema, vamos configurar um host virtual do Apache como um proxy para o servidor do Webmin rodando na porta 10000. Em seguida, o host virtual será protegido usando um certificado TLS/SSL obtido do Let’s Encrypt. Este procedimento requer que você tenha instalado e configurado corretamente o servidor web Apache e o Certbot.
- Criando um Novo Host Virtual do Apache
O novo host virtual será definido pelo seu arquivo de configuração. Abra o arquivo de configuração no editor de texto de sua escolha:
|
1 |
sudo vim /etc/apache2/sites-available/my_domain.conf |
No arquivo, adicione as seguintes linhas:
|
1 2 3 4 5 6 |
<VirtualHost *:80> ServerAdmin <email> ServerName <domain> ProxyPass / http://localhost:10000/ ProxyPassReverse / http://localhost:10000/ </VirtualHost> |
Diz ao Apache para passar as requisições que chegam ao host virtual para o servidor Webmin no seguinte local. Também garante que os links internos gerados pelo Webmin passem pelo Apache.
- Desativando o TLS/SSL do Webmin
Como vamos configurar o Apache com TLS/SSL, não há necessidade de o Webmin ter seu próprio TLS/SSL. É recomendável desativar esse recurso no Webmin. Em seguida, abra o arquivo de configuração do Webmin no editor de texto de sua escolha:
|
1 |
sudo vim /etc/webmin/miniserv.conf |
Em seguida, procure pela seguinte linha:
|
1 |
ssl=1 |
Aqui, o valor “1” indica que o Webmin tem o SSL ativado. Em seguida, defina o valor como “0” para desativar o SSL do Webmin.
- Adicionando o Domínio ao Webmin
Por padrão, o Webmin não permitiria que nosso domínio o acessasse. Isso ocorre porque esse acesso pode fazer parte de um ataque malicioso, por exemplo, um ataque de Cross-Site Scripting (XSS).
Para garantir que o Webmin permita nosso domínio, ele deve ser declarado na configuração do Webmin. Abra o arquivo de configuração com seu editor de texto favorito:
|
1 |
sudo vim /etc/webmin/config |
No final do texto, adicione a seguinte linha:
|
1 |
referers=<domain> |
Depois disso, salve o texto, saia do editor e reinicie o serviço Webmin para que todas as alterações entrem em vigor:
|
1 |
sudo systemctl restart webmin |
- Configurando o Apache
Precisamos do módulo proxy_http do Apache. O seguinte comando irá ativá-lo:
|
1 |
sudo a2enmod proxy_http |
Ele sugere reiniciar o Apache. No entanto, você precisa ativar o novo host virtual primeiro:
|
1 |
sudo a2ensite <domain> |
Finalmente, reinicie o Apache. Ele ativará o módulo e o host virtual:
|
1 |
sudo systemctl restart apache2 |
O seguinte comando configurará o firewall para permitir o tráfego de entrada nas portas 80 e 443 (portas padrão do Apache para tráfego HTTP/HTTPS):
|
1 |
sudo ufw allow in "Apache Full" |
Para verificar se a configuração funcionou com sucesso, acesse o seu domínio. Ele deve exibir a página de login do Webmin. No entanto, NÃO faça login no Webmin. Como o TLS/SSL ainda não foi implementado, ele se comunicará via HTTP, enviando todos os dados em formato de texto simples:
|
1 |
http://<domain> |
- Configurando TLS/SSL
Precisamos de um certificado para o nosso domínio para que a conexão seja criptografada. Para fazer isso, usaremos o Let’s Encrypt. É uma autoridade de certificação (CA) gratuita, automatizada e aberta. Ela opera em benefício do público, fornecida pelo Internet Security Research Group (ISRG).
Para gerar o certificado, o certbot é a ferramenta a ser usada no shell. Execute o seguinte comando certbot para gerar um certificado TLS/SSL para o seu domínio e configurar o Apache para redirecionar o tráfego para o site seguro:
|
1 |
sudo certbot --apache --email <email> -d <domain> --agree-tos --redirect --noninteractive |
A saída será parecida com esta:
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
Salvando depuração log para /var/log/letsencrypt/letsencrypt.log Plugins selecionados: Authenticator apache, Installer apache Obtendo um novo certificado Realizando os seguintes desafios: http-01 desafio para <domain> Habilitado Apache rewrite módulo Aguardando por verificação... Limpando up desafios Criado um SSL vhost em /etc/apache2/sites-available/<domain>-le-ssl.conf Habilitado Apache socache_shmcb módulo Habilitado Apache ssl módulo Implantando Certificado no VirtualHost /etc/apache2/sites-available/<domain>-le-ssl.conf Habilitando disponível site: /etc/apache2/sites-available/<domain>-le-ssl.conf Habilitado Apache rewrite módulo Redirecionando vhost em /etc/apache2/sites-enabled/<domain>.conf para ssl vhost em /etc/apache2/sites-available/<domain>-le-ssl.conf ------------------------------------------------------------------------------- Parabéns! Você habilitou com sucesso enabled https://<domain> Você deve testar sua configuração em: https://www.ssllabs.com/ssltest/analyze.html?d=<domain> ------------------------------------------------------------------------------- |
Isso indica que a instalação do certificado foi bem-sucedida e o Apache foi configurado com sucesso para redirecionar as solicitações de http://<domain> para https://<domain>.
Usando o Webmin
Finalmente, estamos prontos para gerenciar o sistema usando o Webmin. Abra o domínio do Webmin em um navegador web e faça login como usuário root (ou qualquer outro usuário com privilégios sudo).
- Gerenciando Usuários e Grupos
Primeiro, vamos ver como gerenciar usuários e grupos usando o Webmin. No painel esquerdo, vá para Sistema >> Usuários e Grupos:

Para criar um novo usuário, clique em Criar um novo usuário:

Depois disso, preencha as informações necessárias para o novo usuário. Clique em Criar para finalizar o procedimento:

- Atualizações de Pacotes
O Webmin também pode verificar se há atualizações de pacotes disponíveis. No painel esquerdo, clique no Dashboard ícone:

O Dashboard apresentará um resumo rápido das estatísticas do sistema. Sob a seção Informações do Sistema , localize o rótulo Package updates . Ele informará se há alguma atualização disponível para qualquer pacote.
Alternativamente, no painel esquerdo, vá para Sistema >> Software Package Updates. Na aba Atualizações de Pacotes , o Webmin informará todos os pacotes que possuem atualizações disponíveis:

Na aba Scheduled Upgrades , o Webmin oferece a opção de automatizar a instalação de atualizações de pacotes:

Em seguida, abaixo da aba Package Repositories , o Webmin oferece uma maneira fácil de gerenciar todos os repositórios de pacotes configurados no sistema:
- Executando Comandos Personalizados
Embora o Webmin ofereça uma infinidade de opções e personalizações, ainda há coisas que precisam ser feitas manualmente. O Webmin pode executar qualquer comando shell. Para executar um comando, no painel esquerdo, vá para Tools >> Command Shell:

Em seguida, insira o comando desejado e clique em Execute command para executá-lo:

Executa certos comandos regularmente? Considere marcá-los no Webmin. No painel esquerdo, vá para Tools >> Custom Commands. Não há mais necessidade de digitar esses comandos manualmente:

- Gerenciando o Apache
Além disso, se houver algum motor de servidor instalado, o Webmin pode gerenciá-lo. Para este exemplo, usamos o Apache. Para gerenciar o Apache através do Webmin, vá para Servidores >> Apache:

Considerações Finais
O Webmin é uma ferramenta muito útil para gerenciar todo o seu sistema. Ele oferece uma maneira confortável de fazer coisas que normalmente exigiriam uma interação entediante com a tela do console. Além disso, ajuda você a organizar detalhadamente o seu sistema. Este guia apresenta as aplicações mais úteis do Webmin. Sinta-se à vontade para explorar a wiki oficial do Webmin para saber mais sobre como utilizar a ferramenta da melhor forma possível.
Boa computação!



Comentários
Nenhum comentário ainda. Seja o primeiro.