Yvision.kz
kk
Разное
Разное
399 773 постов41 подписчиков
Всяко-разно
1
22:52, 28 июля 2011

Установка и настройка TraffPro 1.3.8 free на CentOS 5.5

Blog post image

Настройка общего доступа офиса в Интернет - дело простое. Системному администратору доступно много разнообразных решений, поэтому он спокоен как удав. В основном админы берут обычный ПК и ставят туда специализированный софт, например UserGate, WinRoute, ISA и т.п. Базовая настройка таких решений проста, и это ценят начинающие администраторы.

Как оказалось, аналогичное решение имеется и на конкурирующей ОС Linux. Которое может заменить тот-же UserGate. Использование данного продукта позволит Вам легко контролировать количество скачанного трафика, открывать порты не используя сложный для начинающего встроенный фаервол Linux. Речь в этой записке пойдет о TraffPro Office free - системе учета трафика для офисов.Blog post image

Данный продукт имеет следующие плюсы (для меня):

  • Бесплатность биллинга Traffpro Free и Linux
  • Легкая установка
  • Учет трафика путем выставления лимитов по каждому компьютеру с отключением превысившего.
  • Авторизация MAC и IP
  • Открытие портов, делается очень просто.

В этой записке будет рассказано  как установить и настроить данную программу на операционной системе CentOS 5.5.

Установка TraffPro будет состоят из следующих этапов:

1.      Установка ОС CentOS 5.5, настройка сетевых адаптеров

2.      Установка и настройка BIND для организации кэширующего DNS сервера

3.      Установка недостающих библиотек LibNet

4.      Установка и настройка TraffPro

5.      Проверка Интернета на клиентских машинах

6.      Включение защиты сервера (шлюза)

Blog post image

Первый этап. Установка CentOS 5.5 и настройка сетевых адаптеров

Для установки CentOS Вам нужен будет ISO образ этой операционной системы. Скачать образ можно по следующей ссылке:

http://mirror.yandex.ru/centos/5.11/isos/i386/CentOS-5.11-i386-bin-DVD-1of2.iso

 

Запишите скаченный ISO образ на DVD болванку. Вставьте диск в DVD дисковод и перезагрузите компьютер.

Blog post image

Нажимаем ENTER

Blog post image

Тут жмем кнопку "Skip", отказавшись от проверки читаемости DVD

Blog post image

Жмем “Next”

Blog post image

Выбираем язык установки “English” и жмем “Next”

Blog post image

Выбираем раскладку для клавиатуры “U.S. English” и жмем “Next”

Blog post image

В этом окошке нам предлагают разметить новый жесткий диск.

По умолчанию стоит “Remove linux partitions on selected drives and create default layout

Нас не устраивает автоматическая разбивка предлагаемая установщиком, потому что она не соответствует предлагаемой разработчиками программы. Чтобы настроить разбивку в ручную надо выбрать в выпадающем списке "Create Custom Layout" и нажать на кнопке "Next"

Blog post image

А теперь не много напишу про разбивку диска

Допустим имеется диск объемом 80 Гб, разбивка на разделы в этом случае будет следующей:

/ - обычно под этот раздел выделяют 10 Гбайт, он нужен для размещения файлов системы.

/home - в этом разделе хранятся данные пользователей (рабочий стол, папка Документы и т.д.), выделим для него 5 Гбайт, так как мы не будем туда закачивать фильмы и музыку, у нас же сервер :)

/swap - этот раздел используется для файла подкачки, если у вас объем ОЗУ 1 Гбайт, тогда отдайте 2 Гб под раздел Swap. Если 2 Гб ОЗУ, то соответственно под раздел Swap нужно 4 Гбайт дискового места и т.д.

/var - главный и важный раздел, в этот раздел пишутся логи, там находятся базы данных MySQL, там хранятся закаченные RPM пакеты  и т.д. Выделяем ему все оставшееся место на диске, а точнее  63 Гбайта пространства.

