Estou tentando configurar o ipsec, mas o pluto parece não se ligar a um IP público e o Kernel IPsec requer atualização.
Isso é o que eu criei até agora:
-IPSec Verifica estados que meu kernel não suporta IPsec
-Eu tive o provedor VPS ativar o IPSec no ambiente openvz na máquina host, no entanto eles afirmam que eu tenho que reconstruir o kernel e me forneceram um link para o site de arquivos kernel do Linux para kernels linux genéricos.
-Eu tentei construir o kernel e instalá-lo, mas parece que não consigo instalá-lo corretamente. O último passo que eu faço é 'mkinitramfs -o initrd.img-3.16.3 3.16.3'
-tutorials afirmam fazer coisas com o grub, no entanto eu estou em um VPS e não acho que o grub está mesmo na minha imagem VPS? Um tutorial que eu segui: link
- Eu tentei alguns comandos do grub e nada parece estar lá. Como você escreve um kernel em um container VPS dentro do container?
-Eu desisti de compilar a partir do código-fonte e encontrei pacotes de kernel * .deb e tentei instalá-los, eles pareciam descompactar e nenhum erro veio dele, mas quando eu reiniciei ainda era o kernel antigo, existe um comando especial você usa com o dpkg-buildpackage para fazer a instalação? Está tendo problemas de instalação devido ao não boot loader, já que é um VPS? (Assumindo que um contêiner não possui um gerenciador de inicialização?)
aqui está a saída do ipsec, mas acho que parte do problema é o kernel:
Sep 18 04:36:45 shiftmy ipsec_setup: Starting Openswan IPsec 2.6.41...
Sep 18 04:36:45 shiftmy ipsec_setup: Using NETKEY(XFRM) stack
Sep 18 04:36:45 shiftmy ipsec_setup: multiple ip addresses, using 127.0.0.2 on venet0
Sep 18 04:36:45 shiftmy ipsec_setup: ...Openswan IPsec started
Sep 18 04:36:45 shiftmy ipsec__plutorun: adjusting ipsec.d to /etc/ipsec.d
Sep 18 04:36:45 shiftmy pluto: adjusting ipsec.d to /etc/ipsec.d
Sep 18 04:36:45 shiftmy ipsec__plutorun: 002 added connection description "L2TP-PSK-noNAT"
Sep 18 04:36:45 shiftmy ipsec__plutorun: 003 no public interfaces found
aqui está o meu arquivo de interfaces, eu li em algum lugar que o ipsec se liga à interface padrão que é a primeira na lista de interfaces. neste caso venet0 127.0.0.2 enquanto o IP público está em venet0: 0 107.161.xx.xx (não tenho certeza se este é o problema) Meu arquivo de interfaces provedores VPS está bloqueado por isso não posso modificar essa parte, acredito que todo o tráfego vai de 107.161.xx.xx a 127.0.0.2 que se conecta à máquina host openvz, também conhecida como gateway.
root@shiftmy:/etc/network# cat /etc/network/interfaces
# This configuration file is auto-generated.
#
# WARNING: Do not edit this file, your changes will be lost.
# Please create/edit /etc/network/interfaces.head and
# /etc/network/interfaces.tail instead, their contents will be
# inserted at the beginning and at the end of this file, respectively.
#
# NOTE: it is NOT guaranteed that the contents of /etc/network/interfaces.tail
# will be at the very end of this file.
#
# Auto generated lo interface
auto lo
iface lo inet loopback
# Auto generated venet0 interface
auto venet0
iface venet0 inet manual
up ifconfig venet0 up
up ifconfig venet0 127.0.0.2
up route add default dev venet0
down route del default dev venet0
down ifconfig venet0 down
iface venet0 inet6 manual
up route -A inet6 add default dev venet0
down route -A inet6 del default dev venet0
auto venet0:0
iface venet0:0 inet static
address 107.161.xx.xx
netmask 255.255.255.255
Eu tenho pesquisado na rede por problemas "ipsec__plutorun: 003 sem interfaces públicas encontradas" e não consigo encontrar muita ajuda. Não tenho certeza se isso é mesmo o problema real, pois acredito que eu configurei as interfaces corretamente.
O ipsec verify também falha:
Version check and ipsec on-path [OK]
Openswan U2.6.41/K(no kernel code presently loaded)
See 'ipsec --copyright' for copyright information.
Checking for IPsec support in kernel [FAILED]
The ipsec service should be started before running 'ipsec verify'
Hardware random device check [N/A]
Two or more interfaces found, checking IP forwarding [OK]
Checking rp_filter [ENABLED]
/proc/sys/net/ipv4/conf/all/rp_filter [ENABLED]
Checking that pluto is running [OK]
Pluto listening for IKE on udp 500 [FAILED]
Pluto listening for IKE on tcp 500 [NOT IMPLEMENTED]
Pluto listening for IKE/NAT-T on udp 4500 [DISABLED]
Pluto listening for IKE/NAT-T on tcp 4500 [NOT IMPLEMENTED]
Pluto listening for IKE on tcp 10000 (cisco) [NOT IMPLEMENTED]
Checking NAT and MASQUERADEing [TEST INCOMPLETE]
Checking 'ip' command [OK]
Checking 'iptables' command [OK]
ipsec verify: encountered errors
Eu li que pode falhar se o ipsec não for iniciado corretamente e mostrar falhas falsas em algumas seções da lista de verificação. O IPsec parece estar 'em execução', não tenho certeza se o suporte do Kernel não está realmente lá ou se é uma falha falsa? Também não sei como consertar a falha do pluto.
Eu tenho seguido vários guias e não consigo superar esse problema.
ipsec config:
root@shiftmy:/etc/network# cat /etc/ipsec.conf
version 2.0 # conforms to second version of ipsec.conf specification
config setup
interfaces=%defaultroute
dumpdir=/var/run/pluto/
nat_traversal=yes
virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12,%v4:25.0.0.0/8,%v6:fd00::/8,%v6:fe80::/10
oe=off
protostack=auto
protostack=netkey
force_keepalive=yes
keep_alive=60
conn L2TP-PSK-noNAT
authby=secret
pfs=no
auto=add
keyingtries=3
ikelifetime=8h
keylife=1h
ike=aes256-sha1;modp1024!
phase2alg=aes256-sha1;modp1024
type=transport
left=107.161.xx.xx
leftprotoport=17/1701
right=%any
rightprotoport=17/%any
dpddelay=10
dpdtimeout=20
dpdaction=clear
segredos ipsec:
root@shiftmy:/etc/network# cat /etc/ipsec.secrets
107.161.xx.xx %any: PSK "<key here>"
#include /var/lib/openswan/ipsec.secrets.inc