Документация

Административен интерфейс

Административния интерфейс има две основни секции - ежедневни функции и настройки. Връзките в основната навигация са подредени по функционални групи - наблюдение на сървъра, мрежови тестове, статистика и графики, управление на клиенти, управление на скорости и настройки. След избор на настройки или връзка от тази секция става видима допълнителна навигация, в която са включени функции, които или се използват рядко или изискват специални познания.


В основната навигация има поле, което отразява предстоящите промени и дали въведените адреси отговарят на лиценза. При липса на предстоящи промени текста е <__>. Ако престои презареждане на филтрите - <f_>, ако ще се презареди само управлението на скоростта - <_s>. Ако ще се презаредят и двете - <fs>. Когато лиценза не достига, фона на индикатора става червен - <__>.


Начална страница (^)

На началната страница се извеждат няколко графики:


● Комбинирана графика на сумата от отчетения трафик

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


● Работещи процеси

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


Тази, както и всички следващи графики са връзки към страница със съответните дневни, седмични, месечни и годишни графики.


● Разпределение на натоварването на CPU

Графиката винаги общо е 100%, защото изразява всички процесори на сървъра. Визуализират се различните видове дейности, извършвани от процесора(ите) в проценти.


User load е време прекарано в изпълнение на потребителски програми.


Nice е време прекарано в изпълнение на потребителски програми с нисък приоритет.


Idle е време през което процесора е бил свободен.


IOWait е време на изчакване на входно/изходни операции.


IRQ е време за обработка на прекъсвания.


SoftIRQ е време за обработка на софтуерни прекъсвания.


System е времето прекарано в изпълнение на системни операции.


● Среден размер на пакета

Изобразява се средния размер на ip пакетите минаващи през сървъра. Видимо се наблюдава рязко понижаване на стойността при вируси или атаки.


● Пакети в секунда

Изобразява се броя на ip пакетите минаващи през сървъра. Видимо се наблюдава рязко повишаване на стойността при вируси или атаки.


● Байтове в секунда

Изобразява се колко трафик минава през сървъра. Тук се сумират както входящ и изходящ, така отчетен и неотчетен трафик.


Диагностика на мрежата (пинг)


Фиг. 4 - Ping/Arping/Trace


От страницата може да се пусне ping или traceroute с диагностична цел. За ip адреси, които са директно свързани към АйПиАкт сървъра, може да се прави и arping тест, който показва и mac адреса. Трябва да се има предвид, че при arping времената за отговор обикновено са по-големи. С arping може да се установи, дали даден ip адрес е конфигуриран на повече от един компютър и да се видят всички mac адреси, които го използват.


За разлика от ping и traceroute, arping се използва на определен интерфейс - това се конфигурира от страница настройки.


Броя на ping или arping тестовете се задава в отделно поле. Максималната стойност е 30, а стойността по подразбиране се задава от страница настройки.


Статистика (стат)

Статистиката се подрежда по дата в намаляващ ред. За всеки период на отчитане се извежда разбивка и сума на отчетения трафик. В отделна колона се извежда обща информация. Датата на периода на отчитане е връзка към страница с подробности за този период.


На страницата с подробностите за даден период информацията се подрежда по същия начин, но има по един ред за всеки отделен ip адрес. Има връзки към графиката на този ip адрес и към страницата на съответния клиент. Извежда се и връзка за редактиране на клиента. Данните могат да се сортират по различните видове трафик, както и по ip адрес - това става, като се използват връзките от заглавията на колонките. При повторно избиране на връзката се променя реда на сортиране. По подразбиране реда е низходящ.


Най-активни потребители (топ)

Тази страница има същата функционалност като страницата с подробности за отчетения трафик. Разликата е, че тук се визуализират данни за последните 5 минути, 1 час и 1 ден. Както и в статистиката не се показват клиенти/ip адреси, които нямат трафик.


Графики (граф)

Извеждат се списъци от графики:


● по клиенти

● по ip адрес на клиент

● по мрежи

● всички ip адреси от мрежите

Графиките се извеждат по 20 на страница. Допълнителна навигация дава възможност за смяна на типа на показваните графики, както за период, така и за тип трафик.


Всяка графика е връзка към страница с подробности за съответния ip адрес/клиент/мрежа.


Клиенти

предстои публикуване


MAC адреси (mac)