В соответствии с данным рекомендациями разобьем наш жесткий диск.

Blog post image

Начнем деление диска с корневого раздела, для этого щелкните кнопку "New"

И укажите следующие (как на рисунке) параметры:

"Mount Point:"        - /

"File System Type" - Ext3

"Size (MB)"             - 10 000 (10 Гбайт)

После всех изминений нажмите кнопку "OK"

Теперь у нас есть корневой раздел "/", осталось добавить другие разделы. Для это нажмите еще раз кнопку "New".

Blog post image

"Mount Point:"        - /home

"File System Type" - Ext3

"Size (MB)"             - 5 000  (5 Гбайт)

Blog post image

"File System Type" - swap

"Size (MB)"             - 2 000  (2 Гбайт)

Blog post image

"Mount Point:"        - /var

"File System Type" - Ext3

"Additional Size Options"- Fill to maximum allowable size

Blog post image

В конце у Вас будет вот такое окошко. Нажмите "Next" чтобы продолжить установку.

Blog post image

Параметры установки загрузчика Grub, тут мы менять не чего не будем. Нажмите "Next"

Настройка сетевых адаптеров нашего сервера.

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

Давайте займемся настройкой двух сетевых адаптеров.

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

Первый сетевой интерфейс, который подключен к провайдеру:

eth0 – смотрит в Интернет. Сетевые настройки для этого адаптера Вы должны получить от провайдера. Провайдер выдаст Вам следующие IP адреса:

1. IP адрес хоста.

2. Маску сети

3. IP адрес шлюза

4. IP адреса DNS серверов.

Как только Вы получите эти настройки, впишите их в настройки Вашего адаптера подключенного к сети провайдера. У меня для примера эти настройки имеют следующий вид:

1. IP адрес хоста                 | IP Address                    – 192.168.1.10

2. Маску сети                       | Prefix (NetMask)           – 255.255.255.0

3. IP адрес шлюза               | IP адрес шлюза            - 192.168.1.1

4. IP адреса DNS серверов | IP адрес DNS сервера  - 192.168.1.1

Второй сетевой интерфейс, который подключен в локальную сеть:

eth1 – смотрит в локальную сеть, настройки для этого адаптера минимальны. Нужно только вписать:

1. IP адрес хоста.

2. Маску сети

Например мои настройки следующие:

1. IP адрес хоста                 | IP Address                    – 10.168.50.2

2. Маску сети                       | Prefix (NetMask)           – 255.255.255.0

Теперь покажу как настроить адаптеры в картинках.

Настройка первого адаптера:

Blog post image
Выделите первый адаптер в списке который подключен к провайдеру и нажмите кнопку "Edit"

Blog post image
Впишите:

IP Adress  - 192.168.1.10

Prefix (NetMask)  - 255.255.255.0

Далее впишите адрес шлюза и ДНС сервера:

Blog post image

Настройка второго адаптера, который подключен в локальную сеть:

Blog post image

Выделите второй адаптер в списке который подключен к локальной сети и нажмите кнопку "Edit"

Впишите в этом окне следующие настройки и нажмите "Next":

IP Adress  - 10.168.50.2

Prefix (NetMask)  - 255.255.255.0

Blog post image
Все, мы настроили наши адаптеры!

Не забудьте поставить галочки в столбце Active on Boot.

Blog post image

Настройка часового пояса, устанавливаем нужное и жмем “Next”

Blog post image

Вводим пароль для учетной записи “root”

Нажимаем “Next”

Blog post image

Нажимаем “Next”

Blog post image

Blog post image

В этом окне мы будем лицезреть процесс установки нашей CentOS.

Blog post image

По окончании процесса установки, выйдет окошко с поздравлением и кнопкой "Reboot

Нажимаем "Reboot" и перезагружаем компьютер.

Blog post image

