Jump to content

IMSLU- “Система за управление на интернета за потребители в локална мрежа”


mysticall

Recommended Posts

 IMSLU (Internet Management System for LAN Users) - “Система за управление на интернета за потребители в локална мрежа” е съвкупност от PHP базиран уеб интерфейс, който записва информация в база данни и стартира скриптове, програми и скриптове, които работят директно с база данни. IMSLU синхронизира тази сложна дейност и предоставя улеснено администриране на интернет потребителите.

С тази ситема могат да се администрират потребители, които имат достъп до интернет чрез въведени статични IP адреси или PPPoE сесии, да се ограничава скоростта им и автоматично да се спира предоставената услуга след изтичане на определена дата.

Целта на тази ситема е да подготви солидна основа, която да се променя лесно в зависимост от конкретните нужди. От тази гледна точка е грешно да се приеме, че IMSLU е универсална и завършена система. Важно е да разберете, че дори и най-авоматизираната система не може да замени опитен администратор. В нея са разгледани само минимални ценарии, необходими, за да функционира и е оставена доста работа за администраторите, които трябва да оформят системата според нуждите си.

 

Линк към демо, което не винаги ще е активно.

http://212.5.150.12/imslu/

 

Има четири вида оператори и всеки има достъп до определени неща:

- Системен администратор
потребител: sadmin
парола: sadmin

- Администратор
потребител: admin
парола: admin

-Касиер
потребител: cashier
парола: cashier

- Техник

 

Системата се разпространява под "GNU General Public License" версия 2 или по-нова, поваш избор.
Документацията, ще е под "GNU Free Documentation License - GFDL" версия 1.3. 

 

Тук може да намерите периодичните версии.
https://sourceforge.net/projects/imslu/

Последна версия.
git clone https://github.com/mysticall/imslu.git

 

Малко за проекта. Идеята започна като хоби през свободното време, но в последствие се оказа доста амбициозен проект. В момента системата има основна фукционалност и не е тествана в реална среда. Има още много работа по нея, всяка помощ и идея е добре дошла.

 

Ако съм объркал раздела, моля администраторите да преместят темата на правилното място.

Адрес на коментара
Сподели в други сайтове

  • Администратор

Напиши изисквания хардуерни/софтуерни

Харесай поста ^^^
acer.gif htc.gifsigpic4024_2.gif

Форумът е за взаимопомощ а не за свършване на чужда работа


ɹɐǝɥ uɐɔ noʎ ǝɹoɯ ǝɥʇ 'ǝɯoɔǝq noʎ ɹǝʇǝınb ǝɥʇ

Адрес на коментара
Сподели в други сайтове

Системата се разработва под Debian Wheezy, но всичко необходимо за да работи и под други дистрибуции е изнесено в конфигурационни файлове, което се състои в добавяне на правилни пътища до нужните програми. Има ръководство на български език "doc/Advanced Howto MSIUL on Debian - bulgarian.odt", където е описано как да се инсталира системата (бел. все още не е довършено). По специфичните изисквания са към PHP >= 5.4 и че по време на разрабодването използвах MariaDB.

Както споменах не е тествана в реална среда, незнам как ще се държи и колко ресурси ще яде.

Адрес на коментара
Сподели в други сайтове

  • Администратор

един жокер за горното питане 
base инсталация (само openssh)
дръпвам с wget тарчето .... почват поздрави (няма инсталационен скрипт +- зависимости)

то това е което всички искат бърза имплементация 

то това е и кусур, GCLI инстал вече си е минимум на качествения инсталер

Харесай поста ^^^
acer.gif htc.gifsigpic4024_2.gif

Форумът е за взаимопомощ а не за свършване на чужда работа


ɹɐǝɥ uɐɔ noʎ ǝɹoɯ ǝɥʇ 'ǝɯoɔǝq noʎ ɹǝʇǝınb ǝɥʇ

Адрес на коментара
Сподели в други сайтове

Не исках да пиша нов отговор, а да добавя към предишен, но нямам права за това.

