Рейтинг:0

Маршрутизатор [ER-X] в качестве клиента WireGuard, чтобы скрыть IP-адрес офиса на сервере Debian. Не удается выполнить привязку к WireGuard IP с сервера

флаг de

Уважаемое сообщество ServerFault

У меня возникла проблема с общей конфигурацией WireGuard Tunnel.

У меня есть VPS OVH с 4 общедоступными IP-адресами (MY_PUBLIC), выступающий в роли сервера WireGuard и перенаправляющий весь трафик (и порты) на мой маршрутизатор EdgeRouter-X (192.168.255.1) (который действует как клиент WireGuard), и тогда перенаправляет его на мой сервер Debian (192.168.255.10).

Проблема в том, что когда на сервере Debian я пытаюсь выполнить привязку к любому из общедоступных IP-адресов OVH VPS WireGuard (MY_PUBLIC) [я пытался сделать привязку Apache к ним вместе с MariaDB и Docker, но ничего] я получаю сообщение об ошибке привязки, говорящее мне, что это невозможно.

 bind: невозможно назначить запрошенный адрес.

После некоторых исследований я нашел это:

Сообщение «Не удается назначить запрошенный адрес» предполагает, что имя хоста/IP, которое вы пытаетесь связать, не разрешается в локальный сетевой интерфейс.

Судя по онлайн-исследованиям, кажется, что NAT находится где-то между VPS и сервером. Я новичок в сетях и понятия не имею, как решить эту проблему.

Это серьезная проблема, поскольку сервер может использовать только те IP-адреса, которые привязаны к 0.0.0.0.

Моя конфигурация ER-X:

