Como configurar uma VPN com o OpenVPN no Debian 9 Stretch Linux
- 4574
- 32
- Robert Wunsch DVM
Distribuições
Este guia é testado para o Debian 9 Stretch Linux, mas pode funcionar com outras versões recentes do Debian.
Requisitos
- Este guia pressupõe que você esteja administrando o Debian em um VPS ou um servidor remoto, pois esse é o cenário mais provável para uma VPN.
- Uma instalação funcional do Debian Stretch com acesso à raiz
Dificuldade
MÉDIO
Convenções
- # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de
sudo
comando - $ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular
Configurando iptables
Configurar sua própria VPN não é uma tarefa pequena, mas há muitas razões pelas quais você gostaria de fazer isso. Por um lado, quando você administra sua própria VPN, você tem controle completo e sabe exatamente o que está fazendo.
A segurança é um fator importante para VPNs. É possível configurar um simples em alguns minutos, mas não será seguro. Você precisa tomar as medidas apropriadas para garantir que o servidor e suas conexões permaneçam privadas e criptografadas.
Antes de embarcar nessa estrada, você pode considerar criptografar seus discos, reforçar a segurança do kernel com Selinux ou Pax e garantir que tudo esteja trancado.
Iptables é uma grande parte da segurança do servidor. Você precisa de iptables para garantir que as informações não vazem da sua VPN. Iptables também trabalha para evitar conexões não autorizadas. Então, o primeiro passo na criação de uma VPN no Debian está configurando iptables.
Encontre sua interface WAN
Antes de começar a escrever suas regras iptables, você precisa saber para qual interface você está escrevendo.
Usar ifconfig
ou ip a
Para procurar a interface com a qual seu servidor está conectado à Internet.
O restante deste guia se referirá a essa interface como eth0
, Mas isso provavelmente não será seu. Certifique -se de trocar o nome da interface de rede do seu servidor em vez disso.
Criando as regras iptables
Todo usuário do Linux e Admin adora escrever regras iptables, certo? Não vai ser tão ruim. Você comporá um arquivo com todos os comandos e apenas o restaurará em iptables.
Crie seu arquivo. Você pode fazer isso em algum lugar que deseja salvar ou apenas despejar /tmp
. Iptables vão salvar suas regras de qualquer maneira, então /tmp
está bem.
$ vim /tmp /v4rules
Inicie o arquivo adicionando *filtro
para que os iptables saibam que essas são regras de filtro.
Sim, também haverá um IPv6, mas será muito mais curto.
Regras de loopback
Comece com o conjunto mais simples de regras, as interface de loopback. Eles apenas dizem aos iptables que aceitam apenas o tráfego de Looback originário de localhost.
-Uma entrada -i lo -j aceita -a entrada ! -eu lo -s 127.0.0.0/8 -j rejeitar -a saída -o lo -j aceita
Permitindo ping
Em seguida, você provavelmente deseja poder fazer ping em seu servidor. Este grupo de regras permite ping através.
-Um estado de entrada -p icmp -m -estado novo --icmp -type 8 -j aceit -a input -p icmp -m state -estado estabelecido, relacionado -j aceita -a saída -p icmp -j aceita
Configuração ssh
Você provavelmente deve mudar o ssh da porta 22, então deixe suas regras refletir que.
-Um estado de entrada -i eth0 -p tcp -m -estatal novo, estabelecido - -dport 22 -j Aceitar -a output -o eth0 -p tcp -m state -estado estabelecido - -sport 22 -j aceita
Permitir o OpenVPN através
Obviamente, você vai querer permitir o tráfego OpenVPN através. Este guia vai usar o UDP para openVPN. Se você optar por ir com o TCP, deixe as regras refletir que.
-Um estado de entrada -i eth0 -p udp -m -estatal novo, estabelecido - -Dport 1194 -j Aceitar -a output -o eth0 -p udp -m State -State estabelecido - -sport 1194 -j Aceitar
Dns
Você também vai querer permitir o tráfego do DNS através do seu servidor VPN. Isso será através de UDP e TCP.
-Um estado de entrada -i eth0 -p udp -m -Estado estabelecido - -sport 53 -j aceita -a output -o eth0 -p udp -m state -estado novo, estabelecido - -dport 53 -j aceita -a entrada -i eth0 -p tcp -m state -Estado estabelecido - -sport 53 -j Aceitar -a output -o eth0 -p tcp -m state -estatal novo, estabelecido - -dport 53 -j aceita
Http/s para atualizações
Pode parecer estranho permitir o tráfego HTTP/s, mas você fazer quer que o Debian seja capaz de se atualizar, certo? Essas regras permitem que o Debian inicie solicitações HTTP, mas não as recebe de fora.
-Um estado de entrada -i eth0 -p tcp -m -Estado estabelecido - -sport 80 -j aceita -a entrada -i eth0 -p tcp -m state -estado estabelecida -sport 443 -j aceita -a saída -O ETH0 -P TCP -M ESTADO -Estado novo, estabelecido - -Dport 80 -j Aceitar -a output -o eth0 -p tcp -m State -Estado novo, estabelecido - -Dport 443 -j Aceitar
NTP para sincronizar seu relógio
Supondo que você não vai sincronizar manualmente o relógio do servidor e os relógios do cliente, você precisará de NTP. Permitir isso também.
-Um estado de entrada -i eth0 -p udp -m -Estado estabelecido - -sport 123 -j aceit -a saída -o eth0 -p udp -m state -estatal novo, estabelecido - -dport 123 -j aceita
TUN para túnel através da VPN
Este guia usa TUN para túnel através da VPN, se você estiver usando TAP, ajuste de acordo.
-A input -i tun0 -j Aceitar -a forward -i tun0 -j Aceitar -a output -o tun0 -j aceitar
Para a VPN encaminhar seu tráfego para a Internet, você precisa permitir o encaminhamento de TUN para sua interface de rede física.
-Um avanço -i tun0 -o eth0 -s 10.8.0.0/24 -J Aceitar -a Forward -M State -Estado estabelecido, Related -j Aceitar
Tráfego bloqueado de log
Você provavelmente deveria ter o iptables registrar o tráfego que ele bloqueia. Dessa forma, você está ciente de quaisquer ameaças em potencial.
-Um limite de entrada -m -LIMIT 3/min -j log -Log -prefixo "iptables_input_denied:" -Log -level 4 -a Forward -m Limit -Limit 3/min -j log - -log -prefix " iptables_forward_denied: " -Log 4 -a output -m limite -limite 3/min -j log - -log -prefix" iptables_output_denied: " - -Log -level 4
Rejeite todo o outro tráfego
Agora que você está registrando tudo o que não se encaixa nas regras existentes, rejeite -as.
-A entrada -j rejeitar -a forward -j rejeitar -a saída -j rejeitar
Não se esqueça de fechar seu arquivo com COMPROMETER-SE
.
Nat
Esta próxima parte requer uma tabela diferente. Você não pode adicioná -lo ao mesmo arquivo, então você só terá que executar o comando manualmente.
Faça o tráfego do disfarce da VPN como tráfego da interface de rede física.
# iptables -t nat -a postouting -s 10.8.0.0/24 -O ETH0 -J
Bloqueie todo o tráfego IPv6
O tráfego pode vazar sobre o IPv6, e realmente não há necessidade de usar o IPv6 agora. A coisa mais fácil de fazer é desligá -lo completamente.
Crie outro arquivo e jogue as regras para rejeitar todo o tráfego IPv6.
$ vim /tmp /v6rules
*filtro -a input -j rejeit -a forward -j rejeitar -a saída -j rejeitar confirmação
Cometer tudo
Comece lançando todas as regras iptables existentes.
# iptables -f && iptables -x
Importar cada um dos arquivos de regras que você criou.
# iptables-Restore < /tmp/v4rules # ip6tables-restore < /tmp/v6rules
Fazendo com que fique
Debian tem um pacote que lidará com o carregamento automaticamente de suas regras iptable, para que você não precise criar um trabalho cron ou algo assim.
# APT Instale iptables-persistent
O processo de instalação perguntará se você deseja salvar suas configurações. Responda, "sim."
No futuro, você pode atualizar suas regras executando o seguinte comando Linux.
# Service Netfilter-Persistent Save
Configuração adicional
Há mais algumas coisas que você precisa fazer para fazer com que todas as suas interfaces de rede funcionem conforme necessário.
Primeiro, abra /etc/hosts
e comente todas as linhas IPv6.
Em seguida, aberto /etc/sysctl.D/99-SYSCTL.conf
. Encontre e descomentar a seguinte linha.
líquido.IPv4.ip_forward = 1
Adicione estas próximas linhas para desativar completamente o IPv6.
líquido.IPv6.conf.todos.desabille_ipv6 = 1 rede.IPv6.conf.padrão.desabille_ipv6 = 1 rede.IPv6.conf.lo.desabille_ipv6 = 1 rede.IPv6.conf.eth0.desabille_ipv6 = 1
Finalmente, aplique suas mudanças.
# sysctl -p
Qual é o próximo
Essa é a primeira parte a baixo. O firewall do seu servidor agora está pronto para executar o OpenVPN, e sua rede está alinhada também.
O próximo passo é criar uma autoridade de certificado para lidar com todas as suas chaves de criptografia. Não é um processo demorado, mas é tão importante.
Autoridade de Certificação
Use Easy-RSA para estabelecer a autoridade de certificação que você usará para criar e as chaves de criptografia para o seu servidor OpenVPN.
Esta é a segunda parte na configuração de um servidor OpenVPN no Debian Stretch.
VPNs confiam na criptografia. É absolutamente vital que eles criem suas conexões com os clientes, bem como o próprio processo de conexão.
Para gerar as chaves necessárias para a comunicação criptografada, você precisa estabelecer uma autoridade de certificado. Realmente não é tão difícil, e existem ferramentas que simplificam ainda mais o processo.
Instalando os pacotes
Antes de começar, instale o OpenVPN e Easy-RSA.
# apt install openvpn easy-rsa
Configure o diretório
O pacote OpenVPN criou um diretório para si em /etc/openvpn
. É aí que você pode configurar a autoridade de certificado.
Easy-RSA inclui um script que cria automaticamente um diretório com tudo o que você precisa. Use -o para criar seu diretório de autoridade de certificado.
# Make-Cadir/etc/OpenVPN/CERTS
Insira esse diretório e crie um link suave entre a mais recente configuração do OpenSSL com OpenSSL.CNF
.
# ln -s openssl -1.0.0.CNF OpenSSL.CNF
Defina as variáveis
Dentro da pasta há um arquivo chamado, vars
. Esse arquivo contém as variáveis que o Easy-RSA usará para gerar suas chaves. Abra. Existem alguns valores que você precisa mudar.
Comece encontrando o Key_size
variável e mudança é valor para 4096
.
exportar key_size = 4096
Em seguida, encontre um bloco de informações sobre a localização e identidade da sua autoridade de certificado.
exportar key_country = "us" export key_province = "ca" export key_city = "sanfrancisco" export key_org = "fort-funston" export key_email = "[email protected] "exportar key_ou =" MyorganizationalUnit "
Altere os valores para corresponder a você.
A última variável que você precisa encontrar é o Key_name
exportar key_name = "vpnserver"
Nomeie algo identificável.
Crie as chaves da autoridade
O Easy-RSA inclui scripts para gerar a autoridade de certificação.
Carregue as variáveis primeiro.
# fonte ./vars
Uma mensagem de aviso aparecerá no terminal dizendo que limpar tudo
vai apagar suas chaves. Você ainda não tem nada, então está tudo bem.
# ./limpar tudo
Agora você pode executar o script para realmente gerar sua autoridade de certificado. O script fará perguntas sobre as chaves que você está gerando. As respostas padrão serão as variáveis que você já entrou. Você pode esmagar com segurança "Enter."Lembre -se de inserir uma senha, se você quiser e responder" sim "às duas últimas perguntas.
# ./Build-Ca
Crie uma chave do servidor
Aquelas chaves que você fez foram para a própria autoridade de certificado. Você precisa de uma chave para o servidor também. Mais uma vez, há um script para isso.
# ./Build-key-server servidor
Gerar um PEM Diffie-Hellman
Você precisa gerar um Diffie-Hellman PEM que o OpenVPN usará para criar chaves seguras de sessões do cliente. O Easy-RSA também fornece um script para isso, mas é mais fácil usar o Pleno OpenSSL.
Como o objetivo aqui é a segurança, é melhor gerar uma chave de 4096 bits. Vai levar algum tempo para gerar, e pode diminuir um pouco o processo de conexão, mas a criptografia será razoavelmente forte.
# OpenSSL DHPARAM 4096>/etc/OpenVPN/DH4096.PEM
Gerar uma chave HMAC
Sim, você precisa de outra chave de criptografia. OpenVPN usa teclas HMAC para assinar os pacotes que usa no processo de autenticação TLS. Ao assinar esses pacotes, o OpenVPN pode garantir que apenas pacotes originários de uma máquina com a chave são aceitos. Apenas adiciona outra camada de segurança.
A utilidade para gerar sua chave HMAC está realmente incorporada ao próprio OpenVPN. Executá-lo.
# openvpn - -genkey - -secret/etc/openvpn/certs/keys/ta.chave
Qual é o próximo
Criar criptografia forte é facilmente um dos aspectos mais importantes da configuração de um servidor OpenVPN. Sem boa criptografia, todo o processo é basicamente sem sentido.
A essa altura, você está finalmente pronto para configurar o próprio servidor. A configuração do servidor é realmente menos complicada do que você fez até agora, então parabéns.
OpenVPN Sever
Configure o servidor OpenVPN usando as teclas de criptografia que você gerou na seção anterior do guia.
Esta é a terceira parte na configuração de um servidor OpenVPN no Debian Stretch.
Agora, você chegou ao evento principal. Esta é a configuração real do servidor OpenVPN. Tudo o que você fez até agora era absolutamente necessário, mas nada disso tocou o próprio OpenVPN, até agora.
Esta seção está totalmente preocupada em configurar e executar o servidor OpenVPN, e na verdade é menos complicado do que você provavelmente está pensando.
Obtenha a configuração base
OpenVPN fez este processo muito fácil. O pacote que você instalou veio com arquivos de configuração de amostra para os clientes e para o servidor. Você só precisa descompactar o servidor um em você /etc/openvpn
diretório.
# gunzip -c/usr/share/doc/openvpn/exemplos/sample-config-files/servidor.conf.gz>/etc/openvpn/servidor.conf
Abra -o em seu editor de texto favorito e prepare -se para começar a mudar as coisas.
Use suas chaves
Quando estiver dentro do arquivo, você verá que tudo está preenchido com padrões razoáveis, e há muitos comentários que fornecem excelente documentação do que tudo faz.
A primeira coisa que você precisa encontrar é a seção para adicionar sua autoridade de certificado e chaves do servidor. As variáveis são ca
, cert
, e chave
. Defina -os iguais ao caminho completo de cada um desses arquivos. Deve parecer o exemplo abaixo.
CA/etc/openvpn/certs/keys/ca.CRT cert/etc/openvpn/certs/keys/servidor.CRT key/etc/openvpn/certs/keys/servidor.Chave # Este arquivo deve ser mantido em segredo
A próxima parte que você precisa encontrar é o Diffie-Hellman .PEM
Quando terminar, deve ficar assim:
DH DH4096.PEM
Finalmente, encontre TLS-Auth
para sua chave HMAC.
TLS-Auth/etc/OpenVPN/CERTS/KEYS/TA.chave 0 # Este arquivo é secreto
Sim, deixe o 0
lá.
Segurança de carne bovina
As configurações de criptografia no arquivo de configuração estão bem, mas elas podem ser muito melhorar. É hora de ativar melhores configurações de criptografia.
Encontre a seção que começa com, # Selecione uma cifra criptográfica.
É aí que você precisa adicionar a seguinte linha abaixo, ele existe opções comentadas.
Cifra AES-256-CBC
Não é uma das opções listadas lá, mas é suportado pelo OpenVPN. Essa criptografia AES de 256 bits é provavelmente a melhor oferecida pelo OpenVPN.
Role até o final do arquivo. As próximas duas opções ainda não estão na configuração, então você precisa adicioná -las.
Primeiro, você precisa especificar um forte resumo de autenticação. Esta é a criptografia que o OpenVPN usará para autenticação do usuário. Escolha SHA512.
# Auth Digest Auth Sha512
Em seguida, limite as cifras que o OpenVPN usará para os mais fortes. É melhor limitá -lo o mais longe possível.
# Limite Ciphers TLS-Cipher TLS-DHE-RSA-WITH-AES-256-GCM-SHA384: TLS-DHE-RSA-WITH-AES-128-GCM-SHA256: TLS-DHE-RSA-A-AES-256- CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA-256-CBC-SHA: TLS-DHE-RSA-A-AES-128-CBC-SHA: TLS-DHE-RSA-WITH-CAMELLIA-128-CBC- Sha
Trafico direto
Todo o material de criptografia está fora do caminho. É hora de fazer algum roteamento. Você precisa dizer ao OpenVPN para lidar com o tráfego e o DNS redirecionados.
Comece redirecionando o tráfego. Encontre a linha abaixo e descommentá -la.
Empurre "Redirect-gateway def1 bypass-dhcp"
Para rotear o DNS através do OpenVPN, você precisa dar opções DNS. Essas linhas já estão lá e comentadas também. Descompor -lhes. Se você quiser usar um servidor DNS diferente, você também pode alterar o IP para esse DNS.
Push "DHCP-OPTION DNS 208.67.222.222 "push" dhcp-option dns 208.67.220.220 "
Configure um usuário do OpenVPN
OpenVPN é executado como root por padrão. Essa é uma ideia muito terrível. Se o OpenVPN estiver comprometido, todo o sistema está ferrado. Existem algumas linhas comentadas para executar o OpenVPN como "ninguém", mas "ninguém" geralmente está executando outros serviços também. Se você não deseja que o OpenVPN tenha acesso a nada além do OpenVPN, você precisa executá -lo como seu próprio usuário sem privilégios.
Crie um usuário do sistema para o OpenVPN executar como.
# adduser-System-shell/usr/sbin/nologin-não-criate-home OpenVPN
Em seguida, você pode editar o arquivo de configuração, descommentando as linhas que executam o OpenVPN como "ninguém" e substituí -lo pelo nome de usuário que você acabou de fazer.
User OpenVPN Group Nogroup
Envie logs para nulo
Existem duas opções quando se trata de toras, e ambos têm seus méritos. Você pode registrar tudo como normal e ter os troncos para voltar a voltar posteriormente, ou pode ser paranóico e fazer login para /dev/null
.
Ao fazer login para /dev/null
, você está apagando qualquer registro dos clientes que se conectam à VPN e para onde eles vão. Mesmo que você controla sua VPN, convém seguir esse caminho se estiver tentando ter mais privacidade.
Se você quiser destruir seus troncos, encontre o status
, registro
, e Append Log
variáveis e aponte todas elas para /dev/null
. Deve se parecer semelhante ao exemplo abaixo.
status /dev /null… log /dev /null log-apen /dev /null
Essa é a última parte da configuração. Salve e prepare -se para executar seu servidor.
Execute seu servidor
Na verdade, existem dois serviços que você precisa para começar a aumentar o OpenVPN no Debian Stretch. Comece os dois com o Systemd.
# SystemCtl Iniciar o OpenVPN # SystemCtl Iniciar o OpenVPN@Server
Verifique se eles estão funcionando corretamente.
# status Systemctl OpenVPN*.serviço
Permitir que ambos funcionem na startup.
# SystemCtl Ativar OpenVPN # SystemCtl Ativar OpenVPN@Server
Agora você tem um servidor VPN em execução no Debian Stretch!
Qual é o próximo
Você está aqui. Você fez isso! Debian agora está executando o OpenVPN atrás de um firewall seguro e está pronto para os clientes se conectarem.
Na próxima seção, você configurará seu primeiro cliente e o conectará ao seu servidor.
Cliente OpenVPN
Configurar e o OpenVPN Client para conectar -se ao recém -configurado servidor OpenVPN.
Esta é a quarta e última parte da configuração de um servidor OpenVPN no Debian Stretch.
Agora que seu servidor está em execução, você pode configurar um cliente para se conectar a ele. Esse cliente pode ser qualquer dispositivo que suporta OpenVPN, que é quase qualquer coisa.
Há algo que você precisa fazer no servidor primeiro para entregar o cliente, mas depois disso, tudo se trata de configurar essa conexão.
Crie chaves do cliente
Comece fazendo um conjunto de chaves do cliente. O processo é quase idêntico ao que você usou para fazer as teclas do servidor.
cd
No diretório da autoridade de certificação, defina a fonte do arquivo variável e construa as chaves.
# cd/etc/openvpn/certs # fonte ./vars # ./Build-Key FirstClient
Você pode nomear a chave do cliente, o que você escolher. Novamente, o script fará uma série de perguntas. Os padrões devem ser bons para tudo.
Arquivo de configuração do cliente
OpenVPN fornece exemplos de configurações do cliente, além das do servidor. Crie um novo diretório para a configuração do seu cliente e copie o exemplo em.
# mkdir/etc/openvpn/clientes # cp/usr/share/doc/openvpn/exemplos/sample-config-files/cliente.conf/etc/openvpn/clientes/cliente.Ovpn
Abra o arquivo em seu editor de texto de escolha.
Hospedeiro remoto
Encontre a linha com o controlo remoto
variável. Defina -o igual ao IP do seu servidor.
Remoto 192.168.1.5 1194
Se tornar ninguém
Não há treinamento com os homens sem rosto necessários. Basta encontrar um descomento as linhas abaixo.
Usuário ninguém Grupo Nogroup
Configure suas chaves
Você precisa dizer à configuração do cliente onde encontrar as chaves que ele precisa também. Encontre as seguintes linhas e edite -as para combinar com o que você configurou.
CA CA.CRT Cert FirstClient.CHAVE CRT FirstClient.chave
Certifique -se de usar os nomes reais do certificado e chave do cliente. O caminho está bem. Você estará colocando tudo no mesmo diretório.
Encontre e descomentro a linha para HMAC.
TLS-AUTH TA.chave 1
Especifique a criptografia
O cliente precisa saber qual criptografia o servidor está usando. Assim como o servidor, algumas dessas linhas precisam ser adicionadas em.
Encontre o cifra
variável. É comentado. Descompor -o e adicione a cifra que você usou no servidor.
Cifra AES-256-CBC
Adicione o resumo da autenticação e as restrições cifras no final da configuração do cliente.
# Authentication Digest Auth Sha512 # Restrições de cifra TLS-CIPHER TLS-DHE-RSA-AS-AES-256-GCM-SHA384: TLS-DHE-RSA-O-AES-128-GCM-SHA256: TLS-DHE-RSA-WITH-WITH -Aes-256-cbc-sha: tls-dhe-rsa-with-camellia-256-cbc-sha: tls-dhe-rsa--que -128-cbc-sha
Salve sua configuração e saída.
Envie um tarball ao cliente
Você precisa embalar a configuração do seu cliente e as chaves em um tarball e enviá -las para o cliente. Carregue tudo em um tarball para simplificar as coisas no final do cliente.
# tar cjf/etc/openvpn/clientes/primeiroclient.alcatrão.xz -c/etc/openvpn/certs/keys ca.CRT FirstClient.CRT FirstClient.chave TA.key -c/etc/openvpn/clientes/cliente.Ovpn
Agora, você pode transferir esse tarball para o seu cliente, mas você escolher.
Conectar
Supondo que seu cliente seja uma distribuição do Debian, o processo de conexão é muito simples. Instale o OpenVPN como você fez no servidor.
# APT Instale OpenVPN
Extraia seu tarball para o /etc/openvpn
diretório que a instalação criou.
# cd/etc/openvpn # tar xjf/path/to/primeiroclient.alcatrão.xz
Você pode precisar renomear cliente.Ovpn
para OpenVPN.conf
. Você receberá um erro na inicialização se o fizer.
Inicie e habilite o OpenVPN com Systemd.
# SystemCtl Iniciar o OpenVPN # SystemCtl Ativar OpenVPN
Conclusão
Você tem um servidor VPN em funcionamento e um cliente conectado! Você pode seguir o mesmo procedimento detalhado neste guia para seus outros clientes também. Certifique -se de criar teclas separadas para cada uma. Você pode usar o mesmo arquivo de configuração, embora.
Você também pode querer ter certeza de que tudo está funcionando corretamente. Vá para o teste de vazamento do DNS para garantir que seu IP patche o servidor e você não esteja usando o DNS do seu IPS.
Tutoriais do Linux relacionados:
- Ubuntu básico 22.04 Configuração do OpenVPN Client/Server Connection
- Como configurar um servidor OpenVPN no Ubuntu 20.04
- Coisas para instalar no Ubuntu 20.04
- Coisas para fazer depois de instalar o Ubuntu 20.04 fossa focal linux
- Download do Linux
- Instale Arch Linux na estação de trabalho VMware
- Melhor distro Linux para desenvolvedores
- Comandos Linux: os 20 comandos mais importantes que você precisa para…
- Como criar uma VPN no Ubuntu 20.04 Usando Wireguard
- Uma introdução à automação, ferramentas e técnicas do Linux
- « Configuração do servidor/cliente VNC no Debian 9 Stretch Linux
- Como instalar o MySQL Community Server no Debian 9 Stretch Linux »