Установка Прокси сервера SQUID с веб мордой SAMS [2008]
Вот решил поставить как-то прокси сервер squid естественно, но хотелось еще ко всему этому веб морду и прочитал про такое SAMS (Squid Account Manager Sams) http://sams.perm.ru/. В принципе все красиво и логи от squid он хранить умеет в mysql Создавать группы, ставить ограничение по трафику, ну и что самое главное можно было потом из mysql тянуть логи в 1С. На 1С была сделана обработка для распознания рабочий личный сайты итд. В общем красиво и много полезного.
Приступим....
Ставим сам прокси сервер SQUID
cd /usr/ports/www/squid
make config
Выбираем опции
X squid_delay_pools
X squid_carp
X squid_wccp
X squid_ident
X squid_kqueue
X squid_largefile
и устанавливаем
make && make install && make clean
Добавляем следующие опции в /usr/local/etc/squid/squid.conf Опция http_port 3128 меняет порт, на котором работает squid Опция forwarded_for off отключает ip адрес клиента Опциями acl squidusers proxy_auth REQUIRED и http_access allow squidusers мы разрешаем аутентифицированным пользователям доступ в интернет.
auth_param basic program /usr/local/libexec/squid/ncsa_auth
/usr/local/etc/squid/ncsa.sams
auth_param basic children 5
auth_param basic realm Squid proxy-caching web server
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
http_port 3128
forwarded_for off
acl squidusers proxy_auth REQUIRED
http_access allow squidusers
Выбираем опции
X CTYPE
X CURL
X GD
X GETTEXT
X HASH
X ICONV
X JSON
X MYSQL
X OVERLOAD
X PCRE
X PDF
X PDO
X PDO_SQLITE
X POSIX
X SESSION
X SIMPLEXML
X SPL
X SQLITE
X TOKENIZER
X XMLREADER
X XMLWRITER
X ZLIB
make && make install && make clean
Чтобы активировать модули apache даем команду
apachectl graceful
В файл /usr/local/etc/apache/httpd.conf добавить директиву ExecCGI Это разрешит загрузку файлов на сервер через web интерфейс
ee /usr/local/etc/apache/httpd.conf и добавляем следующее
<Directory />
Options FollowSymLinks ExecCGI
AllowOverride None
</Directory>
Настриваем php для работы в режиме safe mode, изменим /usr/local/etc/php.ini включаем режим safe mode. Для этого выставляем параметр safe_mode = On Ниже фрагмент php.ini Правим php.ini
ee /usr/local/etc/php.ini
safe_mode = On
safe_mode_exec_dir = "/usr/local/share/sams/bin"
Установка SAMS-1.1 Качаем с http://sams.perm.ru/ дистрибутив sams-1.1.tar.bz2 Кидаем в любую директорию например /usr/home/ Распаковываем
tar zxvf sams-1.1.tar.bz2
Переходим в каталог
cd sams-1.1
далее конфигурим
./configure
И устанавливаем обязательно gmake
gmake install
переходим в директорию со скриптами создания базы и пользователя sams с паролем qwerty в Базе Данных Mysql
cd mysql
./create_sams_user
Вводим пароль Администратора mysql Далее
./create_squid_db
Вводим пароль Администратора mysql далее Копируем демон запуска SAMS в каталог ко всем демонам
Далее необходимо создать символическую ссылку.(чтобы создавался файлик ncsa.sams)
ln -s /usr/local/bin/htpasswd /usr/bin/htpasswd
Перед тем как запустить скачайте исправленный файл и его в директории /usr/local/www/data/src/ Вместо userbuttom_1_prop.php в нем касяк не стоит проверка на то если уже существующего пользователя редактируешь ну например трафик добавил и оставляешь поле пароль пустым то пароль бьеться,так что качаем исправленный Качаем userbuttom_1_prop.php
Запускаем SAMS
/usr/local/etc/rc.d/samsd start
Проверяем набераем в любом веб браузере http://ip_tachki/sams/ Создаем пользователя sams для доступа к mysql, автоматом создадутся необходимые базы.
User sams password qwerty
Заходим в веб интерфейс, по умолчанию пользователь Admin,
пароль qwerty
Администрирование SAMS -> настройки SAMS
Способ аутентификации пользователя-> NCSA
Настройка samsdaemon
Проверять наличие команды на реконфигурирование squid каждые ->
1 секунд
Обрабатывать логи SQUID -> галочка
Запускать обработчик логов через N минут -> 1 минут
Редиректор -> встроенный squid
Создаем пользователей, назначаем им шаблон
Да и добавте адрес в браузере в строке Не спользовать прокси
для и введите ip_tachki
У меня это так 192.168.1.5
Можно перевести еще все в SAMS на русский язык
В настройках Веб интерфейса
Далее убираем две строки из squid.conf
ee /usr/local/etc/squid/squid.conf
acl squidusers proxy_auth REQUIRED
http_access allow squidusers
и добавляем следующую для редиректора
redirect_program /usr/local/etc/squid/redirector.sams
Реконфигурируем прокси В веб интерфейсе SQUID -> Реконфигурирование SQUID Все можно выпить бутылочку шампанского :) Можно еще включить фаерволл pf для того что бы закрыть порты
Чуть позже напишу как прикрутить редиректора РЕЖИК 3 http://www.rejik.ru/ Он нужен для резки баннеров ну и запрещать сайты который не для общего пользования итд