По подразбиране се извежда списък с ip адресите, за които има разлика между записания mac адрес и mac адреса, който се вижда в момента. Има допълнителна връзка, която показва всички клиенти.


От тук бързо може да се запише видимия mac адрес и да се промени защитата по mac адрес. Вида защита може да бъде 'няма' - записания mac адрес се пази с цел справки и не се прави проверка; 'локална' - ip адреса е свързан директно на интерфейс на АйПиАкт сървъра и не се допуска използване на интернет от друг mac адрес; 'зад рутер' - ip адреса е свъзан зад рутер навътре в мрежата, рутера поддържа опресняване на връзката между ip и mac адреси от АйПиАкт сървъра.


В третия случай в последното поле се указва кой точно е рутера, който ще получи тази информация. Ако ip адреса е свързан локално или зад друг рутер, тази опция оначава, че реално няма да се прави защита. Обратно при поставяне на 'локална' защита на ip адрес, който е зад рутер се получава спиране на неговия интернет.


Важно е да се има предвид, че не всеки рутер поддържа тази връзка. Необходимо е специално конфигуриране. Предоставят се примерни скриптове за Linux и *BSD, както и начин информацията да се получава в CSV формат.


Името на всеки клиент е връзка към страница за редактирането му. Както и при страниците за клиенти, ако поредния номер е оцветен в зелено, това означава, че съответния ip адрес генерира трафик.


Неописани ip/mac (неописани)

С информативна цел се извеждат всички двойки ip/mac адреси виждани в момента от конфигурираните рутери и основния АйПиАкт сървър, които не са дадени на клиенти. Нормално е тук да се виждат gateway ip адреса на доставчика, както и вътрешни gateway адреси, при използване на рутери. Всички други адреси са сигнал за опит за кражба на интернет.


Предефинирани услуги (услуги)

Визуализират се въведените до момента предефинираин услуги. Името е връзка към страница за редакция, в навигацията в дясно има връзки за редакция, изтриване и показване на списък от клиенти, които използват услугата. Както и при страниците за клиенти и mac адреси, ако поредния номер е оцветен в зелено, това означава, че някой ip адрес от съответния клиент генерира трафик.


Изтриването не се позволява, ако има клиенти, които ползват услугата. Ако и списъка с клиенти е празен, това означава, че тази услуга е конфигурирана като автоматично действие за промяна на скоростта на някой клиент.


Връзката най-отдолу води към страница за добавяне на нова услуга. Страниците за добавяне и редакция са идентични и включват поле за име на услугата (препоръчваме използване на късо, но разбираемо име - например 20лв, 50лв, бърз, бавен и т.н.) и 4 полета за всяка група трафик (входящ и изходящ):


● гаранция

колко трафик се гарантира за дадената група; въвежда се в килобити (например: 1kbit, 1.4mbit, 64kbit); минималната стойност е 1kbit; максималната стойност се определя от свободния гарантиран трафик в групата, към която ще бъде прикачен съответния клиент


● лимит

колко е максимално допустимата скорост за дадената група; въвежда се в килобити (например: 1kbit, 1.4mbit, 64kbit); минималната стойност е 1kbit; максималната стойност трябва да е по-малка или равна на лимита на групата, към която ще бъде прикачен съответния клиент; задаването на 128kbit тук, означава, че всички клиенти, които използват тази услуга няма да надвишават тази стойност (128/8=16 килобайта в секунда) всеки един поотделно


● burst

стойността на това поле не се изчислява тривиално; препоръчваме да бъде оставено празно за правилна работа на ограничаването по скорост


● cburst

стойността на това поле не се изчислява тривиално; препоръчваме да бъде оставено празно за правилна работа на ограничаването по скорост


Управление на скоростта (шейп)

Управлението на скоростта се разделя на два еднакви панела - за входящия и за изходящия трафик. Във всеки панел трафика се разделя в дървовидна структура.


За всяка група има връзки за добавяне на подгрупа, редактиране и изтриване. Групите със зададен LRoot го извеждат пред името си в квадратни скоби. Името на групите, към които има закачени клиенти, е връзка към страница с графика и списък с клиентите.


Има няколко различни критерия за разделянето на трафика:


● по вид трафик (1)

Разделянето по вид за удобство се свързва с групуте/видове трафик чрез филтър. Това не е задължително, но тогава ще има разлика между отчитането и ограничението по скорост. Свързването става, като в полето src/dst на филтъра се задава @peerX@, където X е идентификатора (id) на групата трафик.


