Предварительно мы должны установить все необходимые компоненты.
В качестве базы данных будем использовать MySQL 5.
В качестве веб-сервера apache + php5.
В качестве прокси сервера squid3
Управление прокси сервером будем осуществлять посредством SAMS (версия 1.0.5 как наиболее стабильная)
1. Устанавливаем все необходимые компоненты в ручную:
sudo su
apt-get update
(обновление информации о пакетах в репозиториях)
apt-get upgrade
(обновление уже установленных пакетов)
apt-get install apache2 apache2-doc apache2-utils ssl-cert mysql-server libmysqlclient15-dev libapache2-mod-php5 php5 php5-common php5-dev php5-mcrypt php5-imagick php5-mysql php5-gd squid libpcre3 libpcre3-dev mc
(установка требуемых пакетов, включая WEB-сервер и базы данных SQL : apache,php,mysql)
Во время установки появится запрос пароля для MySQL администратора (root).
Кроме того потребуется библиотека libmysqlclient16_5.1.73-0ubuntu0.10.04.1_i386.deb (либо libmysqlclient16_5.1.73-0ubuntu0.12.04.1_amd64.deb в зависимости от разрядности установленной системы). Этой библиотеки нет в репозитории, поэтому нужно скачивать и устанавливать отдельно.
wget http://security.ubuntu.com/ubuntu/pool/main/m/mysql-dfsg-5.1/libmysqlclient16_5.1.73-0ubuntu0.10.04.1_i386.deb
dpkg --install libmysqlclient16_5.1.73-0ubuntu0.10.04.1_i386.deb
или для 64-битной версии
wget http://security.ubuntu.com/ubuntu/pool/main/m/mysql-dfsg-5.1/libmysqlclient16_5.1.73-0ubuntu0.10.04.1_amd64.deb
dpkg --install libmysqlclient16_5.1.73-0ubuntu0.10.04.1_amd64.deb
2. Установка SQUID3
apt-get install squid
Настраиваем его:
nano /etc/squid3/squid.conf
Раскоментим строки
acl localnet scr 192.168.0.0/24 — вводим нашу подсеть (вводите свою).
http_access allow localnet — разрешаем подсеть.
access_log /var/log/squid3/access.log squid — разрешаем логи.
pid_filename /var/run/squid3.pid — указываем pid файл squid.
cache_log /var/log/squid3/cache.log — лог cache.
cache_dir ufs /путь к папке cache/ — тут указываем, где будет размещаться папка с cache.
coredump_dir /var/spool/squid3
(После вноса изменений нажать Ctrl+X, затем Y и Enter - чтобы сохранить файл и закрыть редактор)
Теперь запускаем squid:
squid3 -z
squid3 -k reconfigure
Для проверки прописываем наш прокси у себя в проводнике (ip + port 3128) и пробуем работу интернет.
3. Установка и настройка SAMS
Воспользуемся готовыми deb пакетами под Debian.
cd /usr/src/
wget http://www.nixdev.net/release/sams/packages/xUbuntu_9.10/i386/sams_1.0.5_i386.deb
wget http://www.nixdev.net/release/sams/packages/xUbuntu_9.10/all/sams-doc_1.0.5_all.deb
wget http://www.nixdev.net/release/sams/packages/xUbuntu_9.10/all/sams-web_1.0.5_all.deb
dpkg -i sams_1.0.5_i386.deb
dpkg -i sams-doc_1.0.5_all.deb
dpkg -i sams-web_1.0.5_all.deb
Для х64 серверов для скачки использовать те же ссылки, но поменять в первой i386 на x64.
nano /etc/init.d/sams
— меняем SAMS_ENABLE=false на true
4. Создание и настройка баз данных MySQL:
mysql -u root -p
- заходим в mysql администратором
GRANT ALL ON squidctrl.* TO sams@localhost IDENTIFIED BY "ПАРОЛЬ";
GRANT ALL ON squidlog.* TO sams@localhost IDENTIFIED BY "ПАРОЛЬ";
- вместо ПАРОЛЬ ввести собственный пароль для нового пользователя sams.
(\q — выходим из MySQL.)
nano /etc/sams.conf
— вписываем наш пароль в поле MYSQLPASSWORD=
cd /usr/share/sams/mysql/
В этой папке находятся скрипты для создания баз дынных. Но для начала их нужно подредактировать. Для этого в sams_db_sql и в squid_db_sql найдем все строчки TYPE=MyISAM и меняем их на ENGINE=MyISAM
Теперь выполняем скрипты:
./create_sams_db
./create_squid_db
5. Настройка PHP:
nano /etc/php5/apache2/php.ini
— включаем safe mod (safe_mode = On).
safe_mode_exec_dir = "/usr/share/sams/bin"
— нужно для выполнения системных команд sams.
6. Донастройка SAMS:
Для правильной работы SAMS, нужно подкорректировать два файла.
nano /usr/share/sams/src/webconfigtray.php
- закомментируем функцию:
/* function GetHostName()
{
if (!($value=getenv('SERVER_NAME')))
{ $value="N.A."; }
return($value);
}
*/
И тоже самое нужно выполнить в:
nano /usr/share/sams/src/configtray.php
Теперь перезагружаем сервер и пробуем зайти http://ip/sams
Логин admin пароль qwerty
Далее переходим к настройке SAMS из панели управления.
Важно!
Часто возникают ошибки в /var/log/syslog:
Reconfigure & restart SQUID... Error
при реконфигурации squid из sams.
Так как squid у нас уже squid3, а проект sams закрылся не успев поменять исходники samsdaemon. Создаем симлинк на новое имя squid.
sudo ln -s /usr/sbin/squid3 /usr/sbin/squid
Теперь реконфигурация squid из sams будет проходить успешно.
Материал набран в том числе отсюда