Do not speak Portuguese? Translate this site with Google or Bing Translator
Configurando VPN L2TP/IPsec no Linux

Posted on: January 08, 2024 01:05 PM

Posted by: Renato

Categories: ubuntu Dicas vpn l2tp linux

Views: 454

 

Configurando VPN L2TP/IPsec no Linux

Salve galera!! Neste artigo irei ensinar como configurar a VPN L2TP no Linux.

Minha maquina: Ubuntu 20.04 e 22.04.

Essas configurações foram realizadas e validadas nas distros: Ubuntu, Debian, Deepin Linux e Linux Mint. Neste artigo estarei configurando no Linux Mint.

Um pouco sobre a VPN L2TP/IPsec: o L2TP – Protocolo de Encapsulamento da camada 2, é um protocolo de encapsulamento projetado para oferecer suporte a redes privadas (conexões VPN) pela internet. O L2TP não fornece nenhum mecanismo de autenticação ou criptografia para passar o tráfego, geralmente é implementado em conjunto com o conjunto de autenticação IPsec – L2TP/IPsec, para fornecer a criptografia no túnel L2TP.

Normalmente se tem as seguintes informações para conectar em uma VPN – L2TP/IPsec:
DNS ou endereço IP, exemplo: linuxnaweb-corp.net;
Usuário e Senha;
Chave pré compartilhada (Pre-shared key);

Como configurar VPN L2TP no Linux.

Abra o Terminal: CRTL + ALT + T

Adicione o repositório do L2TP:

Atualize a lista de repositórios:

Vá até configurações de rede em seu Sistema Operacional, e clique em adicionar (+) no canto inferior esquerdo e repare que não exibirá a opção de L2TP. A opção irá aparecer após a instalação do pacote L2TP logo em seguida.

image

Instale o pacote L2TP e suas dependências:

$ sudo apt-get install network-manager-l2tp network-manager-l2tp-gnome apt-transport-https ca-certificates libreswan -y

Após ter instalado, vá novamente até configurações de Rede em seu Sistema Operacional e repare que apareceu a opção de L2TP (Layer Tunneling Protocol – L2TP), clique na opção.

image

Após clicar, preencher os campos, com as informações da sua VPN conforme a imagem abaixo:
Name: (Defina um nome pra VPN)
Gateway: Coloque o DNS ou IP da VPN.
User name ou Usuário: Coloque o usuário da VPN.
Password ou Senha: Coloque a senha do usuário da VPN.

image

Agora iremos configurar o IPsec, clique em IPsec Settings…

image

Habilite o túnel IPsec em L2TP, selecionando a opção: Enable IPsec tunnel to L2TP host

image

Coloque as seguintes informações:
Pre-shared key: 3CSDSAWA1B874P (coloque a sua chave compartilhada)
E em Advanced:
Algorítimo: 3des-sha1-modp1024
Algoritimo2: 3des-sha

Após clique em OK

image

Ignore esse passo se já souber os algoritimos de conexão do IPsec.

Beleza Gerson, mas o que é esses Phase1 Algorithms e Phase2 Algorithms, esses “algoritimos” são eles que definem a criptografica da sua conexão.
Phase1 Algorithm: 3des-sha1-modp1024 – Garante a integridade e autenticidade.
Phase2 Algorithm: 3des-sha – Garante a confidencialidade.

Certo, mas como eu descubro esses “algoritimos” da minha VPN? Vamos lá, basta instalar o pacote ike-scan e scanear o DNS ou IP de sua VPN.

$ sudo apt-get install ike-scan -y

Após instalado escaneie o o DNS ou IP de sua VPN:

$ sudo ike-scan linuxnaweb-corp.net
Starting ike-scan 1.9.4 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
187.91.73.112	Main Mode Handshake returned HDR=(CKY-R=6b6c03b90a77d525) SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800) VID=5b362bc820f60007 (SonicWall-7)
Ending ike-scan 1.9.4: 1 hosts scanned in 0.053 seconds (18.79 hosts/sec).  1 returned handshake; 0 returned notify