брандмауэр {
    включить все ping
    широковещательный пинг отключить
    группа {
        address-group MY_PUBLIC { // IP-адреса OVH VPS
            адрес 92.CENSORED.CENSORED.108
            адрес 149.CENSORED.CENSORED.64
            адрес 37.CENSORED.CENSORED.244
            адрес 149.CENSORED.CENSORED.244
        }
    }
    ipv6-имя WANv6_IN {
        падение действия по умолчанию
        описание "Входящий трафик WAN перенаправляется в LAN"
        включить-по-умолчанию-журнал
        правило 10 {
            действие принять
            description «Разрешить установленные/связанные сеансы»
            государство {
                установленный включить
                связанные включить
            }
        }
        правило 20 {
            падение действия
            описание "Удалить недопустимое состояние"
            государство {
                недопустимое включение
            }
        }
    }
    ipv6-имя WANv6_LOCAL {
        падение действия по умолчанию
        описание "Входящий трафик WAN на маршрутизатор"
        включить-по-умолчанию-журнал
        правило 10 {
            действие принять
            description «Разрешить установленные/связанные сеансы»
            государство {
                установленный включить
                связанные включить
            }
        }
        правило 20 {
            падение действия
            описание "Удалить недопустимое состояние"
            государство {
                недопустимое включение
            }
        }
        правило 30 {
            действие принять
            описание "Разрешить IPv6 icmp"
            протокол ipv6-icmp
        }
        правило 40 {
            действие принять
            описание "разрешить dhcpv6"
            пункт назначения {
                порт 546
            }
            протокол udp
            источник {
                порт 547
            }
        }
    }
    ipv6-receive-redirects отключить
    ipv6-src-маршрут отключить
    ip-src-маршрут отключить
    лог-марсиане позволяют
    изменить wireguard_route {
        правило 5 {
            действие изменить
            пункт назначения {
                группа {
                    адресная группа MY_PUBLIC
                }
            }
            изменить {
                главная таблица
            }
        }
        правило 7 {
            действие изменить
            пункт назначения {
                адрес 172.16.1.0/24
            }
            изменить {
                главная таблица
            }
        }
        правило 10 {
            действие изменить
            описание wireguard-vpn
            изменить {
                Таблица 1
            }
            источник {
                адрес 192.168.255.0/24
            }
        }
    }
    имя WAN_IN {
        падение действия по умолчанию
        описание "WAN на внутренний"
        правило 10 {
            действие принять
            описание "Разрешить установленные/связанные"
            государство {
                установленный включить
                связанные включить
            }
        }
        правило 20 {
            падение действия
            описание "Удалить недопустимое состояние"
            государство {
                недопустимое включение
            }
        }
    }
    имя WAN_LOCAL {
        падение действия по умолчанию
        описание "WAN к роутеру"
        правило 10 {
            действие принять
            описание "Разрешить установленные/связанные"
            государство {
                установленный включить
                связанные включить
            }
        }
        правило 20 {
            падение действия
            описание "Удалить недопустимое состояние"
            государство {
                недопустимое включение
            }
        }
        правило 30 {
            действие принять
            описание openvpn
            пункт назначения {
                порт 1194
            }
            протокол udp
        }
    }
    прием-перенаправления отключить
    включить переадресацию отправки
    проверка источника отключена
    синхронизация файлов cookie
}
интерфейсы {
    Ethernet eth0 {
        адрес dhcp
        описание Интернет
        dhcpv6-pd {
            пд 0 {
                интерфейс eth1 {
                    служба dhcpv6 с отслеживанием состояния
                }
                интерфейс eth2 {
                    служба dhcpv6 с отслеживанием состояния
                }
                интерфейс eth3 {
                    служба dhcpv6 с отслеживанием состояния
                }
                интерфейс switch0 {
                    адрес хоста ::1
                    обслуживание
                }
                длина префикса /64
            }
            включить быструю фиксацию
        }
        дуплекс авто
        брандмауэр {
            в {
                ipv6-имя WANv6_IN
                имя WAN_IN
            }
            местный {
                ipv6-имя WANv6_LOCAL
                имя WAN_LOCAL
            }
        }
        IPv6 {
            адрес {
                автоконф
            }
            dup-addr-detect-transmits 1
        }
        скорость авто
    }
    Ethernet eth1 {
        описание Местный
        дуплекс авто
        скорость авто
    }
    ethernet eth2 {
        описание Местный
        дуплекс авто
        скорость авто
    }
    Ethernet eth3 {
        описание Местный
        дуплекс авто
        скорость авто
    }
    Ethernet eth4 {
        описание Местный
        дуплекс авто
        по {
            выход выключен
        }
        скорость авто
    }
    петля вот {
    }
    openvpn vtun0 {
        режим сервера
        сервер {
            сервер имен 192.168.255.1
            push-маршрут 192.168.255.0/24
            подсеть 172.16.1.0/24
        }
        тлс {
            ca-cert-файл /config/auth/cacert.pem
            файл сертификата /config/auth/server.pem
            dh-файл /config/auth/dh.pem
            ключевой файл /config/auth/server.key
        }
    }
    переключатель switch0 {
        адрес 192.168.255.1/24
        описание Местный
        брандмауэр {
            в {
                изменить wireguard_route
            }
        }
        мту 1500
        коммутатор-порт {
            интерфейс eth1 {
            }
            интерфейс eth2 {
            }
            интерфейс eth3 {
            }
            интерфейс eth4 {
            }
            отключить поддержку vlan
        }
    }
    проволока WG0 {
        адрес 10.0.0.2/30
        описание Wireguard
        порт прослушивания 51821
        мту 1420
        партнер CENSORED+CENSORED+CENSORED= {
            разрешено-ips 0.0.0.0/0
            конечная точка 92.CENSORED.CENSORED.108:51821
            постоянный-keepalive 25
            предварительный ключ /config/auth/wg-preshared.key
        }
        закрытый ключ /config/auth/wg.key
        разрешенный маршрут ips ложный
    }
}
порт вперед {
    автоматическое включение брандмауэра
    шпилька-nat включить
    переключатель lan-интерфейса0
    правило 1 {
        описание "Разрешить ВСЕ"
        переслать {
            адрес 192.168.255.10
        }
        оригинальный порт 1-65535
        протокол tcp_udp
    }
    wan-интерфейс WG0
}
протоколы {
    статический {
        Таблица 1 {
            description "таблица для принудительной установки wg0:aws"
            интерфейс-маршрут 0.0.0.0/0 {
                интерфейс следующего перехода wg0 {
                }
            }
            маршрут 0.0.0.0/0 {
                черная дыра {
                    расстояние 255
                }
            }
        }
    }
}
оказание услуг {
    DHCP-сервер {
        отключено ложно
        отключить обновление хост-файла
        имя общей сети LAN-X {
            авторитетное отключение
            подсеть 192.168.255.0/24 {
                маршрутизатор по умолчанию 192.168.255.1
                днс-сервер 192.168.255.1
                аренда 86400
                старт 192.168.255.2 {
                    остановка 192.168.255.254
                }
                статическое отображение iDRAC {
                    ip-адрес 192.168.255.120
                    mac-адрес CENSORED:CENSORED:CENSORED:CENSORED:CENSORED:CENSORED
                }
                узел статического отображения2 {
                    ip-адрес 192.168.255.10
                    mac-адрес CENSORED:CENSORED:CENSORED:CENSORED:CENSORED:CENSORED
                }
            }
        }
        статический-arp отключить
        использовать-dnsmasq отключить
    }
    днс {
        пересылка {
            размер кеша 150
            переключатель прослушивания0
            слушать на vtun0
        }
    }
    графический интерфейс {
        http-порт 80
        https-порт 443
        старые шифры позволяют
    }
    нат {
        правило 5001 {
            описание wireguard-nat
            журнал отключить
            исходящий интерфейс wg0
            протоколировать все
            источник {
                адрес 192.168.255.0/24
            }
            тип маскарад
        }
        правило 5002 {
            описание "маскарад для WAN"
            журнал отключить
            исходящий интерфейс eth0
            протоколировать все
            тип маскарад
        }
    }
    сш {
        порт 22
        версия протокола v2
    }
    унмс {
    }
}
система {
    аналитика-обработчик {
        отправить-аналитика-отчет ложно
    }
    обработчик сбоев {
        отправить отчет о сбое false
    }
    имя хоста EdgeRouter-X-5-Port
    авторизоваться {
        пользователь ubnt {
            аутентификация {
                зашифрованный пароль CENSORED
            }
            уровень администратора
        }
    }
    НТП {
        сервер 0.ubnt.pool.ntp.org {
        }
        сервер 1.ubnt.pool.ntp.org {
        }
        сервер 2.ubnt.pool.ntp.org {
        }
        сервер 3.ubnt.pool.ntp.org {
        }
    }
    разгрузить {
        hwnat включить
        ipsec включить
    }
    системный журнал {
        Глобальный {
            объект все {
                уведомление об уровне
            }
            протоколы объекта {
                уровень отладки
            }
        }
    }
    часовой пояс UTC
}