● по вид трафик (1)

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


Например може да се направи група трафик до локален сървър, за която няма отчитане, а ресурса се разпределя без управление между всички клиенти. При мрежи, в които не всяко трасе поддържа максималната скорост, може да се направят подгрупи за различните трасета със съответните ограничения. В тях е най-удобно, ако всяко трасе използва отделни подмрежи от ip адреси, за да не се описва всеки клиент във филтрите.


● по достачвчик

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


Например доставчик1 дава 640kbit международен и 100mbit български трафик, докато доставчик2 дава 2mbit международен трафик. Конфигурират се всички клиенти да използват българския на доставчик1, всички без най-ниската тарифа да използват международния на доставчик2, а клиентите с най-ниската тарифа - международния на доставчик1. В този пример под международния трафик ще има две групи за двата доставчика, а под българския няма да има групи за различни доставчици.


Тъй като при различни доставчици трафика не може да се разпределя между двата, в примера скостите на групата на международния трафик ще са 2688kbit/2688kbit, а на подгрупите - 640kbit/640kbit и 2mbit/2mbit.


● по вид услуга

Подходящо е да се направи разделяне на трафика по услуги - всяка услуга да има заделен гарантиран трафик и лимит. Така се гарантира качеството на услугите и много лесно се постига съвпадение между заплащането и използването на трафика.


Тази стратегия е приложима независимо дали се използват един или повече доставчици на интернет.


Ако използваме примера по-горе, и има три вида услуги - 'бърз', 'нормален' и 'бавен', под групата на българския трафик, ще има три групи за трите услуги. Под международен/доставчик1 няма да има групи, защото се ползва само от един вид услуга. Под международен/доставчик2 ще има две групи за 'бърз' и 'нормален'.


Ако приемем, че е пресметнато колко потребители има във всяка група, каква е тяхната месечна такса и максимална скорост може да се разпредели гарантирания трафик между групите. В рамките на един доставчик може да се направи и разпределение на трафика между групите. Например за българския: 30mbit/100mbit за 'бърз', 40mbit/100mbit за 'нормален' и 30mbit/100mbit за 'бавен'.


● Име

Име на групата. За групи, които са в листата на дървото и са под група със зададен LRoot това име се вижда при редактирането на клиенти. За новосъздадени групи името е 'new item' и е оцветено в червено, което означава, че групата не може да се използва до промяна на името.


● Гаранция

колко трафик се гарантира за дадената група; въвежда се в килобити (например: 1kbit, 1.4mbit, 64kbit); минималната стойност е 1kbit; максималната стойност се определя от свободния гарантиран трафик в групата, към която ще бъде прикачена групата. Числата в кръгли скоби вдясно от всяка група показват отношението между наличния и дадения гарантиран трафик и при надвишаване се оцветява в червено.


● Лимит

колко е максимално допустимата скорост за дадената група; въвежда се в килобити (например: 1kbit, 1.4mbit, 64kbit); минималната стойност е 1kbit; максималната стойност трябва да е по-малка или равна на лимита на групата, под е която ще бъде прикачена групата


● Burst

стойността на това поле не се изчислява тривиално; препоръчваме да бъде оставено празно за правилна работа на ограничаването по скорост


● CBurst

стойността на това поле не се изчислява тривиално; препоръчваме да бъде оставено празно за правилна работа на ограничаването по скорост


● Приоритет

Приоритета на група трафик определя споделянето на излишъка. Няма влияние върху гарантираната скорост. Групите с по-малко число в приоритета ще използват излишъка първи, ако отново остане излишък се дава на по-ниския приоритет (по-голямо число) и т.н.


● LRoot

LRoot задава връзката между видовете трафик, групите трафик и клиентите. Така се означават групите трафик, под които ще се закачат клиенти.


● Име

Име на филтъра. За новосъздадени филтри името е 'new item' и е оцветено в червено, което означава, че филтъра не може да се използва до промяна на името.


● Приоритет

Приоритета определя в какъв ред ще се приложат филтрите. Първи се прилагат филтрите с най-малък приоритет.


● Протокол

IP протокол номер. Пример за използване:
1 0xff - ICMP
6 0xff - TCP
17 0xff - UDP


● От

