Перейти до

Разделение правил для юзерей


Рекомендованные сообщения

Вот, никак не поборю...

 

Чё имеем: UA-IX халява... забугор стоит денег.

Юзера: есть те кто юзает инет по полной (и УА и забугор), а есть те, кто юзает тока УА

 

Надо: давать полный форвард юзерам кто юзает по полной инет и давать тока украину тем, кто на пакете UA-IX и не пускать их далее сегмента UA-IX

 

 

Идея: например eth1=intet | eth0=local | eth1:1=ua-ix

 

Идея 1.1: stargazer передаёт параметр tariff в OnConnect и OnDisconnect. И тогда в скриптах я могу варировать какие мне правила запускать для конкретного тарифного плана. Например переправка юзера на другой интерфейс... Или раздача доступа только к проксе UA-IX

 

Идея 1.2: делаем алиас интерфейса, для него прописываем UA-IX правила, а юзерей с тарифным планом UA-IX роутим через этот интерфейс.

 

...думаю это более чем экономно и должно работать правильно

stg пофику через чё оно уйдёт, главное куда попёр запрос с eth0.

я думаю так... хотя, могу ошибаться

 

подскажите мне как реализовать 2 тарифных плана по типу "всё" и "только УА"

 

 

ЗЫ... пока я вижу только один реальный выход: ставить 2 Stargazer'a для разных юзерей.

Ссылка на сообщение
Поделиться на других сайтах

я думаю стоит попробовать через передаваемые параметры UserData

передавать к примеру all и ua-ix

 

в онКоннект проверять что в UserData и в зависимости от этого выполнять правила для файрвола.

Ссылка на сообщение
Поделиться на других сайтах

Max?

 

Что там у тебя под БЗДЁЙ разруливается?

 

Ненадо делать вид что БЗДЯ интелектуально умная и сама знает какого юзера куда пускать.

 

Та не вник в суть вопроса.

 

...так вот дело в том, что никакий юзер даты не передаётся...

 

и оперировать переменными невозможно (кроме как ID, IP, Cach)

Ссылка на сообщение
Поделиться на других сайтах

Я имелл ввиду что можно прописать правила в фаер которые и будут управлять трафиком при подключении определённого пользователя.. То есть для одного пользователя одни правила в фаер, а для другого другие правила..

Ссылка на сообщение
Поделиться на других сайтах

Значит так, исходные данные:

 

Есть 100 юзерей.

1 группа: 30 юзают инет полноценный.

2 группа: 70 юзают только UA-IX

 

Переодически люди из 2 группы хотят юзать полностью инет.

Переодически люди из 1 группы хотят юзать только UA-IX.

 

Переодически люди в группах меняются...

Некоторые приходят, некоторые уходят.

 

Переодически людям нечем платить за забугор, и они из группы 1, переходят в группу 2.

 

Переодически люди шатаются каждый месяц из группы в группу.

 

 

Что необходимо:

 

В зависимости от тарифного плана давать пользователям разный доступ.

 

Например:

 

Группа 1 - полный форвардинг.

Группа 2 - форвард с учётом записи UA-IX списка.

 

 

...прошу ответить знающих людей

умников типа "это можно зделать фаерволом прошу не беспокоить"

 

Если бы я хотел зделать всё так, как Вы мне тут советуете, то мне Старгейзер ненужен, я прекрасно могу сидеть и сутками добовлять удалять правила в цепочках фаера. (при этом крутя пидали динамо-машины для обеспечения сервера эллектричеством)

Ссылка на сообщение
Поделиться на других сайтах
Поддерживаю Макса!
Ну вот нашёл единомышленника! :) Спасибо за поддержку...
Причем файрволом можно задать для каждого юзверя какие сети ua-ix он может юзать а какие нет! =))

Именно это я и имел ввиду, просты выразился коряво...

Вот как у меня заведено:

на каждого пользователя создан скрипт allow_10.203.0.x.sh и deny_10.203.0.x.sh

В самих скриптах прописаны правила для фаера, роутинга, и форвардинга на squid.

ipfw add xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

 

В Onconnect:

LOGIN=$1

IP=$2

usreip=`echo $2`

sh /..../allow_${userip}.sh

 

В Ondisconnect соответственно удаление этих правил:

ipfw d xxxxxxxx

 

За эту модель огромное спасибо PowerLan.

 

 

Некоторые могут сказать что система громоздка и неповоротлива, но как раз в её громоздкости и есть её гибкость: можно задавать индивидуальные правила для user'ов.