Конфигурация WG моего OVH VPS:

[Интерфейс]
Адрес = 10.0.0.1/30
Порт прослушивания = 51821
PrivateKey = ЦЕНЗИРОВАНО

### Клиент впн
[Вглядеться]
Публичный ключ = ЦЕНЗИРОВАНО
PresharedKey = ЦЕНЗИРОВАНО
Разрешенные IP-адреса = 10.0.0.2/30

Мои OVH IPTables:

# Сгенерировано iptables-save v1.8.7 в воскресенье, 9 января, 11:04:33 2022 г.

*фильтр

:ВВОД ПРИНЯТЬ [971:145912]

:ВПЕРЕД ПРИНЯТЬ [920:137172]

: ВЫВОД ПРИНЯТ [637:108812]

:f2b-sshd - [0:0]

СОВЕРШИТЬ

# Завершено в воскресенье, 9 января, 11:04:33 2022 г.

# Сгенерировано iptables-save v1.8.7 в воскресенье, 9 января, 11:04:33 2022 г.

*натуральный

: ПРЕДВАРИТЕЛЬНОЕ ПРИНЯТИЕ [133:6792]

:ВВОД ПРИНЯТ [61:2272]

: ВЫВОД ПРИНЯТ [3:228]

:ОТПРАВКА ПРИНЯТИЯ [66:4011]

-A PREROUTING -i ens3 -p udp -m многопортовый --dports 1000:51820 -j DNAT --к-назначению 10.0.0.2

-A PREROUTING -i ens3 -p udp -m многопортовый --dports 51822:65534 -j DNAT --к-назначению 10.0.0.2

-A PREROUTING -i ens3 -p tcp -m multiport --dports 51822:65534 -j DNAT --к месту назначения 10.0.0.2

-A PREROUTING -i ens3 -p tcp -m multiport --dports 1000:51820 -j DNAT --к месту назначения 10.0.0.2

-A PREROUTING -i ens3 -p tcp -m multiport --dports 21,22,80,25,995,110,443,465,993,143 -j DNAT --к месту назначения 10.0.0.2

-A PREROUTING -i ens3 -p udp -m multiport --dports 21,22,80,25,995,110,443,465,993,143 -j DNAT --к месту назначения 10.0.0.2

-A POSTRAOUTING -o ens3 -j МАСКАРАД

СОВЕРШИТЬ

# Завершено в воскресенье, 9 января, 11:04:33 2022 г.

Просто для устранения неполадок я попытался привязаться к моему офисному IP-адресу, который, как и ожидалось и хотел, не работает, как за туннелем WireGuard ER-X.

Вот несколько тем, которые помогли мне настроить мою текущую структуру WireGuard: https://community.ui.com/questions/EdgeRouter-X-as-WireGuard-Client-Forward-ports-from-WG-tunnel-to-LAN/f19957fb-70be-485f-832d-381c6ea4b306

https://community.ui.com/questions/EdgeRouter-X-as-a-WireGuard-client-with-port-forwarding-or-User-IP-is-shown-to-be-WireGuard-tunnels/2a8b19ab- ac0c-48ed-b367-afd3914de9c2

Заранее спасибо за вашу помощь!

djdomi avatar
флаг za
вам следует рассмотреть возможность использования обратного прокси-сервера для маршрутизации http-трафика
Nicolò avatar
флаг de
@djdomi Проблема в том, что мне нужно, чтобы все порты были переадресованы и привязывались, например, с помощью Docker.

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.