2

Я пытаюсь настроить Wireguard VPN на сервере Fedora. У меня есть и работает, и я могу подключиться к нескольким клиентам, просматривать его, SSH на сервере и т.д. В целом, это просто работает. За исключением одного. Если у меня есть два клиента, подключенных одновременно, я не могу ssh от клиента A к клиенту B или другим способом по этому вопросу через VPN. Я могу ssh с сервера на любой из клиентов и с клиентов на сервер, но не между клиентом. Основной причиной является брандмауэр, поэтому я попытался отключить его, и, как я и ожидал, теперь я могу подключиться к ssh между клиентами в одной подсети VPN.

Таким образом, брандмауэр не настроен должным образом, но я добавил правило ниже:

iptables -A FORWARD -i wg0 -o wg0 -j ACCEPT

что должно позволить клиентам общаться? Поскольку это сервер Fedora, работающий с firewalld, я решил создать новую зону с именем vpn и добавить к ней интерфейс wg0, чтобы я мог создавать специальные правила для VPN. Это работает, и я все еще могу просматривать и SSH между клиентом и сервером, но не между клиентами.

Что мне не хватает? Должно ли правило пересылки быть установлено через firewalld, и если да, то какая команда должна делать это, а я не могу понять, что это правильно.

Изменить: я пытался с командой

firewall-cmd --direct --add-rule ipv4 filter FORWARD 0 -i wg0 -o wg0 -j ACCEPT

но получите ответ COMMAND_FAILED от firewalld. Нет кодов ошибок или что-нибудь еще.

Редактировать 2: я добавил

firewall-cmd --permanent --zone=vpn --set-target=ACCEPT

Теперь я могу ssh между клиентами. Это правильный способ сделать это?

1 ответ1

1

В отсутствие других комментариев / ответов я поделюсь, как я получил это, чтобы работать. Я не знаю, является ли это лучшим способом, но это работает.

Я заметил, что в зоне vpn есть targer = default. по умолчанию ОТКЛОНЕН.

я добавил

firewall-cmd --permanent --zone=vpn --set-target=ACCEPT

Теперь я могу ssh между клиентами.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .