AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / server / Perguntas / 1167911
Accepted
BluePython
BluePython
Asked: 2024-11-19 18:37:10 +0800 CST2024-11-19 18:37:10 +0800 CST 2024-11-19 18:37:10 +0800 CST

Configuração segura do Strongswan

  • 772

Configurei uma configuração de host para host na qual quero que apenas o IP do servidor fique exposto para que qualquer pessoa conectada à VPN possa se comunicar com os serviços naquele servidor.

connections {
    rw {
      pools = rw_pool
      send_cert = always
      unique = no
      fragmentation=yes
      local {
        auth = pubkey
        certs = [CERT].pem
        id = [ID]
      }

      remote {
        auth = eap-mschapv2
        eap_id = %any
      }
      children {
        rw {
          local_ts  = [WAN IP OF SERVER]
          esp_proposals = chacha20poly1305-sha512, aes256gcm16-ecp384,aes256-sha256,aes256-sha1,3des-sha1
        }
      }
      send_certreq = no
    }
 }

A conexão funciona e as solicitações estão de fato vindo de um intervalo de IP selecionado pela VPN. No entanto, como estou mirando no IP externo, isso ainda não rotearia o tráfego por um canal não seguro após a saída do IP?

Configuração do cliente:

connections {
    home {
      version=2
      remote_addrs = [SERVER ADDR]
      vips = 0.0.0.0
      local {
        auth = eap-mschapv2
        eap_id = [ID]
      }
      remote {
        auth = pubkey
        id = [SERVER ID]
      }
      children {
        home {
          remote_ts  = [WAN IP OF SERVER]
          local_ts = dynamic
          #remote_ts  = 10.10.10.0/24
          start_action = start
        }
      }
    }
  }

Uma segunda pergunta menor: como você faria uma configuração de host para site, onde meu servidor é uma entidade única em sua rede, mas o outro lado é um roteador fortigate com uma rede maior por trás dele, essa configuração funcionaria?

Agradecemos antecipadamente pelo esforço!

EDIT: Problema de IP resolvido usando ip para criar uma interface tun0 e usando isso como local_ts

vpn
  • 1 1 respostas
  • 47 Views

1 respostas

  • Voted
  1. Best Answer
    grawity
    2024-11-19T21:54:32+08:002024-11-19T21:54:32+08:00

    isso ainda não rotearia o tráfego por um canal não seguro após a saída do IP?

    Não, e essa é a principal diferença entre IPsec e outras implementações de VPN. O IPsec foi originalmente projetado especificamente para ser um canal seguro de host para host, com VPNs adicionadas posteriormente (o suporte a VPN que agora faz parte do IKEv2 costumava ser uma extensão proprietária da Cisco).

    Por isso, implementações tradicionais de IPsec como o strongSwan são baseadas em políticas e não em rotas 1 – o que significa que não há uma interface de túnel separada pela qual os pacotes precisam ser roteados para se tornarem seguros; em vez disso, eles são interceptados e transformados à medida que saem da interface de rede regular .

    (Na verdade, há até mesmo um modo SA filho – transportmode – que é destinado exclusivamente para proteger o tráfego host-to-host para o próprio ponto de extremidade IPsec. Ele raramente é usado, pois o modo túnel pode fazer o mesmo de qualquer maneira, embora o modo de transporte tenha menor sobrecarga de MTU.)

    Portanto, mesmo que você entre em contato com o endereço externo do servidor VPN, que normalmente teria uma rota de "desvio" em sistemas baseados em rotas, ele ainda estará sujeito à camada de transformação IPsec e será criptografado (desde que esteja incluído nos local/remote_ts seletores de tráfego negociados da SA filha).

    Depois de estabelecer o SA, execute swanctl -lpara ver qual tráfego ele afeta ou, se desejar, use ip xfrmpara ver diretamente as políticas de "transformação" do Linux que são aplicadas logo antes dos pacotes saírem da interface.

    Em caso de dúvida, use iptables policymatch ou nftables meta ipsec existspara evitar que pacotes não seguros saiam ou entrem no seu servidor.

    1 (A arquitetura baseada em políticas do strongSwan torna o uso do "IP virtual" da VPN um tanto confuso, a ponto de eles cederem e adicionarem algum suporte ao modelo baseado em rotas.)

    Uma segunda pergunta menor: como você faria uma configuração de host para site, onde meu servidor é uma entidade única em sua rede, mas o outro lado é um roteador fortigate com uma rede maior por trás dele, essa configuração funcionaria?

    Deve ser suficiente expandir os seletores de tráfego no lado do Fortigate (seu equivalente a local_ts) e, consequentemente, o do seu servidor remote_ts, para cobrir a sub-rede adicional.

    • 0

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Você pode passar usuário/passar para autenticação básica HTTP em parâmetros de URL?

    • 5 respostas
  • Marko Smith

    Ping uma porta específica

    • 18 respostas
  • Marko Smith

    Verifique se a porta está aberta ou fechada em um servidor Linux?

    • 7 respostas
  • Marko Smith

    Como automatizar o login SSH com senha?

    • 10 respostas
  • Marko Smith

    Como posso dizer ao Git para Windows onde encontrar minha chave RSA privada?

    • 30 respostas
  • Marko Smith

    Qual é o nome de usuário/senha de superusuário padrão para postgres após uma nova instalação?

    • 5 respostas
  • Marko Smith

    Qual porta o SFTP usa?

    • 6 respostas
  • Marko Smith

    Linha de comando para listar usuários em um grupo do Windows Active Directory?

    • 9 respostas
  • Marko Smith

    O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL?

    • 3 respostas
  • Marko Smith

    Como determinar se uma variável bash está vazia?

    • 15 respostas
  • Martin Hope
    Davie Ping uma porta específica 2009-10-09 01:57:50 +0800 CST
  • Martin Hope
    kernel O scp pode copiar diretórios recursivamente? 2011-04-29 20:24:45 +0800 CST
  • Martin Hope
    Robert ssh retorna "Proprietário incorreto ou permissões em ~/.ssh/config" 2011-03-30 10:15:48 +0800 CST
  • Martin Hope
    Eonil Como automatizar o login SSH com senha? 2011-03-02 03:07:12 +0800 CST
  • Martin Hope
    gunwin Como lidar com um servidor comprometido? 2011-01-03 13:31:27 +0800 CST
  • Martin Hope
    Tom Feiner Como posso classificar a saída du -h por tamanho 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich O que é um arquivo Pem e como ele difere de outros formatos de arquivo de chave gerada pelo OpenSSL? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent Como determinar se uma variável bash está vazia? 2009-05-13 09:54:48 +0800 CST

Hot tag

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve