Ограничение возможностей ssh туннеля при помощи iptables |
[исправить] |
Использование туннелей на основе ssh сейчас широко распространено. И многие используют его как
универсальное решение для организации туннелей внутрь локальной сети для
доступа к различным сервисам.
И в связи с этим очень часто возникает вопрос "А как ограничить возможности такого туннеля".
Например:
есть компания, которая обслуживает ваш web сервер. Для выполнения этой работы требуется доступ
к серверу web-server.dmz по портам 80 и 443.
Решение:
на сервере ssh, через который создаётся туннель, выполняем:
1) добавляем пользователя aaa
2) устанавливаем ему шелл /bin/false (или другой, только так чтобы он не мог залогиниться)
3) Добавляем правила iptables:
iptables -A OUTPUT -d web-server.dmz -p tcp -m tcp --dport 80 -m owner --uid-owner aaa -j ACCEPT
iptables -A OUTPUT -d web-server.dmz -p tcp -m tcp --dport 443 -m owner --uid-owner aaa -j ACCEPT
iptables -A OUTPUT -m owner --uid-owner aaa -j REJECT
|
|
|
|
Раздел: Корень / Администратору / Сетевая подсистема, маршрутизация / Туннелинг, VPN, VLAN |
1.1, pavlinux (ok), 04:00, 23/04/2009 [ответить]
| +/– |
Bad value for "--uid-owner" option: "aaa"
Числовое надо :)
# export AAA=$(id -u aaa);
# iptables -A OUTPUT -d web-server.dmz -p tcp -m tcp --dport 80 -m owner --uid-owner $AAA -j ACCEPT
# iptables -A OUTPUT -d web-server.dmz -p tcp -m tcp --dport 443 -m owner --uid-owner $AAA -j ACCEPT
# iptables -A OUTPUT -m owner --uid-owner $AAA -j REJECT
| |
|
|
3.4, pavlinux (ok), 15:58, 23/04/2009 [^] [^^] [^^^] [ответить]
| +/– |
>У меня имя нормально работает.
Наверно айпистолы старый
iptables v1.4.2-rc1
| |
|
|
1.2, daevy (?), 06:17, 23/04/2009 [ответить]
| +/– |
и не забыть проверить чтоб
CONFIG_NETFILTER_XT_MATCH_OWNER=y
| |
1.5, pavlinux (ok), 23:04, 23/04/2009 [ответить]
| +/– |
Я наконец придумал какой от этого вред :)
Можно узнать каким юзерам разрешено ходить в тунель.
Вот тут, как раз фишка --uid-owner которая работает с именами вместо UID
и сыграет свою злую роль. 8-)
| |
|
2.6, User294 (??), 23:13, 23/04/2009 [^] [^^] [^^^] [ответить]
| +/– |
>и сыграет свою злую роль. 8-)
Ужасно злую.А что это знание даст?
| |
|
1.7, Backspace (?), 09:58, 24/04/2009 [ответить]
| +/– |
Вариант для ipfw :
ipfw add allow tcp from me to web-server.dmz 80,443 uid aaa
ipfw add deny tcp from me to any uid aaa
| |
|