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

Проблемы установки, настройки и работы Правильной Операционной Системы

Модератор: terminus

Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
zevs5
рядовой
Сообщения: 21
Зарегистрирован: 2008-10-20 0:20:14
Откуда: Ставрополь
Контактная информация:

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

Непрочитанное сообщение zevs5 » 2008-12-12 0:03:52

Скрипт автоматического управления доступом в интернет на базе IPFW и Ipacctd, может кому пригодится

Требуется Настроенный IPFW и Ipacctd
Установка:

ссылка на архив http://www.zevs5.ru/IPFW.TGZ
Содержимое архива:
Папка CONSOL
Папка WEB
Файл ipfw_rule
Файл ipfw.sql
Файл readme.txt

Содержимое директории WEB, скопировать в директорию доступную через вебсервер.
В MySQL создать две базы данных, прописать их в конфигурационном файле
. Одна база используется только консольно, другую необходимо прописать в обоих частях
(WEB и CONSOL)
Пример:

Код: Выделить всё

                                trffic.conf
				$bdname = "ipfw";
				$bd_name = "ipacctd";

				connect.php
				$bdname = "ipfw";

. Завести пользователя в MySQL и дать права на обе базы.

Содержимое директории CONSOL скопировать в любое место (например /usr/local/etc)

Файл ipfw_rule - это скрипт фервола (нужно указать в rc.conf)
Файл ipfw.sql дамп базы *$bdname*, в *$bd_name* таблицы создаются автоматически
Файл ./CONSOL/trafd/trafd_rec.zpl права 0700 root:wheel
в крон добавить строчку

*/5 * * * * root /usr/local/etc/trafd/trafd_rec.zpl
PHP нужно либо CGI либо CLI, в trafd_rec.zpl под корректировать путь к PHP

Пример VHost :

Код: Выделить всё

		NameVirtualHost *:_PORT_
		<VirtualHost *:_PORT_>
  			ServerName ACCESS
  			ServerAdmin _ВАШ_EMAIL_
  			VirtualDocumentRoot "*путь к директории WEB*"
  				<Directory "*путь к директории WEB*">
           					Options +Includes
          					 AllowOverride None
           					Order allow,deny
           					Allow from all
  				</Directory>
  			ScriptAlias /cgi-bin/ "*путь к директории WEB*/cgi-bin/"
    				<Directory "*путь к директории WEB*/cgi-bin/">
         					  AllowOverride None
          					 Order allow,deny
          					 Allow from all
           					Options None
  				</Directory>
  			ScriptAlias /_php5/ "*путь к директории PHP*/php5/bin/"
  			Action application/x-httpd-php5 "/_php5/php-cgi"
  				<Directory "*путь к директории PHP*php5/bin">
     					   Options +Includes
     					   AllowOverride None
      					  Order allow,deny
    					    Allow from all
  				</Directory>
   			 DirectoryIndex index.zpl
  			AddType application/x-httpd-php5  .zpl
  			SetEnv PHPRC "*путь к директории PHP.INI*"

  			ErrorLog "*путь к директории LOG*/error.log"
		</VirtualHost>
Последний раз редактировалось zevs5 2008-12-12 15:10:31, всего редактировалось 5 раз.

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35426
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Скрипт автоматического управления доступом в интернет

Непрочитанное сообщение Alex Keda » 2008-12-12 0:37:36

сообщение нормально оформите
Убей их всех! Бог потом рассортирует...

Аватара пользователя
zevs5
рядовой
Сообщения: 21
Зарегистрирован: 2008-10-20 0:20:14
Откуда: Ставрополь
Контактная информация:

Re: Скрипт автоматического управления доступом в интернет

Непрочитанное сообщение zevs5 » 2008-12-14 13:42:51

Обновил архив по ссылке, нешел кое какие ошибки в скриптах
Сделать можно все, надо только знать как

Аватара пользователя
BaHJa
ефрейтор
Сообщения: 61
Зарегистрирован: 2008-08-17 18:56:14
Откуда: Ukraine, Ternopil
Контактная информация:

Re: Скрипт автоматического управления доступом в интернет

Непрочитанное сообщение BaHJa » 2008-12-15 1:34:00

как єто работает? можна подробное об єтом расказать? :cz2:

Аватара пользователя
zevs5
рядовой
Сообщения: 21
Зарегистрирован: 2008-10-20 0:20:14
Откуда: Ставрополь
Контактная информация:

Re: Скрипт автоматического управления доступом в интернет

Непрочитанное сообщение zevs5 » 2008-12-15 10:14:10

Как это работает !!!.
Прошу сильно не пинать.
В архиве находятся скрипты на PHP в двух папках, в первой "CONSOL" находится часть работающая в качестве CGI скрипта запускаемого по крону.
Которая отвечает за перезапуск ipacctd и чтение его логов с добавлением в MySQL всех данных. (Пути к логам ipacctd находит сам, только надо указывать расположение rc.conf).
Вторая папка "WEB" набор скриптов для управления, и просмотра статистики потребления трафика, общаются обе части исключительно через Базу Данных.

Управление доступом осуществляется на основе IPFW table, добавление и удаление IP из таблицы осуществляет скрипт CGI "CONSOL".

Скрипт фаервола прилагается.

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