Я в основном пытаюсь подключить SSH к RPi, который всегда подключен к VPN, что делает сбой SSH. Я получил немного идей о том, как решить проблему, и лучшее ИМХО - заставить SSH-трафик проходить через 2-ю таблицу маршрутизации.

Проблема в том, что это довольно сложно для такого нуба, как я. Поэтому мне было интересно, смогу ли я получить некоторые указатели, чтобы начать, так как я полностью потерян. Особенно о том, как маркировать трафик SSH, чтобы пройти через 2-ю таблицу.

Спасибо

-a

РЕДАКТИРОВАТЬ: Еще раз спасибо за ответ Мариус. Наконец-то я нашел время поработать над этим, и вот что я сделал.

  1. sudo modprobe ip_conntrack
  2. sudo iptables -A INPUT -m состояние --state NEW -p tcp --dport 22 -j CONNMARK --set-mark 1
  3. тогда как root:
  4. echo 200 hma >> /etc /iproute2 /rt_tables
  5. ip route add 10.0.1.0/24 dev eth0 таблица hma
  6. ip rule добавить fwmark 1 таблица hma

но это не похоже на работу. Поскольку я действительно не уверен, что делать, это не удивительно.

В частности, я действительно не уверен насчет 2) и 4). 2) правильно ли вообще? И для 4), где я могу найти правильный IP-адрес для добавления, что означает /24, и должен ли он пройти через eth0 (мой vpn, по-видимому, tun0)?

еще раз спасибо

EDIT2: после перезагрузки я фактически потерял SSH доступ к пи :(

1 ответ1

1

На самом деле это очень просто, к счастью для всех нас: позвольте мне назвать IP2 IP-адрес локального хоста во второй таблице маршрутизации. Тогда все, что вам нужно сделать, это:

      ssh -b IP2 me@some_remote_machine 

Опция -b указывает ssh bind (то есть использовать в качестве адреса источника) IP-адрес IP2. Если вы уже настроили вторую таблицу маршрутизации, с правилом вроде

      ip rule from IP2 table2

где table2 - вторая таблица маршрутизации, вы можете пойти.

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