Не е проблем да се напиши bash скрип, но аз лично не бих използвал подобен скрипт, понеже трябва да се направят доста специфични неща.

 

- Инсталация на Freeradius и много промени в конфиг. файловете. Ако има инсталиран и настроен Freeradius скрипта ще забърше всичко.

- Инсталация на PPP и PPPoE сървър и прекомпилиране на PPPoE сървъра.

- Инсталация на bind9

- Ако ще се използва NAT или MASQUERADE, линукса ще иска минимални оптимизации.

- Трябва да се прегледад конфиг. файловете и да се реши дали ще се използват PPPoE сесии; VLAN-ни; от къде предпочитате да получавате информация за активните клиенти (бел. "/etc/cron.d/imslu" има коментирани редове с различните начини); в "/etc/sudoers" трябва да се дадат root права на PHP за да изпълнява python,ip,kill,arping. Не мисля, че който и да е администратор би се доверил на скрипт, който може да омаже сървъра за отрицателно време или да направи горе посочените неща.

 

IMSLU е само кожух, който пише в БД и в определени случаи изпълнява python скриптове. 

 

Тези, които искат да инсталират IMSLU отдалечено (Debian):

apt-get install git

git clone https://github.com/mysticall/imslu.git

cd imslu

nano doc/HOWTO

 

и само copy - paste

Адрес на коментара
Сподели в други сайтове

  • Администратор

жокерче 
GCLI подобно на make menuconfig може да прави предложения за горепосочените

Харесай поста ^^^
acer.gif htc.gifsigpic4024_2.gif

Форумът е за взаимопомощ а не за свършване на чужда работа


ɹɐǝɥ uɐɔ noʎ ǝɹoɯ ǝɥʇ 'ǝɯoɔǝq noʎ ɹǝʇǝınb ǝɥʇ

Адрес на коментара
Сподели в други сайтове

  • 4 месеца по-късно ...

Ръководството все още не е довършено, липсва частта свързана с използването на системата. Ако имате въпроси може да питате, да ми пишете лични съобщения или да изпратите мейл. И в последствие тези неща да се добавят в ръковдството.

Демо версията, която разглеждате не е инсталирана напълно и в някои случаи е нормално да дава грешки. Ако разгледате логовете в "Администриране", ще видите че са пълни с грешки, няма нищо за притеснение. При мен системата е конфигурирана да използва "Виртуални локални мрежи", но не стартирах скрипта "global_rules_vlans.py", който създава vlan-ни, добавя IP адрес/и за използаване като шлюз по подразбиране, добавя маркиращите правила на пакетите за прихващане от шейпър и създава глобални правила за шейпъра, за по нататъшно използване:

tc qdisc add dev vlan_id root handle 1: htb

tc filter add dev vlan_id parent 1:0 protocol ip prio 1 fw

За всеки vlan е достатъчен само един празен "tc filter", пакетите маркирани с IPMARK автоматично се насочват към тяхната верига (за повече информация има линкове в ръководството).

 

Може да добавяте, триете, каквото се сетите в демо версията, няма проблеми.

 

Видях, че са добавени IP адреси в "Статични IP адреси", за да са активни първо мрежите трябва да бъдат добавени в "config.py->ST_NETWORKS". Ако не, пак ще се вижтат при създаване на клиентски акаунт или добавяне на IP адрес, но на съответния интерфейс няма да е вдигнат шлюз, който да се използва от клиентите и няма да има интернет. Другото по специфично е, че мрежите трябва да започват от прим. 192.168.33.2. Понеже системата автоматично ще добави 192.168.33.1 като шлюз по подразбиране и ще има IP конфликти. Използвайте коректни диапазони, при валидни IP адреси php ще добави последователно всичко.

 

Секция "Потребители" не е завършена, в бъдеще най-вероятно ще има повече информация за потребителите и възможност за по-конкретно сортиране.

 

