Как идет пакет внутри хоста (правила iptables для openvpn-клиента) [РЕШЕНО]

Автор mexx, 26 мая 2017, 21:22:42

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

mexx

Помогите с теорией.
Есть ноутбук. Выход в Интернет через USB-модем, который не только модем, но и сетевая карта - https://debianforum.ru/index.php?topic=12684.msg97534#msg97534 Соответственно при его подключении в системе появляется физический интерфейс usb0 (проводное соединение ethernet). Далее, в системе установлен openvpn, ему скормлен клиентский конфигурационный файл, при запуске в системе появляется виртуальный интерфейс tap0 Все работает как часы. Заморочился iptables, настроил, опять же все отлично работает.
Но есть вопрос - правильно ли я понимаю путь пакета от приложения?
А понимаю я так, что, в моем случае, приложение обращается к ядру, ядро его отправляет на интерфейс tap0 Затем, tap0 отправляет пакет на физический интерфейс usb0 и он улетает в Сеть.
Соответственно обратно пакет прилетает из Сети на интерфейс usb0, который отправляет его на tap0, который отправляет его ядру и оттуда получателю.
И каждый "переход" пакета фильтруется правилами iptables.
Меня интересует, правильно ли я принципиально понимаю эту схему? Или где-то принципиально ошибаюсь? 
Debian 10 KDE
Debian 11 Gnome

yoric

Чем могу помочь, если правильно понял. Если пригодится)) Сам не разбирался.

[вложение удалено администратором]

mexx

Цитата: yoric от 26 мая 2017, 21:34:29Чем могу помочь, если правильно понял
Спасибо за желание помочь.
Но нет, это схема движения пакета по таблицам iptables, здесь как раз все понятно.
Я про схему движения пакета в плане порядка прохождения им интерфейсов при наличии виртуального tap0
Пока с сетями сложно у меня :)


Debian 10 KDE
Debian 11 Gnome

mexx

Никто не знает или вопрос бестолковый?

OUTPUT:
Приложение -> Ядро -> tap0 -> usb0 -> LTE
INPUT:
LTE -> usb0 -> tap0 -> Ядро -> Приложение

Или как-то сложнее?
Debian 10 KDE
Debian 11 Gnome

symon2014

Цитата: mexx от 06 июня 2017, 17:41:33Никто не знает или вопрос бестолковый?
отчасти да. Ядро --> это директор магазина, приложения --> это зав отделами, iptables --> правила, кому по блату, кому в порядке общей очереди, а вот usb0 и tap0 --> это главный и чёрный выходы из магазина.

mexx

Цитата: symon2014 от 06 июня 2017, 22:30:45а вот usb0 и tap0 --> это главный и чёрный выходы из магазина
Про магазин оно конечно интересно.
Вот только пакет тогда --> посетитель. Да, он может выйти через главный вход. Или через чёрный. Но не через оба выхода одновременно.
Другое дело, если сначала выход в коридор --> tap0, где посетитель одевается. А потом уже выход на улицу --> usb0
Все посетители (и даже блатные) сначала идут в коридор, одеваются и выходят на улицу. И никак иначе. Ибо чёрного выхода в магазине нет.
Debian 10 KDE
Debian 11 Gnome

YVSIK

#6
подливая маслеца в огонь )
есть у меня роутер, в переводе(маршрутизатор), я знаю для чего он у меня есть,
между прочим, если обойтись и без него, то просто тыкаю сетевой провод в ПК и он подключается, правда каждый раз "нада" прописывать логины и пароли,
это я о чем, дык вот)) потребителей много, два ПК и ТВ и каждый получает свой поток, и это ещё не все, потоки разные,
и если их поменять ЛАН порты, ни тот, ни другой работать не будут.
тут пауза
почему они не работают? разные потоки передачи, ещё точнее один пропускает ТВ протокол,другому все разрешено, но есть но ,надо отстраивать ПК на этот поток,
проще, надо и передающей стороне прикреплять что-то, что не всем этот поток был виден, вообщем пассы
и у меня плеер этот поток разшифровал и показал

вот я о чем
зачем все эти вопросы, для чего тебе его настраивать, есть целая индустрия роутеров, и не все хорошие, есть  попадаются дермовые, и постоянно они обновляются и ТД-И-ТП
А если ради интереса попробовать))
а зачем, ноут будет постоянно работать жрать энергию

теперь по делу, есть в роутерах технология тунельная, провод один, а потоки разные эт на простом языке наз. разшарить потоки
ЗЫ. тема большая трудно без толкового понимания результат что-то добиться, даж если очень хоца, трудно




Cообщение объединено 07 Июня 2017, 22:25:46

Цитата: mexx от 07 июня 2017, 20:09:48Но не через оба выхода одновременно.
через оба и сразу одновременно, они идут подписаны по разному, и это дело принимающей стороне что принимать а что не принимать,
это называется НАТ сетевая стена.
а с магазинами))) я один могу выйти один с любого! а если я с женой её выпущу в главный, а сам черным умыкну что-нить, все-ж равно будет считаться одним целым с ней  8)

mexx