IP адрес или мрежа от където идва пакета. Пример:
1.2.3.4
1.2.3.0/28


● До

IP адрес или мрежа накъдето идва пакета. Пример:
1.2.3.4
1.2.3.0/28


Трябва да се има предвид, че при входящия трафик 'До' е адрес на клиент, а 'От' е адрес в интернет, докато при изходящия е обратното.


● От порт

Порт при tcp или udp протокол. Примери:
TCP
25 - SMTP
80 - HTTP
110 - POP3
UDP
53 - DNS


● До порт

Порт при tcp или udp протокол. Примери:
TCP
25 - SMTP
80 - HTTP
110 - POP3
UDP
53 - DNS


Трябва да се има предвид, че порта, от който идва заявката е случайно генериран. Заявки до 80ти порт не идват винаги от 80ти порт, а от някой случайно избран.


Общи настройки (настройки/общи)

От тук се управляват базови функции на АйПиАкт. Повечето от тях се налага да се променят много рядко.


● език

Избира се езика по подразбиране за административния и потребителския интерфейси. Страницата за вход на потребители позволява промяна на езика за дадения потребител в рамките на сесията.


● вълшебна парола

Тази парола важи за вход във всички потребителски страници. Не трябва да е празна. Препоръчва се да не е тривиална (например: kjsfkj483-skdfjh,e843j.szlk). Използва се при всеки преход от адмнистративния към потребителския интерфейс.


● разреши dhcp

Разрешаването на dhcp позволява генерирането на конфигурационен файл и презареждане на dhcpd при промяната му. dhcp може да се използва само за директно свързани към АйПиАкт клиенти (т.е. в текущата версия не се поддържа dhcp зад рутер).


Дори поддръжката на dhcp да не е разрешена, интерфейса позволява настройката мрежите за dhcp и техните параметри.


● скрий tcp макс

Препоръчваме тази функция да не се използва.


Управлява поддръжката на ограничение по едновременни tcp сесии. Ако за даден клиент с повече от 1 ip адрес е зададено ограничение, то се прилага за всеки адрес по отделно. Стойността по подразбиране 0 означава, че няма ограничение.


● скрий ttl

Управлява поддръжката на ограничение на броя рутери до клиента. Ако клиента е директно свързан и не използва собствен рутер, минималната стойностт е 0. Ако клиента е зад 2 рутера и не използва собствен рутер, то минималната стойност е 2. Това е защита против препродаване/споделяне на услуга. Не е тривиално да се заобиколи, а при много операционни системи и хардуерни рутери е невъзможно. Стойността по подразбиране е -1 и означава, че не се прави ограничение.


● пренасочи спрените

Тази функция позволява всички спрени адреси да получат достъп само до определен уеб сайт, независимо от заявения адрес (например при отваряне на google.com). Правилното и конфигуриране изисква да има уеб сървър на даден порт, който пренасочва всички заявки, независимо от директория/страница към желаното място.


Примерни настройки за apache 1.3 на порт 8080 - трябва да се забранят неща от типа на cgi-bin, да се разреши php, .htaccess и mod_rewrite. В директорията на сървъра се поставя следния .htaccess


RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*) index.php?pi=/$1


и следния index.php


<?
header('location: http://provider.bg/stopped.html')
?>


В примера се предполага, че адреса на provider.bg, където е и сайта на порт 8080 се виждат дори и от спрените клиенти (конфигурира се от файъруол/prefilter). Същото важи и за dns сървърите, които се използват от клиентите.


● без мрежа

Въвежда се ip адрес или мрежа. Пренасочването не се извършва за тази мрежа или адрес. Трябва да се въведе адреса на уеб сървъра със сайта и пренасочването. Ако това са два различни сървъра, те трябва да са от една и съща мрежа.


● към сървър:порт

Въвежда се ip адреса на сървъра за пренасочване. В примера, ако provider.bg има адрес 1.2.3.4, тук се попълва 1.2.3.4:8080


● от адрес

Тук се въвежда ip адрес на АйПиАкт, който има достъп до интернет.


● arping интерфейс

За правилната работа на arping трябва да се зададе на кой интерфейс са клиентите. Обикновено това е eth1 или eth1.1234 при използване на 802.1q vlan.


● брой на пинг

От тук се задава броя по подразбиране на изпращаните ping/arping.


Мрежи