Ако искате ръчно да добавите vlan за конкретен потребител използвайте vlan+ИД, прим. "vlan19", ако незнаете къде се намира "Администриране->Проверка за VLAN, MAC". В зависимост как сте настроли системата, ще провери и ако хостовете са активни, ще добави всичко необходимо, за да тръгне интернета и ще запише информацията в БД за по нататъшно използване. За съжаление не мога да го демонстрирам (за тестове имам Cisco 2950, но вдига много шум и го изключвам).

 

Има още много неща за обесняване и писане в ръководството. Ако има нещо което не ви е яспо, питайте.


Какъв метод предпочитате за съхранение на трафични данни, въз основа на "Задължителни указания по чл.261а, ал.3, т.2 от Закона за електронните съобщения" - https://www.cpdp.bg/?p=element&aid=573 ?

Каква информация трябва да се запазва и за какъв вид трафик трябва да се следи?

Какво използвате за тази цел - iptables, bind9 logs ...?

 

Като алтернатива за рутери, които нямат включен NAT, в ръководството има метод базиран на iptables и rsyslog за запис на активните IP адреси в отделен файл и използването на тази информация от PHP, при определяне на активните  IP адреси:

 

iptables -A FORWARD -s 10.111.1.0/24 -m limit --limit 1/s --limit-burst 1 -j LOG --log-level info --log-prefix "IP_STATUS: "

 

nano /etc/rsyslog.d/ip_status.conf
--------------------------------------------------------------------------------
:msg, regex, "^[ *[0-9]*.[0-9]*] IP_STATUS: " -/var/log/ip_status.log
& ~
--------------------------------------------------------------------------------
/etc/init.d/rsyslog restart
 
Не съм сигурен дали този метод, ще свърше работа и за съхранение на  трафични данни.
Редактирано от mysticall
Адрес на коментара
Сподели в други сайтове

Поздравления за колегата положил толкова много труд и описал повечето неща, било и то с правописни грешки.

Но това се преглъща - и пак да спомена - адмирации, ще се радвам на колегите които са на "ти" с провайдърственето" и искат да внедрят подобна система, да помогнат с практически съвети "защото писането на софтуер трябва да става освен от програмисти но и от разработчици, и спецове в реална среда".

Ще се радвам след време това начинание, във времето да се развие, да добие един добър изглед, функционалност, лесна инсталация и да е в помощ на всички занимаващи се с мениджмънд на клиенти в мрежа. :)

Адрес на коментара
Сподели в други сайтове

Не работи нещо демото 

 

Линк към демо, което не винаги ще е активно.

http://212.5.150.12/imslu/

 
Pinging 212.5.150.12 with 32 bytes of data:
 
Reply from 212.5.150.250: Destination host unreachable.
Редактирано от AveNew
Адрес на коментара
Сподели в други сайтове

 

Какъв метод предпочитате за съхранение на трафични данни, въз основа на "Задължителни указания по чл.261а, ал.3, т.2 от Закона за електронните съобщения"

 

Отменено от Европейския съд преди две седмици. Решението важи за всички в ЕС!

... и яз можем, и тате може, ма козата си сака пръч!

Адрес на коментара
Сподели в други сайтове

  • 5 месеца по-късно ...
  • Администратор
Харесай поста ^^^
acer.gif htc.gifsigpic4024_2.gif

Форумът е за взаимопомощ а не за свършване на чужда работа


ɹɐǝɥ uɐɔ noʎ ǝɹoɯ ǝɥʇ 'ǝɯoɔǝq noʎ ɹǝʇǝınb ǝɥʇ

Адрес на коментара
Сподели в други сайтове

Създайте нов акаунт или се впишете, за да коментирате

За да коментирате, трябва да имате регистрация

Създайте акаунт

Присъединете се към нашата общност. Регистрацията става бързо!

Регистрация на нов акаунт

Вход

Имате акаунт? Впишете се оттук.

Вписване
  • Потребители разглеждащи страницата   0 потребители

    • No registered users viewing this page.
×
×
  • Създай нов...

Important Information

By using this site, you agree to our Terms of Use.