Действительно ли возможно направить сетевой трафик согласно идентификатору пользователя?

Короткий ответ: Нет.

Длинный ответ: IPsec рассмотрели при разработке IPv6, в том смысле, что, в отличие от этого, в IPv4, IPsec (при использовании) является частью заголовка IPv6.

Больше объяснения: в IPv4 IPsec работает сверху самого IP. Это - на самом деле протокол Уровня 4, который 'подменяет' протоколом Уровня 3 (так, чтобы обычные протоколы L4 TCP и UDP все еще смогли работать). ESP (Инкапсулирующий Полезную нагрузку безопасности) не может охватить между пакетами IP. В результате пакеты IPsec обычно будут сильно уменьшать полезную нагрузку, если фрагментация предотвращена. Плюс, потому что это сверху IP, не защищен заголовок IP.

В IPv6 IPsec является частью самого IP. Это может охватить пакеты, так как заголовок ESP является теперь частью заголовка IP. И потому что это интегрируется с IP, больше частей заголовка IP может быть защищено.

Я надеюсь мой 'вкратце', объяснение является достаточно четким.

0
задан 2 April 2014 в 14:30
3 ответа

Судя по идентификатору пользователя, это немного сложно (подключаются ли они к вашему серверу через SSH или просто используют его как маршрутизатор?), Вы можете легко сделать это по IP или MAC-адресу, если у вас есть контроль над своей сетью.

1
ответ дан 4 December 2019 в 14:01

Быстрый взгляд на страницу руководства iptables показывает поддержку для владельца модуль для настройки правил на основе идентификаторов пользователей и / или групп. Он работает только для пакетов, сгенерированных локально (т.е. не на маршрутизаторе, управляющем трафиком с разных рабочих станций).

Затем приходит на ум настройка маршрутизации на основе политик, объединяющая что-то вроде:

iptables -A OUTPUT -o owner --uid-owner <uid> -j MARK --set-mark 21

ip rule add fwmark 21 table 22
ip route add default via <alternate_gateway> table 22

НЕПРОВЕРЕНО!

Номера метки межсетевого экрана (21) и идентификатора таблицы маршрутизации (22) произвольны.

не на маршрутизаторе, управляющем трафиком с разных рабочих станций).

Затем приходит на ум настройка маршрутизации на основе политик, объединяющая что-то вроде:

iptables -A OUTPUT -o owner --uid-owner <uid> -j MARK --set-mark 21

ip rule add fwmark 21 table 22
ip route add default via <alternate_gateway> table 22

НЕПРОВЕРЕНО!

Номера метки межсетевого экрана (21) и идентификатора таблицы маршрутизации (22) произвольны.

не на маршрутизаторе, управляющем трафиком с разных рабочих станций).

Затем приходит на ум настройка маршрутизации на основе политик, объединяющая что-то вроде:

iptables -A OUTPUT -o owner --uid-owner <uid> -j MARK --set-mark 21

ip rule add fwmark 21 table 22
ip route add default via <alternate_gateway> table 22

НЕПРОВЕРЕНО!

Номера метки межсетевого экрана (21) и идентификатора таблицы маршрутизации (22) произвольны.

1
ответ дан 4 December 2019 в 14:01

It is possible to place part of the process tree in a separate network namespace through the use of CLONE_NEWNET. Each namespace work as an independent network stack. Each network interface can be used in just one namespace at a time. Packets between the network namespaces can be send using virtual network interfaces.

I can't tell from your question, if this is a suitable solution for you.

0
ответ дан 4 December 2019 в 14:01

Теги

Похожие вопросы