Вот оно наше долгожданное окно загрузки!!!

Но прежде чем увидеть рабочий стол, нам будет предложено произвести первоначальные настройки, такие как: настройка времени, создание учетной записи простого пользователя, настройка фаервола и защиты SE LINIX.

Blog post image

Жмем “Forward”

Blog post image

Отключаем встроеный фаервол (цепочка RH-Input)

Он нам не нужен, так как TraffPro сам все настроит как надо.

Нажмите "Forward" и выплывет предупреждающее окошко, о том что компьютер остался без сетевой защиты. Проигнорируйте его нажав кнопку "Yes".

Blog post image

Отключаем “SELinux” выбрав "Disabled"

Нажимаем "Forward", а потом еще кнопку "Yes"

Blog post image

По окончании жмем кнопку “Forward”

Blog post image
В этом окне вбиваем имя учетной записи “user” и пароль для нее.

Жмем “Forward”

Blog post image

Blog post image

Жмем "Finish"

Соглашаемся на перезагрузку…

Blog post image

Blog post image
Заходим под учетной записью root:

Вводим  – root

Вводим пароль - root'a

Пароль для учетной записи root если Вы не забыли мы задавали при установке CentOS. Конечно не хорошо работать под учеткой root, но для наглядности можно сделать и исключение.

Все на этом первый этап закончен, важно чтобы после этого этапа у вас был Интернет на вашем сервере. Откройте браузер Mozzila FireFox который находится в меню Applications -> Internet -> FireFox Web Browser и введите в адресной строке браузера - "http://google.kz" (можете ввести адрес любого сайта)


2. Установка и настройка BIND для организации кэширующего DNS сервера

Blog post image

Запускаем Terminal (черный экран) который находится в меню: Applications -> Accessories -> Terminal.

Вводим следующие команды:

yum install bind -y

Меняем две строчки в  конфигурационном файле демона Named:

gedit /etc/named.conf

Изменяем следующие строчки:

 

listen-on port 53 { localhost;192.168.1.1; } — Какой порт слушать
allow-query { localhost;192.168.1.1/24; }; — Разрешать запросы от каких сетей

 

listen-on { 127.0.0.1; 10.168.50.2; };      # IP адрес сетевой карты

allow-query { 127.0.0.1; 10.168.50.0/24; }; # Адрес локальной сети

Сохраняем файл.

Теперь проверим работу DNS сервера,  введя команду:

service named start
Starting named:                                            [  OK ]

Сервис named запустился нормально.

Добавим службу named (он же Bind) в автозагрузку:

chkconfig   --level 35 named on

3. Установка недостающих библиотек LibNet

Если у вас быстрый Интернет, тогда можете подключить репозитарий где есть все не достающие пакеты:

rpm -ihv http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-4.noarch.rpm

rpm -ihv http://centos.alt.ru/repository/centos/5/i386/centalt-release-5-3.noarch.rpm

Все теперь Вы можете продолжить установку сразу с 4 пункта Установка и настройка TraffPro.

Если у Вас медленный Интернет, то не достающие пакеты можно скачать с файлообменника:

http://files.namba.kz/download.php?id=1484926&url=http%3A%2F%2Fdownload.files.namba.kz%2Ffiles%2F1484926%2Flibnet.zip_FILES.tar.gz&info=mXoiznUr0lqHBqgdADdVRidiUXzRaH%2BgqPmCGF4KyH1F0xMYJ%2F1evJvRaerlgvB4OUcxhKDvqOnhvIr%2BQv2J9sryFsiDc7qL99AzhCtHDZ4kdDt6RQmsSQHGGuL0hNoLxVzQdsaxbCM36Zth56ea

Внутри архива четыре  файла, щелкаем последовательно на каждом файле и соглашаемся на установку:

libnfnetlink-1.0.0-1.el5.i386.rpm

libnfnetlink-devel-1.0.0-1.el5.i386.rpm