Цитата: YVSIK от 07 июня 2017, 22:18:13подливая маслеца в огонь )
Если честно - не особо понял мысль. Вернее, какое это имеет отношение к моему вопросу?
Цитата: YVSIK от 07 июня 2017, 22:18:13зачем все эти вопросы, для чего тебе его настраивать
Что настраивать? VPN? Или iptables? Риторические вопросы.
Цитата: YVSIK от 07 июня 2017, 22:18:13через оба и сразу одновременно
Так не бывает. Один выход внутри другого. То есть коридор --> выход. Логирование исходящих как бы об этом говорит.
И да, конечно дело принимающей стороны посмотреть кто там пришел и впустить в свой коридор. Или не пустить.
Цитата: YVSIK от 07 июня 2017, 22:18:13а если я с женой
Если с женой, то это 2 посетителя. То есть не 1.
Debian 10 KDE
Debian 11 Gnome

YVSIK

Цитата: mexx от 08 июня 2017, 13:42:50Так не бывает. Один выход внутри другого.
бывает ох как бывает!!
например как у тебя инет идет??? что по нескольким проводам  ;D
дык тогда тут как
Цитата: mexx от 08 июня 2017, 13:42:50Если с женой, то это 2 посетителя. То есть не 1.
это кто решил ты? я думаю по другому мы едины)) и баста


mexx

Цитата: YVSIK от 08 июня 2017, 18:56:55бывает ох как бывает!!
Так не бывает --> это про твое:
Цитата: YVSIK от 07 июня 2017, 22:18:13через оба и сразу одновременно

Думаю, именно "один выход внутри другого". Причем коридор бесполезен, если дверь выхода закрыта. Однако, если сломать стены коридора, то выход замечательно работает и без него. Но так аллегорично переписываться мы можем долго. Есть предметный ответ?

Цитата: YVSIK от 08 июня 2017, 18:56:55это кто решил ты? я думаю по другому мы едины))
Что? Что 2 человека это не 1 человек? Голосовалку сделай - да, нет, не знаю )))
Debian 10 KDE
Debian 11 Gnome

YVSIK

#10
если предметно, все данные идут вместе, но каждый имеет свой протокол, каждый протокол имеет подпись и формат.
например, ты выходишь в инет, вместе с запросом идет твой айпи адрес, сам вопрос(запрос), некоторые данные которые прикреплены по умолчанию,
какой браузер, версия, и ТД и ТП.
принимающая сторона принимает твой запрос, смотрит формат, и в том-же формате отдает.

Как в твоем случае: "черный вход" принимает и отдает тот формат на который настроен "проход" другой протокол и данные через него не пройдут, так у тебя настроено.
Все остальные данны идут мимо, даже если они пройдут, принимающая сторона их не поймет, ни формата, ни подписи.

Есть форматы передачи инфы по связи, это ftp или http, есть ещё форматы, но и этого мало, когда ты настроил проход иным образом, ты прикрепил некие данные, по которым определятся этот проход, например логин и пасс, все данные идущие с этими данными пройдут все остальные отсекаются при входе,
чего тут непонятного

Прочитай про туннельные настройки и про hat. есть ещё так называемые "порты", данные брузера идут по протоколу http,все остальные он не понимает.

Чтоб тебя увидеть в сети, надо  тебя не перепутать, вот как раз, по этим прикрепленным данным тебя и вычисляют.




mexx

Цитата: YVSIK от 10 июня 2017, 10:23:21если предметно, все данные идут вместе
Спасибо за желание помочь в понимании.
Мда, если запретить, например, исходящие 5222/tcp для tap0 - jabber не работает, а если разрешить этот порт для tap0, но запретить для usb0 - работает.
Ну да, для usb0 разрешен 443/tcp и что там "лежит внутри" - для netfilter не суть важно.
Но фильтрует он оба интерфейса! Если разрешить исходящие 443/tcp для tap0 и запретить 443/tcp для usb0 - работать не будет. Поэтому не уверен, что правильно говорить "идут вместе" про пакеты. Они то как раз идут последовательно. Наверное, правильнее сказать, что адаптеры "работают вместе", но это уже игра слов, конечно.
Про протоколы, заголовки пакетов и порты я в курсе.
Debian 10 KDE
Debian 11 Gnome

mexx

Цитата: YVSIK от 07 июня 2017, 22:18:13для чего тебе его настраивать
Помимо общего развития, можно, например, написав пару строк обезопасить себя от работы в Сети при внезапно отвалившемся vpn (разрешить исходящие для usb0 только на адрес моего сервера и только на 443/tcp). Просто как пример.
Debian 10 KDE
Debian 11 Gnome

endru

что мучиться то? открываем tcpdump и изучаем трафик!
если коротко:
tap0 - это виртуальный интерфейс, им управляет программа, которая общается с ядром.
если мы отправляем пакет по tap0, он передается программе, она шифрует весь пакет и передает запрос на отправку данных в usb0. на usb0 максимум что ты увидишь, это пакет летящий от твоего компа к vpn серверу, с шифрованными данными.
т.е. по факту, на usb0 нужны открытые порты необходимые для работы только канала VPN.
все что будет передаваться внутри канала нужно разрешать/блокировать на интерфейсах tap.

mexx

Цитата: endru от 15 июня 2017, 08:29:14что мучиться то?
Да я не то, чтобы мучался :) Интересовался.
Обычно в Сети либо слишком упрощенно пишут, либо глубоко в теорию уходят - непросто без подготовки осознать суть.

Цитата: endru от 15 июня 2017, 08:29:14если коротко:
Да, спасибо, всё ровно так, как я это и понимал по трафику: "коридор" --> "выход".
Иногда надо услышать от других, знающих людей о том, что ты прав :)
Debian 10 KDE
Debian 11 Gnome