А насчёт создания огромного количества скриптов allow_xxxx и deny_xxxx так я скрипт на перле написал который в режиме диалога нового пользователя создаёт, вот счас работаю над тем чтобы параметры от СТГ2 предовались скрипту, тоесть всё совсем автоматизировать.

Ссылка на сообщение
Поделиться на других сайтах
Если бы я хотел зделать всё так, как Вы мне тут советуете, то мне Старгейзер ненужен, я прекрасно могу сидеть и сутками добовлять удалять правила в цепочках фаера. (при этом крутя пидали динамо-машины для обеспечения сервера эллектричеством)

Ты хочешь получить от быка молоко...

 

Если тебе не нравится предложенный вариант, то необходимо убедить автора (либо самому) добавить в переменные передоваемые скриптам переменную TARIF. И будет тебе счастье...

Ссылка на сообщение
Поделиться на других сайтах

да вы что?

cat /etc/stargazer/onconnect

 

LOGIN=$1

tariff=`grep Tariff= /var/stargazer/users/$LOGIN/conf`

....

 

 

Вот вам и тариф в скрипте. Теперь в зависимости от тарифа, через "if" открываем в фаерволе два разных направления, для двух групп

Ссылка на сообщение
Поделиться на других сайтах

Да, оно то будет работать... только корявенько.

С таким успехом можно и IP юзерей брать... зачем его передавать в параметрах.

 

Кстати, если можно - попробуй накинуть пару строк, как ты думаешь это будет работать?

Ссылка на сообщение
Поделиться на других сайтах

это почему же корявенько?

Куда проще сделать 2 тарифа и в зависимости от его названия выполнять те или иные правила.

 

ИМХО самое лучшее решение.

Ссылка на сообщение
Поделиться на других сайтах

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

Заносишь в ipfw кучу правил типа

allow ip from внут. сетка to тыдынь recv внут. интерфейс

Где, тыдынь - это сетки украины.

И так по одному правилу на каждую сеть.

А в конце правило

deny ip from внут. сетка to any recv внут. интерфейс

Потом, в старгейзере разделяешь юзеров на 2 группы.

 

Потом в OnConnect добавляешь конструкцию типа

group=`grep Group= /var/stargazer/users/$LOGIN/conf`

 

И если юзер принадлежит группу глобалистов, то скрипт перед deny пусть добавляет правило

skipto № ip from any to any

Где, № ставишь больше того, котрый у правила

deny ip from внут. сетка to any recv внут. интерфейс

 

Получается так: если пользователь чисто на украине, то ему доступны только украинские сети. А все остальное рубится правилом

deny ip from внут. сетка to any recv внут. интерфейс

 

Если пользователь имеет глобал, то за счет skipto, он перепрыгивает deny и имеет глобал.

Ссылка на сообщение
Поделиться на других сайтах

Уху, пасиб народ... про grep я както подзабыл... сорри, затуркало.

 

В принцыпе я так и думаю решить всё это.

 

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

 

Привожу пример:

 

Есть куча полей, IP, Group, Userdata0, Userdata1, Comments, Tariff и так далее.

Напротив каждой строки есть check box, с функцыей например "use"

 

и далее, при если этот чек стоит - данные этой строки передаются в исполняемые скрипты.

 

Для чего это полезно:

 

1. для решения таких задач как у меня.

2. для построения правил или действий любой сложности

3. для (например) когда положили в Userdata0 - MAC адрес юзера и мозно скриптами разграничит доступ...

4. для постоения вообзе - пользоательских скриптов отдельно и без геммора.

 

вообще, как по мне - было бы, весьма полезно и удобно.

Ссылка на сообщение
Поделиться на других сайтах

Если каждому пользоателю вдюндить в инфу эти галочки, то получится больше конфигов/жрания оперативки/жратия процессора.

Grep решает проблему в полном соотетствии философии unix.

Незачем изобретать уже изобретенный велосипед.

За счет скриптов UserAdd я могу добавить пользователя в старгейзере, в самой *nix, прописать его в DHCP, DNS и ещё бог знает где ещё.

Скрипты для этого и существуют.

Если кто-то считает писать их геммороем - то это уже другой вопрос.

Ссылка на сообщение
Поделиться на других сайтах
Вот, никак не поборю...

 

Чё имеем: UA-IX халява... забугор стоит денег.

Юзера: есть те кто юзает инет по полной (и УА и забугор), а есть те, кто юзает тока УА

 

Надо:

Слушай а как ты делил трафик на забугор и нет и при этом сатргазер прикрутил?? можешь научить дурачка мудрости... плз.......

