У меня есть виртуальная машина в Google Cloud, которая служит vpn шлюз. Я выполнил шаги, указанные в этой документации https://cloud.google.com/vpc/docs/special-configurations#settingupvpn
Я использую ipsec.conf:
conn cnt
authby=psk
auto=start
dpdaction=hold
esp=3des-sha1
forceencaps=yes
ike=3des-sha1-modp1024
ikelifetime=1440m
keyexchange=ikev1
mobike=no
type=tunnel
left=%any
leftid=x.x.x.x
leftsubnet=10.0.1.0/24
leftauth=psk
leftikeport=4500
right=x.x.x.x
rightsubnet=0.0.0.0/0
rightauth=psk
rightikeport=4500
Все работает нормально, пока я не запустил сервер strongswan. Соединение vpn установлено успешно, но после его успешного завершения сеанс ssh завершается ошибкой, и я не могу запустить его снова. Я использовал консоль браузера, пытался из оболочки gc, пытался со своего компьютера, и он меня не пускает.
Я получил сообщение об ошибке:
OpenSSH_7.4p1 Debian-10+deb9u6, OpenSSL 1.0.2r 26 Feb 2019
debug1: Reading configuration data /home/myusername/.ssh/config
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: /etc/ssh/ssh_config line 19: Applying options for *
debug2: resolving "x.x.x.x" port 22
debug2: ssh_connect_direct: needpriv 0
debug1: Connecting to x.x.x.x [x.x.x.x] port 22.
Он остается там пару минут, а затем я получил следующую ошибку:
ssh: connect to host x.x.x.x port 22: Connection timed out
ERROR: (gcloud.compute.ssh) [/usr/bin/ssh] exited with return code [255].
Я пробовал использовать другие ключи ssh, удалил уже созданные и создал новые, но это не сработало. .
Я также проверил брандмауэр, и я считаю, что он хорошо настроен, но я также думаю, что проблемы в нем.
Я настроил брандмауэр с помощью команды:
gcloud compute firewall-rules create ssh --source-ranges 0.0.0.0/0 \
--allow tcp:22 \
--network vpn-network
Я также изменил приоритет этого Правило брандмауэра, но все еще не работает.
Я также повторил процесс с нуля с другим экземпляром, IPS и регионами, и соединение ssh не удается, как только vpn стабилизируется.
Я также попытался увеличить размер диска, и он сделал не работает.
Я подключился к последовательной консоли, и похоже, что все в виртуальной машине работает нормально, а VPN работает, как ожидалось.
Любая помощь будет принята с благодарностью :)
Вы можете выполнить трассировку и подтвердить, где заблокирован сетевой трафик через порт 22:
$ traceroute -T -p 22 <IP address>
Также проверьте, правильно ли настроены правила брандмауэра на вашем локальном сайте, чтобы разрешить сетевой трафик через порт 22.
] Если правила локального брандмауэра верны, вы можете поделиться здесь результатом трассировки.