Como configurar a VPN baseada em IPsec com Strongswan no CentOS/RHEL 8

Como configurar a VPN baseada em IPsec com Strongswan no CentOS/RHEL 8

Strongswan é uma solução VPN de código aberto, multi-plataforma, moderna e completa baseada em Ipsec para Linux que fornece suporte total para Intercâmbio de chaves da Internet (ambos IKEV1 e IKEV2) estabelecer associações de segurança (SA) entre dois pares. É completo, modular por design e oferece dezenas de plugins que aprimoram a funcionalidade principal.

Artigo relacionado: Como configurar a VPN baseada em IPsec com Strongswan no Debian e Ubuntu

Neste artigo, você aprenderá como configurar os gateways IPSec VPN do site a local usando Strongswan sobre CENTOS/RHEL 8 servidores. Isso permite que os colegas se autentiquem usando uma forte chave pré-compartilhada (Psk). Uma configuração do local para o local significa que cada gateway de segurança tem uma sub-rede atrás dele.

Ambiente de teste

Não se esqueça de usar seus endereços IP do mundo real durante as configurações enquanto seguem o guia.

Local 1 gateway
IP público: 192.168.56.7 IP privado: 10.10.1.1/24 Subnet particular: 10.10.1.0/24 
Local 2 Gateway
IP público: 192.168.56.6 IP privado: 10.20.1.1/24 Subnet particular: 10.20.1.0/24 

Etapa 1: Ativando o encaminhamento IP do kernel no CentOS 8

1. Comece ativando a funcionalidade de encaminhamento IP do kernel em /etc/sysctl.conf Arquivo de configuração nos dois gateways VPN.

# vi /etc /sysctl.conf 

Adicione essas linhas no arquivo.

líquido.IPv4.ip_forward = 1 rede.IPv6.conf.todos.encaminhamento = 1 rede.IPv4.conf.todos.aceit_redirects = 0 rede.IPv4.conf.todos.send_redirects = 0 

2. Depois de salvar as mudanças no arquivo, execute o seguinte comando para carregar os novos parâmetros do kernel no tempo de execução.

# sysctl -p 

3. Em seguida, crie uma rota estática permanente no arquivo /etc/sysconfig/rede-scripts/route -th0 Nos dois gateways de segurança.

# vi/etc/sysconfig/rede-scripts/route -th0 

Adicione a seguinte linha no arquivo.

#Site 1 gateway 10.20.1.0/24 via 192.168.56.7 #site 2 gateway 10.10.1.0/24 via 192.168.56.6 

4. Em seguida, reinicie o gerente de rede para aplicar as novas alterações.

# SystemCtl Restart NetworkManager 

Etapa 2: Instalando o Strongswan no CentOS 8

5. O Strongswan o pacote é fornecido no EPEL repositório. Para instalá -lo, você precisa ativar o repositório EPEL e instalar o Strongwan nos dois gateways de segurança.

# dnf install # dnf install strongswan 

6. Para verificar a versão de Strongswan Instalado em ambos os gateways, execute o seguinte comando.

# versão Strongswan 

7. Em seguida, inicie o Strongswan Serviço e habilitá -lo para iniciar automaticamente na inicialização do sistema. Em seguida, verifique o status nos dois gateways de segurança.

# SystemCtl Start Strongswan # SystemCtl Ativar Strongswan # Systemctl Status Strongswan 

Observação: A versão mais recente de Strongswan em CENTOS/REHL 8 vem com suporte para ambos Swanctl (Um novo utilitário de linha de comando portátil introduzido com Strongswan 5.2.0, usado para configurar, controlar e monitorar o daemon ike charon usando o Vici plugin) e iniciante (ou IPSEC) utilidade usando o plugin de AVC depreciado.

8. O diretório de configuração principal é /etc/fortswan/ que contém arquivos de configuração para ambos os plugins:

# ls/etc/fortswan/ 
Estrutura de configuração de Strongswan

Para este guia, usaremos o utilitário iPsec que é invocado usando o Strongswan comando e interface de golpe. Então, usaremos os seguintes arquivos de configuração:

  • /etc/fortswan/ipsec.conf - Arquivo de configuração para o subsistema Strongswan IPSEC.
  • /etc/fortswan/ipsec.Segredos - arquivo de segredos.

Etapa 3: Configurando gateways de segurança

9. Nesta etapa, você precisa configurar os perfis de conexão em cada gateways de segurança para cada site usando o /etc/fortswan/ipsec.conf Arquivo de configuração Strongswan.

Configurando o perfil de conexão do site 1

# cp/etc/fortswan/ipsec.conf/etc/fortswan/ipsec.conf.orig # vi/etc/fortswan/ipsec.conf 

Copie e cole a seguinte configuração no arquivo.

Configuração de configuração charondebug = "all" ultyIds = yes Conn Ateway1-to-Gateway2 Type = Tunnel Auto = Iniciar KeyExchange = IKEV2 Authby = Secret Left = 192.168.56.7 esquerdsubnet = 10.10.1.1/24 direita = 192.168.56.6 DireitosBnet = 10.20.1.1/24 IKE = AES256-SHA1-MODP1024! ESP = AES256-SHA1! Agressivo = sem KeyingTries =%Forever iKelifeTime = 28800S Lifetime = 3600s dpdDelay = 30s dpdtimeout = 120s dpdaction = reinicialização 