Ссылка на сообщение
Поделиться на других сайтах

rules:

# Rules Generated on: 2005.02.08-21.20.09

# DIR0 = Local
# DIR1 = Proxy
# DIR2 = UA-IX
# DIR3 = Internet

# Proxy
TCP_UDP 192.168.17.5:3128 DIR1

# Local
ALL 192.168.0.0/16 DIR0

# UA-IX
ALL 62.16.16.128/26 DIR2
ALL 62.64.64.0/18 DIR2
ALL 62.64.80.0/21 DIR2
ALL 62.64.87.0/24 DIR2
ALL 62.64.88.0/21 DIR2
ALL 62.64.96.0/21 DIR2
...
ALL 217.198.132.0/22 DIR2
ALL 217.198.140.0/22 DIR2
ALL 217.199.224.0/20 DIR2

# Internet
ALL 0.0.0.0/0 DIR3
ICMP 0.0.0.0/0 DIR3

 

для всех - полный инпут и ыорвард, для UA-IX только по таблице UA-IX

 

всё просто, но через ЖЖЖ.

Ссылка на сообщение
Поделиться на других сайтах

Я всё же не пойму..... судя вашим коментариям

 

"всё просто, но через ЖЖЖ"

 

складывается впечатление что вам нужен дистрибутив ОС который бы отвечал таким требованиям:

1. установка:

а. вставить диск

б. нажать "Установить"

2. Настройка:

а. После установки на экране должна быть одна большая кнопка "НАСТРОИТЬ СЕРВЕР"

б. при нажатии кнопки происходит настройка интуитивно по принципу "не через ЖЖЖ"

3. Дополнительные требования:

а. Биллинг который может всё и что бы не приходилось grep'ать тариф.

б. что бы ничего не надо было делать дополнительно (опять же потому что это будет "через ЖЖЖ")

 

 

Объясните мне плиз почему почти всё что вам предлагают вы говорите что это через ЖЖЖ ?

Ссылка на сообщение
Поделиться на других сайтах

Имхо, когда человек ленится что-то сделать, то пытается представить это себе и окружающим, что это "через ЖЖЖ", есть пути полегче и вообще, пускай это делают другие, а не он =))

Ссылка на сообщение
Поделиться на других сайтах

Den_LocalNet Предлагает просто рациональный путь, потому что мыслит рационально и тут я его полностью поддерживаю.

А именно минимальными усилиями решить задачу быстро и без порождения проблем и забот.

Я бы тоже ввел просто новый тариф, пусть даже с такими же цифрами, но с другим названием. И по этому приципу разруливал.

Можно вообще поставить тариф напрвления УА в СТГ - 0 и нет денег - не лезь забугор, Украина есть.

Правда при 0 денег не пройдет и Украина, пусть юзер следит, чтобы не 0 был.

Удобство переключения гарантированно - конфигуратором за пару секуднд. Если ставить где-то каке-то доп. поля, то их надо будет править вручную.

Ссылка на сообщение
Поделиться на других сайтах

Уффф... ладно. забили на тему.

 

Т.к. тут уже не решение проблеммы пошло, а попытки мерятся что круче и ольше руками накатает сриптов, сырцов и т.д. (чёжж вы, ув. Den_LocalNet не катаете сырцы линуха/юниха...)

 

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

 

...тем более что это надо не мне, а посторонним людям.

благо я давно перевёл свою сетку в автопилот. и стг пашет как часики.

Ссылка на сообщение
Поделиться на других сайтах

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

Вот как идея?

Ссылка на сообщение
Поделиться на других сайтах

2Doozer: Я думаю вы мыслите немного в духе "Виндовс". Т.е. вам нужны галочки и т.п. прелести gui. Чем привлекателен (хотя бы лично мне) мир юникс систем - это гибкость... А эта гибкость и заключается в использвании как минимум джентельменского набора grep, awk, sed и т.п.

 

ИМХО если под виндаме в софт не вложили галочку - то зачастую вы попадаете в ситуацию с которой можно лишь смерится......

Ссылка на сообщение
Поделиться на других сайтах

2Doozer

Вот если внимательно вчитаться в преддожение сделать тариф с ценой 0 такого-то направления, то как раз юзер-счетовод конфигуратором СТГ-шным из-под мастдайки мог бы хоть 10 раз на день менять политику партии.

Но разок все-таки настроить придется админу, без этого никак.

А банальный спор что лучше Уних или мастдайка предлагаю прекратить.

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...