libnetfilter_queue-0.0.17-1.el5.i386.rpm

libnetfilter_queue-devel-0.0.17-1.el5.i386.rpm

Можно еще проще сделать, если не хотите каждый раз кликать по файлам, запустите  терминал, а потом введите команду:

rpm -ivh *.rpm

Эту команду надо вводить где лежат все файлы которые выше.

ТрафПро еще будет ругаться на то что нет MySql-Libs, можете проигнорировать это, так как у меня даже без нее все заработало.

4. Установка и настройка TraffPro

Качаем TraffPro с официального сайта или еще откуда нибудь J. Далее распаковываем его.

И  видим файлик install.sh

Нажмем двойным щелчком на нем и в меню выберем Run in Terminal

Можно также запустить терминал и ввести команду - sh install.sh , где лежит ТраффПро.

Далее TraffPro задает Вам следующие вопросы:

ВопросОтвет
Select languagerussian
Запустить установку в графическом режимеn
Trafro EULA. Вы согласны с условиями лицензииy
Выберите свой Linux дистрибутив0
Install required packages if not installedy
Is this OK [y/No]y
Собрать демон контроля (y) или использовать уже собранныйy
Продолжить установкуy
Собрать демон Планировщик заданий (y) или использовать уже собранныйy
Продолжить установкуy
Сохранить предыдущие настройки TraffPo [y/n]n
Обновляем систему или устанавливаемn
Настроить систему сейчас (y) или оставить настройки по-умолчанию (n)n
Продолжить установкуy
Добавить администратора в базуy
Продолжить установкуy
Запускать TraffPro при загрузке системыy
Запустить TraffPro прямо сейчасy
 

 

Нажимайте Y (ДА) или N (НЕТ), чтобы ответить на вопросы, ответы берите из столбца "Ответ"

Запускаем Apache и MySQL :

service httpd start

service mysqld start

И вставим их в автозагрузку:

chkconfig --level 35 httpd on

chkconfig --level 35 mysqld on

Настроим MySQL:

gedit /etc/my.cnf

Добавим следующие параметры:

innodb_buffer_pool_size = 150M
max_allowed_packet = 16M

Запускаем браузер Mozzila FireFox:

В адресной строке вводим:

http://127.0.0.1/traffpro/index.php/admin_login

Blog post image

Вводим логин и пароль - admin/admin

Заходим в меню Users - > Office ->Users как на картинке.

Blog post image
На странице добавления User’a щелкаем кнопку New User.

Blog post image

Заводим нового пользователя (компьютер). Обязательно подключите этот компьютер в Вашу локальную сеть. В нашем примере мы дали IP адрес этому компьютеру 10.168.50.50, после IP адреса идет поле где должен стоят MAC адрес, правее стоит значек который поможет Вам автоматически заполнит это поле (если Вы настроили сетевой адаптер пользователя и включили его компьютер).

Нашему компьютеру из локальной сети открыт доступ  асболютно по всем портам (1-65535), то есть можно играть любые сетевые игры через Интернет, а также запускать любые сетевые приложения.  Это разумеется не хорошо! Но для примера сгодится думаю...

Если хотите просто настроить доступ в Интернет и не чего больше, то задайте следующие порты: 0,53,80 за место портов 0-65535

Где:

0 - открытие  ICMP, чтобы пинги шли

53 - порт ДНС для разрешения имен

80 - HTTP порт

Кроме браузера у Вас не чего работать не будет (ICQ, почта и т.д.), если компьютеру нужна ICQ и почта укажите следующие порты: 0,25,53,80,110,443,5023,5190,5222 за место 0-65535.

Где:

0 - открытие ICMP, чтобы пинги шли

25 - POP3 (почта)

53 - порт ДНС (для разрешения имен)

80 - HTTP порт (для открытия сайтов)

110 - SMTP порт (почта)

5023 - Amadeus