Repare que na linha Enc=3DES Hash=SHA1 Group=2:modp1024, temos a informação que precismos, para consultar os padrões acesse aqui!

$ sudo ike-scan linuxnaweb-corp.net
Starting ike-scan 1.9.4 with 1 hosts (http://www.nta-monitor.com/tools/ike-scan/)
187.91.73.112	Main Mode Handshake returned HDR=(CKY-R=6b6c03b90a77d525) SA=(Enc=3DES Hash=SHA1 Group=2:modp1024 Auth=PSK LifeType=Seconds LifeDuration=28800) VID=5b362bc820f60007 (SonicWall-7)
Ending ike-scan 1.9.4: 1 hosts scanned in 0.053 seconds (18.79 hosts/sec).  1 returned handshake; 0 returned notify

Vamos dar continuidade a configuração!

Agora clique em PPP Settings…

image

Faça as seguintes alterações:

Em Autenticação, desmarque as opções: PAPCHAP e EAP.
Em Segurança e compressão, marque a opção: Usar criptografia ponto a ponto (MPPE), e em segurança selecione: 128 bits (mais seguro).
Marque a opção: Enviar pacotes PPP de eco e clique em OK.

image

Agora iremos colocar o DNS server (AD), clique na opção: IPv4 > DNS > e em Server coloque o ip do servidor DNS da sua rede corporativa, no meu caso é: 192.168.1.1.

image

Agora iremos desabilitar o IPv6, clique na opção: IPv6 e desabilite o IPv6.

image

Logo após clique em Add.

image

Clique na VPN que foi criada evo-sp VPN, e clique em Conectar.

image

Pronto VPN conectada com sucesso! o/
Repare que está destacado em verde o status da conexão.

image

Na barra de tarefas, o ícone do Wireless irá alterar para um cadeado, que significa que a VPN está conectada.

image

Se não funcionar pode ser que tenha feito alguma parte do errada, mas as vezes pode surgir alguns imprevistos, é possível pegar o log da conexão para fazer o troubleshoting.

Utilize o comando abaixo para Debugar.

# /usr/lib/NetworkManager/nm-l2tp-service --debug

 

Até a próxima!

- https://www.linuxnaweb.com/configurando-vpn-l2tp-ipsec-no-linux/


4

Share

Donate to Site


About Author

Renato

Developer

Add a Comment
Comments 1 Comments
  • Renato Lucena
    Renato Lucena - há 10 meses
    Kernel: 5.15.37-1-MANJARO | GNOME 42.0 https://forum.manjaro.org/t/network-manager-l2tp-wizard/109841 sudo pamac install networkmanager-l2tp && sudo pamac install networkmanager-libreswan

Blog Search


Categories

OUTROS (16) Variados (109) PHP (133) Laravel (171) Black Hat (3) front-end (29) linux (114) postgresql (39) Docker (28) rest (5) soap (1) webservice (6) October (1) CMS (2) node (7) backend (13) ubuntu (56) devops (25) nodejs (5) npm (3) nvm (1) git (8) firefox (1) react (7) reactnative (5) collections (1) javascript (7) reactjs (8) yarn (0) adb (1) Solid (2) blade (3) models (1) controllers (0) log (1) html (2) hardware (3) aws (14) Transcribe (2) transcription (1) google (4) ibm (1) nuance (1) PHP Swoole (5) mysql (31) macox (4) flutter (1) symfony (1) cor (1) colors (2) homeOffice (2) jobs (3) imagick (2) ec2 (1) sw (1) websocket (2) markdown (1) ckeditor (1) tecnologia (14) faceapp (1) eloquent (14) query (4) sql (40) ddd (3) nginx (9) apache (4) certbot (1) lets-encrypt (3) debian (12) liquid (1) magento (2) ruby (1) LETSENCRYPT (1) Fibonacci (1) wine (1) transaction (1) pendrive (1) boot (1) usb (1) prf (1) policia (2) federal (1) lucena (1) mongodb (4) paypal (1) payment (1) zend (1) vim (4) ciencia (6) js (1) nosql (1) java (1) JasperReports (1) phpjasper (1) covid19 (1) saude (1) athena (1) cinnamon (1) phpunit (2) binaural (1) mysqli (3) database (42) windows (6) vala (1) json (2) oracle (1) mariadb (4) dev (12) webdev (24) s3 (4) storage (1) kitematic (1) gnome (2) web (2) intel (3) piada (1) cron (2) dba (18) lumen (1) ffmpeg (2) android (2) aplicativo (1) fedora (2) shell (4) bash (3) script (3) lider (1) htm (1) csv (1) dropbox (1) db (3) combustivel (2) haru (1) presenter (1) gasolina (1) MeioAmbiente (1) Grunt (1) biologia (1) programming (22) performance (3) brain (1) smartphones (1) telefonia (1) privacidade (1) opensource (3) microg (1) iode (1) ssh (3) zsh (2) terminal (3) dracula (1) spaceship (1) mac (2) idiomas (1) laptop (2) developer (37) api (5) data (1) matematica (1) seguranca (2) 100DaysOfCode (9) hotfix (1) documentation (1) laravelphp (10) RabbitMQ (3) Elasticsearch (1) redis (2) Raspberry (4) Padrao de design (4) JQuery (1) angularjs (4) Dicas (43) Kubernetes (3) vscode (2) backup (1) angular (3) servers (2) pipelines (1) AppSec (1) DevSecOps (4) rust (1) RustLang (1) Mozilla (1) algoritimo (1) sqlite (1) Passport (2) jwt (5) security (2) translate (1) kube (2) iot (1) politica (2) bolsonaro (1) flow (1) podcast (1) Brasil (1) containers (3) traefik (1) networking (1) host (1) POO (2) microservices (2) bug (1) cqrs (1) arquitetura (3) Architecture (4) sail (3) militar (1) artigo (1) economia (1) forcas armadas (1) ffaa (1) autenticacao (2) autorizacao (2) authentication (4) authorization (3) NoCookies (1) wsl (4) memcached (1) macos (2) unix (2) kali-linux (1) linux-tools (5) apple (1) noticias (2) composer (1) rancher (1) k8s (1) escopos (1) orm (1) jenkins (4) github (5) gitlab (3) queue (1) Passwordless (1) sonarqube (1) phpswoole (1) laraveloctane (1) Swoole (1) Swoole (1) octane (1) Structurizr (1) Diagramas (1) c4 (1) c4-models (1) compactar (1) compression (1) messaging (1) restfull (1) eventdrive (1) services (1) http (1) Monolith (1) microservice (1) historia (1) educacao (1) cavalotroia (1) OOD (0) odd (1) chatgpt (1) openai (3) vicuna (1) llama (1) gpt (1) transformers (1) pytorch (1) tensorflow (1) akitando (1) ia (1) nvidia (1) agi (1) guard (1) multiple_authen (2) rpi (1) auth (1) auth (1) livros (2) ElonMusk (2) Oh My Zsh (1) Manjaro (1) BigLinux (2) ArchLinux (1) Migration (1) Error (1) Monitor (1) Filament (1) LaravelFilament (1) replication (1) phpfpm (1) cache (1) vpn (1) l2tp (1) zorin-os (1) optimization (1) scheduling (1) monitoring (2) linkedin (1) community (1) inteligencia-artificial (2) wsl2 (1) maps (1) API_KEY_GOOGLE_MAPS (1) repmgr (1) altadisponibilidade (1) banco (1) modelagemdedados (1) inteligenciadedados (4) governancadedados (1) bancodedados (2) Observability (1) picpay (1) ecommerce (1) Curisidades (1) Samurai (1) KubeCon (1) GitOps (1) Axios (1) Fetch (1) Deepin (1) vue (4) nuxt (1) PKCE (1) Oauth2 (2) webhook (1) TypeScript (1) tailwind (1) gource (2)

New Articles



Get Latest Updates by Email