Configurando o perfil de conexão do Site 2

# cp/etc/fortswan/ipsec.conf/etc/fortswan/ipsec.conf.orig # vi/etc/fortswan/ipsec.conf 

Copie e cole a seguinte configuração no arquivo:

Configuração de configuração charondebug = "all" ultyIds = sim conn 2gateway-to-gateway1 type = tunnel auto = start keyexchange = ikev2 authby = secret esquerdo = 192.168.56.6 LefsSubnet = 10.20.1.1/24 direita = 192.168.56.7 DireitosBnet = 10.10.1.1/24 IKE = AES256-SHA1-MODP1024! ESP = AES256-SHA1! Agressivo = sem KeyingTries =%Forever iKelifeTime = 28800S Lifetime = 3600s dpdDelay = 30s dpdtimeout = 120s dpdaction = reinicialização 

Vamos descrever brevemente cada um dos parâmetros de configuração acima:

  • configuração de configuração - Define as informações gerais de configuração para o IPSEC, que se aplica a todas as conexões.
  • Charondebug - Especifica quanta saída de depuração de charon deve ser registrada.
  • ÚNICOIDS - define se um determinado ID do participante deve ser mantido único.
  • Conn Gateway1-to-Gateway2 - usado para definir o nome da conexão.
  • tipo - Define o tipo de conexão.
  • Auto - costumava declarar como lidar com a conexão quando o iPsec é iniciado ou reiniciado.
  • keyExchange - declara a versão do protocolo IKE para usar.
  • Authby - Especifica como os colegas devem se autenticar.
  • esquerda - Declara o endereço IP da interface de rede pública do participante esquerdo.
  • Esfrete - declara a sub -rede privada atrás do participante esquerdo.
  • certo - Declara o endereço IP da interface de rede pública do participante direito.
  • Direitos - declara a sub -rede privada atrás do participante esquerdo.
  • ike - usado para declarar uma lista de algoritmos de criptografia/autenticação IKE/ISAKMP SA. Observe que esta pode ser uma lista separada por vírgula.
  • esp - Especifica uma lista de algoritmos de criptografia/autenticação ESP a serem usados ​​para a conexão.
  • agressivo - declara se deve usar o modo agressivo ou principal.
  • Keyingltries - declara o número de tentativas que devem ser feitas para negociar uma conexão.
  • ikelifetime - Especifica quanto tempo o canal de digitação de uma conexão deve durar antes de ser renegociado.
  • vida - Especifica quanto tempo uma instância específica de uma conexão deve durar, desde a negociação bem -sucedida até o vencimento.
  • DpdDelay - declara o intervalo de tempo com que as mensagens r_u_there/trocas informativas são enviadas para o par.
  • dpdtimeout - usado para declarar o intervalo de tempo limite, após o que todas as conexões a um par são excluídas em caso de inatividade.
  • dpdaction - Especifica como usar o protocolo de detecção de pares mortos (DPD) para gerenciar a conexão.

Você pode encontrar uma descrição de todos os parâmetros de configuração para o subsistema Strongswan IPsec, lendo o IPSEC.conf página de homem.

# man ipsec.conf 

Etapa 4: Configurando PSK para autenticação ponto a ponto

10. Em seguida, você precisa gerar um PSK forte para ser usado pelos colegas para autenticação da seguinte maneira.

# Head -C 24 /Dev /Urandom | base64 
Gerar a chave PSK

11. Adicione o PSK no /etc/fortswan/ipsec.conf Arquivo nos dois gateways de segurança.

# vi/etc/fortswan/ipsec.Segredos 

Digite a seguinte linha no arquivo.

#Site 1 gateway 192.168.56.7 192.168.56.6: PSK "0GE0DIEA0IOSYS2O22wydicj/ln4wocl" #site 1 gateway 192.168.56.6 192.168.56.7: PSK "0GE0DIEA0IOSYS2O22WYDICJ/LN4WOCL" 

12. Então comece o Strongsan serviço e verifique o status das conexões.

# SystemCtl Reinicie o status Strongswan # Strongswan 
Verifique as conexões Strongswan

13. Teste se você pode acessar as sub-redes privadas de qualquer um dos gateways de segurança executando um comando ping.

# ping 10.20.1.1 # ping 10.10.1.1 
Gateways de segurança de ping

14. Por último, mas não menos importante, para aprender mais Strongswan Comandos para trazer manualmente as conexões para cima/para baixo e muito mais, veja a página de ajuda Strongswan.

# Strongswan -Help 

É tudo por agora! Para compartilhar seus pensamentos conosco ou fazer perguntas, chegue -nos através do formulário de feedback abaixo. E para saber mais sobre o novo utilitário swanctl e a nova estrutura de configuração mais flexível, consulte a documentação do usuário do Strongswan.