При изграждането на отчитането АйПиАкт определя кои ip адреси се отчитат по въведените адреси на клиенти. Дори след като бъдат оптимизирани, те никога не запълват цялата мрежа (освен ако не е въведена мрежа), заради отделянето на три адреса за мрежов адрес, гейтуей и броудкаст.


Например, ако мрежата за клиенти е 1.2.3.0/28 (16 адреса), първия клиент ще е с адрес 1.2.3.2, а последния с 1.2.3.14. След оптимизация се получават пет мрежи с адреси: 1.2.3.2/31, 1.2.3.4/30, 1.2.3.8/30, 1.2.3.12/31 и 1.2.3.14/32, докато реално се използва една.


По тази причина за оптимизация на работата се задават мрежите, заделени за клиенти. Формата е по една мрежа на ред във вид адрес/маска. Тези кратки маски са описани в таблицата за често използваните маски:


N брой адреси в мрежата маска кратка маска
1 1 255.255.255.255 /32
2 2 255.255.255.254 /31
3 4 255.255.255.252 /30
4 8 255.255.255.248 /29
5 16 255.255.255.240 /28
6 32 255.255.255.224 /27
7 64 255.255.255.192 /26
8 128 255.255.255.128 /25
9 256 255.255.255.0 /24

Файъруол

Формата е команден ред на iptables без (-t filter/-t nat/-t mangle). Prefilter се прилага преди проверката кой клиент е спрян, filter след това. Правила с DROP е по-ефективно да са в prefilter. Правила с ACCEPT в prefilter позволяват да не се отчита трафик. Mangle и nat съдържат допълнителните правила за съответните таблици.


Файъруол шаблони (шаблони)

Не се препоръчва промяната на шаблоните. Промяна се налага в редки случаи от типа на маркиране на трафик за повече от един доставчик с много потребителски вериги.


Групи/видове трафик (peers)

Версии след 1.71 поддържат задаването на повече от две групи трафик, като максималния брой е 16. Групите се описват като списъци от адреси с приоритет за всеки списък. Приоритета означава последователността на проверките даден адрес от коя група е. Колкото по-обща е групата, толкова по-голямо трябва да е числото за приоритет. Групи, които нямат общи адреси могат да са с еднакъв приоритет.


Разрешаването на дадена група трябва да стане след описването на група за ограничаване по скорост със същия LRoot. След това трябва да се редактират предефинираните услуги и всички клиенти със специфични скорости.


Коефициента се използва при отчитането на трафика. Ако дадената група не трябва да влиза в ограниченията по трафик се задава 0. Ако цената на два вида трафик е 1:4 (например локален към международен) и трябва да се направи услуга с фиксирана цена на мегабайт в международния коефициента е 1, а в локалния - 0.25.


DHCP

За всяка мрежа, в която има клиенти с автоматични настройки се задава мрежата и шаблон с допълнителни опции във формат на isc dhcpd. При добавяне на нова мрежа шаблона се попълва със стандартни стойности, като адресите, които трябва да се променят са x.x.x.x, както следва:


● option routers - гейтуей адрес

● option subnet-mask - маска в дълъг формат (например 255.255.255.0)

● option domain-name-servers - списък от dns сървъри, разделят се със запетая

История на промените (лог)

Историята на промените запазва всички промени по клиенти, настройки и скорости. Формата не е удобен за четене, но носи пълна информация за направените промени. Тази функция се използва за контрол, когато повече хора имат достъп до административния интерфейс.


Рутери

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


Основно поддръжката е за рутери под linux. За други рутери поддръжката е ограничена до CSV (comma separated values) изход във формат ip,mac,macprot,stopped.


Рутери под linux изискват да има инсталиран curl (със или без ssl), като се поставят следните cron задачи:


/usr/bin/curl -k -s -F usi="`cat /proc/stat|grep 'cpu '`" -F load="`cat /proc/loadavg|awk '{print $1" "$2" "$3}'`" https://host/members/routerload.php


/usr/sbin/arp -an|/usr/bin/curl -k -s -F macs=@- https://host/members/router.php -F hard=1|/sbin/iptables-restore


Цветове

От тази страница се управляват всички цветове на интерфейса. Задават се в html формат за цвят. Има въведени готови цветови комбинации. Ако направите собствена комбинация, използвайте връзката на края на страницата, за да запазите или да ни изпратите вашата комбинация.