5190 - ICQ

5222 - QIP account

Нажимаем кнопку APPLY

Blog post image

Добавляем трафик и нажимаем Apply

5. Проверка Интернета на клиентских машинах

Настраиваем сетевой адаптер клиентского компьютера:

Blog post image

Запускаем Explorer и проверяем если ли Интернет.

6.      Включение защиты сервера (шлюза)

Если не включить защиту, ваш сервер будет открыт на весь Интернет...

Для предотвращения этого отредактируйте файл /etc/traffpro/traffpro.cfg:

ss_enabled=false    ->   ss_enabled=true

ports_detail=false   ->   ports_detail=true    - Эта опция включает защиту сервера (управление фаерволом) и учет трафика самого шлюза

url_detail=false      ->    url_detail=true      - протоколирование посещения сайтов

url_block=false       ->   url_block=true       - запрет посещения сайтов

eth_control=true     -> eth_control=false    - отключение проверки по MAC адресу

Если вам интересно узнать какие опции еще доступны и их описание, перейдите по ссылке: http://traffpro.ru/print:page,1,45-sjobsn-usib-lnb-chnb-traffpro.html

Теперь зайдите в админку, в меню Система - > Серверы  (Уч. защита) - >  Серверы  (Уч. защита) или на английском System -> Servers (Report, Security) -> Servers (Report, Security)

Blog post image

Blog post image

В этом окошке заполните все, поставте ваш внешний IP и MAC адрес. Также укажите какой порт будет доступен из внешней сети (Интернет) к серверу. Мы указали 22 порт, по которому работает  SSH и 80, 53 порт чтобы наш сервер мог обращаться в локальную и глобальную сеть по HTTP протоколу и DNS.

MAC адрес можете взять из меню System -> Administration -> Network, далее выводите свойства адаптера eth0 (двойной щелчок), а потом выбераете вкладку Hardware Device.

И на этой вкладке Вы увидите MAC адрес,. который можно скопировать, а потом вставить в нужное место.

__

В TraffPro из за не корректного отключения сервера часто портятся таблицы БД. Или бывает что в БД лезут косяки, из за чего в базе растут квоты.

Сперва надо определить как таблица содержит корявые значения, и потом уже исправлять эту таблицу, например можно так:

mysql -u root -p traffpro -e "truncate table clients_active_time"

Это команда удаляет таблицу "clients_active_time" и создает такую же таблицу. Бывает что надо применять эту команду на другую таблицу.

И есть еще полезная команда для профилактики базы:

mysqlcheck traffpro --auto-repair

Первую команду применяйте в редких случаях, так как она удаляет все значения в таблице, например после отработки команды "truncate", могут обнулится квоты. Вторая команда, ее желательно вставить в cron. Можно запускать ее каждый день, думаю это не будет лишним.

Из за глюков с базой, возможны блокировки клиентов, а также могут возникнуть тормоза при работе Интернета. Пользователи кстати первые это замечают.
Например добавить задание в cron можно так:

# vi /etc/crontab

5 23 * * * /usr/bin/flock -xn /var/lock/script.lock -c 'mysqlcheck traffpro --auto-repair'

Задание будет выполнятся каждый день ночью в 23:05.

Заключение

И так мы имеем шлюз который раздает Интернет компьютерам локальной сети при этом считая трафик каждого компьютера, отключая компьютеры которые превысили месячный лимит.  Учет трафика решен с полна! Теперь нет боязни что кто-то накачает сотни Гигабайт трафика которые стоят хороших денег. Помимо учета трафика система легко администрируется, все делается с помощью веб интерфейса. Вот это и является изюминкой этой системы, сказать честно, это самая легкая система учета трафика которая ставится и настраивается за 10 минут, при этом сразу же начинает работать так как надо!

Сам ТрафПро - http://files.gw.kz/x3kdhfvapv.html

Пароль: Бip екы уш

1
2911
6