OpenVPN Tunneling Apenas na Rede Local?

1

Eu tenho dois endereços IP: 10.200.0.5 e 10.200.0.6 e gostaria de conectar os dois por meio de um túnel OpenVPN (um pertence a um PC com Windows 7 e o outro a um laptop Fedora). Existe uma maneira de fazer isso usando apenas o interno, a rede, os endereços, o endereço do gateway e a sub-rede, ou seja : sem a necessidade de um endereço de Internet ou conexão remota (como fora da minha conexão remota de rede local)?

03.05.2018: além do comentário do grawity , preciso explicar que o problema que eu estava tendo é com a diretiva remota : mesmo no Mini-HOWTO de chave estática ( https://openvpn.net/index.php/open-source /documentation/misc Miscellaneous / 78-static-key-mini-howto.html ) esse requisito existe e é o que está causando o problema porque, a menos que eu possa criar um domínio local na minha caixa linux ou no meu PC com Windows para resolver, então falhará.

Como eu fui completamente incapaz de criar um domínio e resolvê-lo como um domínio local (mesmo com um serviço nomeado BIND em funcionamento na caixa Linux), então, logicamente, a solução é manter os endereços IP locais (de rede); somente a diretiva remota não aceitará isso e, portanto, minha pergunta.

05.03.2018: teria postado uma atualização e a resposta final, resolvida, se o fórum não tivesse sido configurado para bloquear minhas atualizações com algumas bobagens altamente paternalistas de "respire" . - São necessárias três linhas de código, uma pessoa comentando com comentários não muito úteis, e o fórum bloqueia minhas tentativas de adicionar mais material à postagem, com o objetivo de permitir que outras pessoas tenham uma idéia mais clara do problema. é, e é algo que o mesmo fórum encoraja e recomenda em primeiro lugar !! ... tudo porque ninguém mais pode se incomodar em ajudar com os problemas absolutamente básicos e iniciantes que tenho tido com isso e com o BIND.

... e o que dizer de pessoas como eu (das quais existem claramente milhares) que precisam resolver algo de uma maneira ou de outra e estão preparadas para adicionar seus esforços se alguém puder ajudar com o básico absoluto de como para resolver o problema, quando eles já tentaram usar quaisquer outros recursos que possam existir e foram completamente mal-sucedidos em fazer qualquer progresso com esse material (como comigo, onde a falha completa do OpenVPN em detalhar completamente algumas de suas opções de configuração pode criar um problema quase intransponível de conseguir que as configurações mais básicas funcionem).

De qualquer forma, não importa, seja como for, esta é a solução (funcional) final para quem precisa conectar duas máquinas usando apenas endereços de rede (sem configurações de domínio e absolutamente nenhuma rede remota ou conexões example.com ), com as duas máquinas na mesma sub-rede. Essa também é a conexão mais simples possível para quem deseja começar a usar o OpenVPN.

Configuração:

1x computador pessoal Windows (executando o Windows 7 Pro x64)

1x laptop Fedora 27 Server Edition

Ambas as máquinas conectam-se através de um roteador na mesma LAN e podem se comunicar (porta 1194 - a menos que configurada para ser algo diferente). Minha configuração usa a separação de VLAN com IPv4 estático por questões de segurança e para fornecer um endereço IP adicional; mas o endereço IP adicional também pode ser criado por meio de um endereço IPv4 estático autônomo adicionado ao adaptador Ethernet sem VLAN.

  • OpenVPN instalado em ambas as máquinas, com a versão do repositório ( ou seja : não criada a partir da fonte na máquina, mas baixada via Yum ) instalada na caixa do linux

  • arquivo static.key gerado na caixa linux usando:openvpn --genkey --secret static.key

  • o arquivo acima na minha caixa do linux está localizado em: / etc / openvpn / server ou no subdiretório OpenVPN \ config na máquina Windows.

  • sample.ovpn [ vi ] é armazenado em um arquivo de texto ASCII (Notepad / Notepad ++ como editor, não no Microsoft Word!) como um arquivo .ovpn no subdiretório OpenVPN \ config na máquina Windows e como um arquivo .conf em / etc / openvpn / server na caixa do linux.

  • A GUI do OpenVPN (botão Iniciar - objeto redondo com o logotipo do Windows na parte inferior esquerda da tela - Todos os programas - OpenVPN) é iniciada na máquina Windows, resultando em um pequeno ícone na bandeja do sistema no canto inferior direito da tela (tela conforme visualizado pelo usuário). O arquivo de configuração .ovpn deve ser acessível e editável clicando com o botão direito do mouse no ícone para selecioná-lo, da mesma forma que no arquivo de log.

  • O vpntest.conf é instanciado na caixa linux com openvpn vpntest.confe conforme detalhado acima na máquina Windows.

Tudo bem, agora um túnel será estabelecido entre as duas máquinas, e será possível abrir uma instância de CMD (linha de comando) na máquina Windows para executar ping na caixa do linux. A caixa do linux exigirá mais configurações para que o OpenVPN seja executado em segundo plano antes que seja possível executar ping no cliente, pois ele permanecerá em primeiro plano; efetivamente tornando a máquina inutilizável para qualquer coisa além dos serviços que já estão sendo executados em segundo plano.

Observações:

O OpenVPN no lado do Windows usa um adaptador TAP. Isso não faz diferença se sua configuração está ou não usando TAP ou TUN, e não deve impedir que essa configuração simples funcione.

Os dois endereços IP ifconfig não estão configurados no meu roteador e não há absolutamente nenhuma necessidade de reconfigurar meu roteador para permitir seu uso. - Eles fazem parte da mesma sub-rede 255.255.255.0 dos outros dois endereços 10.200.0 (10.200.0.5 e 10.200.0.6), portanto, o OpenVPN pode usá-los por meio do adaptador OpenVPN e do DHCP.

Os nomes dos arquivos de configuração não seguem convenções de nomenclatura obrigatórias além do senso comum, extensão de arquivo .ovpn na máquina Windows e extensão de arquivo .conf na caixa linux.

O OpenVPN é extremamente irritado com as sub-redes nas quais trabalhará e até se recusará a trabalhar nas sub-redes permitidas nas sub-redes show-valid-valid . O uso de endereços não sequenciais em uma sub-rede também tem alta probabilidade de resultar em tentativas de conexão com falha.

Cuidado com o firewalld e o SELinux. O SELinux pode ser domado até a reinicialização com satanforce , desculpe, setenforce permissivo e em seu arquivo / etc / selinux .conf . Eu tenho uma proteção de firewall e anti-spoof em execução no roteador sem problemas, juntamente com um firewall de software na máquina Windows, uma conexão VPN remota e conexões SSh ocasionais na máquina linux; todos os quais coexistem felizes juntos.

A configuração da VLAN pode envolver a configuração via adaptador de rede padrão no Windows, seguindo a configuração inicial no roteador. O Windows 7 não gosta de VLAN marcada, portanto, uma VLAN0 sem marcação pode ser um requisito. Também é provável que apenas seja possível adicionar uma VLAN0 sem etiqueta no lado do adaptador de rede após a criação inicial de uma VLAN1 marcada. Isso acontece com os adaptadores Intel, e o Windows precisará estar conectado à porta não marcada no roteador, seguindo a configuração de VLAN do roteador.

Em uma caixa do Fedora, o Guia do Administrador do Fedora cobre a criação de VLAN. É um pouco ambíguo em uma parte, mas o resultado final, se seguido com cuidado, funciona e também funciona para VLANS com tags.

sample.ovpn:

dev tun
remote 10.200.0.6
ifconfig 10.200.0.1 10.200.0.2
secret static.key
cipher AES-256-CBC
persist-tun
persist-key

vpntest.conf

dev tun
remote 10.200.0.5
ifconfig 10.200.0.2 10.200.0.1
user nobody
group nobody
secret static.key
cipher AES-256-CBC
persist-tun
persist-key

sample.log

Tue Mar 06 00:34:27 2018 disabling NCP mode (--ncp-disable) because not in P2MP client or server mode
Tue Mar 06 00:34:27 2018 OpenVPN 2.4.4 x86_64-w64-mingw32 [SSL (OpenSSL)] [LZO] [LZ4] [PKCS11] [AEAD] built on Sep 26 2017
Tue Mar 06 00:34:27 2018 Windows version 6.1 (Windows 7) 64bit
Tue Mar 06 00:34:27 2018 library versions: OpenSSL 1.0.2l  25 May 2017, LZO 2.10
Enter Management Password:
Tue Mar 06 00:34:27 2018 open_tun
Tue Mar 06 00:34:27 2018 TAP-WIN32 device [Local Area Connection 6] opened: \\.\Global\{B1A13B50-22A1-48D4-980B-7105480DBA9B}.tap
Tue Mar 06 00:34:27 2018 Notified TAP-Windows driver to set a DHCP IP/netmask of 10.200.0.1/255.255.255.252 on interface {B1A13B50-22A1-48D4-980B-7105480DBA9B} [DHCP-serv: 10.200.0.2, lease-time: 31536000]
Tue Mar 06 00:34:27 2018 Successful ARP Flush on interface [15] {B1A13B50-22A1-48D4-980B-7105480DBA9B}
Tue Mar 06 00:34:27 2018 do_ifconfig, tt->did_ifconfig_ipv6_setup=0
Tue Mar 06 00:34:27 2018 TCP/UDP: Preserving recently used remote address: [AF_INET]10.200.0.6:1194
Tue Mar 06 00:34:27 2018 UDP link local (bound): [AF_INET][undef]:1194
Tue Mar 06 00:34:27 2018 UDP link remote: [AF_INET]10.200.0.6:1194
Tue Mar 06 00:34:36 2018 Peer Connection Initiated with [AF_INET]10.200.0.6:1194
Tue Mar 06 00:34:41 2018 WARNING: this configuration may cache passwords in memory -- use the auth-nocache option to prevent this
Tue Mar 06 00:34:41 2018 Initialization Sequence Completed
Y Treehugger Cymru
fonte

Respostas:

0

Sim. Não há nada no OpenVPN que iria requer qualquer tipo de acesso à Internet; não é um "serviço de nuvem" ou algo assim.

gravidade
fonte
Obrigado, mas estou ciente disso, - eu sei que, em teoria, um endereço público na Internet só deve ser necessário se eu desejar estabelecer uma conexão entre duas redes remotas; Então, por que, então, a necessidade de uma diretiva remota ? - Se eu o omitir, a conexão não poderá ser estabelecida; se eu a alterar para um endereço IP de rede local, da mesma forma.
Y Treehugger Cymru
Isso responde à minha pergunta, mas não foi de todo útil para que eu resolvesse o problema; no entanto, dito isso, agora consegui fazer algo funcionar, com um túnel capaz de executar ping, mas preciso resolver outros problemas antes de postar minha solução de trabalho.
Y Treehugger Cymru
A remotediretiva não implica nada sobre Internet nem endereços públicos. Significa "a outra extremidade da conexão".
grawity
Observado, mas, sem ofensas, eu sinto que você sabe tão pouco quanto eu sobre a configuração do OpenVPN ou está sendo deliberadamente vago e publicando contrariamente às diretrizes do fórum sobre como ajudar as pessoas (três linhas de código simples - o mínimo do OpenVPN requisito - como um post seria trivial para qualquer pessoa com algum entendimento da configuração do OpenVPN).
Y Treehugger Cymru