Сьогодні ми встановимо та налаштуємо проксі-сервер SQUID з версією SAMS 1,5 для управління проксі-сервером на Debian Wheezy. Цей посібник є одним з статей. Інструкції щодо встановлення та налаштування Інтернет-сервера.
SAMS Система управління доступом користувачів через проксі-сервер на Інтернет-ресурси. Для використання в приватних компаніях і державних органах є ідеальним для використання в приватних фірмах. Усі роботи з проксування, перенаправлення запитів, кешування та авторизації приймаються за допомогою проксі-сервера Squid і SAMS займається обліком трафіку та управління користувачем.
Squid Програмний пакет, який реалізує функцію кешування проксі-сервера для HTTP, FTP, Gopher та (при відповідних) протоколів HTTPS. Розвинена громада як відкрита програма джерела (розписана під GNU GPL).
Передплатний сервер, який ми налаштовуємо відповідно до інструкцій: Встановлення та налаштування хостингової панелі ISPConfig 3 в Debian
Після налаштування сервера за вищезазначеними інструкціями ми приступаємо до установки squid proxy server, а також налаштуємо веб-інтерфейс SAMS для управління проксі-сервером SQUID, а також ми встановимо редиректора для блокування доступу до сайтів.
Додайте репозиторію від Debian Squeeze, щоб встановити залежності при установці веб-інтерфейсу SAMS за наступним командуванням:
echo 'deb http://mirror.yandex.ru/debian squeeze main contrib non-free' >> /etc/apt/sources.list
Оновити репозиторію, виконавши команду:
aptitude update
Конфігурація редакторів файлів:
vi Для читання інструкцій необхідно ознайомитися з інструкціями. Для того, щоб прийняти експрес-курс, запустити команду вімутора і пройти основні команди для легкого використання програми.
mcedit - простіше працювати для початківців ліноїдних, ви можете змінити vi навігація mcedit і редагувати файли конфігурації. Після відкриття файлу в редакторі mcedit Натисніть F7 з'явиться вікно пошуку, введіть його, що потрібно знайти, натиснувши кнопку Enter. Якщо ми знайдемо неправильне, повторюємо пошук знову і так далі, поки не знайдемо праву лінію. Після того, як ви зробили необхідні зміни і хочете зберегти файл, натисніть кнопку. F2 І ми приймаємо зміни. Після збереження збереженого файлу натисніть кнопку F10
Встановити проксі-сервер SQUID за допомогою виконання команди:
aptitude install squid
Ми робимо резервну копію конфігурацій, яку ми змінимо, виконавши команду:
cp /etc/squid/squid.conf /etc/squid/squid.conf_backup
Відкрийте зручний редактор для вас (vi, mcedit, nano) конфігурація-файл /etc/squid/squid.conf
vi /etc/squid/squid.conf
Далі я пишу те, що ми шукаємо і як вона повинна виглядати після зміни (перше виглядає так, щоб інші були такими):
був:
# TAG: visible_hostname # If you want to present a special hostname in error messages, etc, # define this. Otherwise, the return value of gethostname() # will be used. If you have multiple caches in a cluster and # get errors about IP-forwarding you must set them to have individual # names with this setting. # #Default: # none
сталася:
# TAG: visible_hostname # If you want to present a special hostname in error messages, etc, # define this. Otherwise, the return value of gethostname() # will be used. If you have multiple caches in a cluster and # get errors about IP-forwarding you must set them to have individual # names with this setting. # #Default: visible_hostname inetservname
був:
http_port 3128
сталася:
http_port 3128 transparent
ВАЖЛИВО! Якщо ви не працюєте з використанням пароля, прозора авторизація не буде працювати, вам потрібно призначити IP: Портрет вашого проксі-сервера в браузері користувача.
був:
# icp_port 3130
сталася:
icp_port 0
був:
# cache_mem 8 MB
сталася:
cache_mem 256 MB
був:
# maximum_object_size_in_memory 8 KB
сталася:
maximum_object_size_in_memory 512 KB
був:
# maximum_object_size 20480 KB
сталася:
maximum_object_size 120480 KB
був:
# cache_dir ufs /var/spool/squid 100 16 256
сталася:
cache_dir ufs /var/spool/squid 5000 32 256
був:
# cache_swap_low 90 # cache_swap_high 95
сталася:
cache_swap_low 90 cache_swap_high 95
був:
# logfile_rotate 0
сталася:
logfile_rotate 5
був:
acl SSL_ports port 443 # https acl SSL_ports port 563 # snews acl SSL_ports port 873 # rsync acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https acl Safe_ports port 70 # gopher acl Safe_ports port 210 # wais acl Safe_ports port 1025-65535 # unregistered ports acl Safe_ports port 280 # http-mgmt acl Safe_ports port 488 # gss-http acl Safe_ports port 591 # filemaker acl Safe_ports port 777 # multiling http acl Safe_ports port 631 # cups acl Safe_ports port 873 # rsync acl Safe_ports port 901 # SWAT
сталася:
acl SSL_ports port 443 # https #acl SSL_ports port 563 # snews #acl SSL_ports port 873 # rsync acl Safe_ports port 80 # http acl Safe_ports port 21 # ftp acl Safe_ports port 443 # https #acl Safe_ports port 70 # gopher #acl Safe_ports port 210 # wais #acl Safe_ports port 1025-65535 # unregistered ports #acl Safe_ports port 280 # http-mgmt #acl Safe_ports port 488 # gss-http #acl Safe_ports port 591 # filemaker #acl Safe_ports port 777 # multiling http #acl Safe_ports port 631 # cups #acl Safe_ports port 873 # rsync #acl Safe_ports port 901 # SWAT
був:
# TAG: url_rewrite_program # Specify the location of the executable for the URL rewriter. # Since they can perform almost any function there isn't one included. ... #Default: # none
сталася:
# TAG: url_rewrite_program # Specify the location of the executable for the URL rewriter. # Since they can perform almost any function there isn't one included. ... #Default: url_rewrite_program /usr/bin/samsredir
був:
#Default: # url_rewrite_children 5
сталася:
url_rewrite_children 5
був:
#auth_param basic program <uncomment and complete this line> #auth_param basic children 5 #auth_param basic realm Squid proxy-caching web server #auth_param basic credentialsttl 2 hours
сталася:
auth_param basic program /usr/lib/squid/ncsa_auth /etc/squid/ncsa.sams auth_param basic children 5 auth_param basic realm Squid proxy-caching web server auth_param basic credentialsttl 2 hours
!!! Якщо ви використовуєте внутрішній DNS сервер всередині мережі, ви можете розповісти про Squid проксі, щоб використовувати його за допомогою написання:
Для того, щоб використовувати локальний DNS сервер, ми змінимо:
був:
# TAG: dns_nameservers ... #Default: # none
сталася:
# TAG: dns_nameservers ... #Default: dns_nameservers 192.168.1.1
Заощаджуйте зміни і приступайте до установки SAMS.
Встановлення SAMS.
Ми йдемо до каталогу, де ми будемо завантажувати інсталяційні пакети, покласти папку Samsung, перейти до неї і насоси установки пакетів:
mkdir /usr/src/iserver/sams && cd /usr/src/iserver/sams
Ми завантажимо пакети Samsung для нашої архітектури:
Для amd64:
wget http://nixdev.net/release/sams/debian/squeeze/sams_1.0.5_amd64.deb wget http://nixdev.net/release/sams/debian/squeeze/sams-web_1.0.5_all.deb wget http://nixdev.net/release/sams/debian/squeeze/sams-doc_1.0.5_all.deb
Для i386:
wget http://nixdev.net/release/sams/debian/squeeze/sams_1.0.5_i386.deb wget http://nixdev.net/release/sams/debian/squeeze/sams-web_1.0.5_all.deb wget http://nixdev.net/release/sams/debian/squeeze/sams-doc_1.0.5_all.deb
Посилання на резервну копію при недоступності файлів на офіційному сайті:
Для amd64:
wget http://softnastroy.com/downloads/sams/squeeze/sams_1.0.5_amd64.deb wget http://softnastroy.com/downloads/sams/squeeze/sams-doc_1.0.5_all.deb wget http://softnastroy.com/downloads/sams/squeeze/sams-web_1.0.5_all.deb
Для i386:
wget http://softnastroy.com/downloads/sams/squeeze/sams_1.0.5_i386.deb wget http://softnastroy.com/downloads/sams/squeeze/sams-doc_1.0.5_all.deb wget http://softnastroy.com/downloads/sams/squeeze/sams-web_1.0.5_all.deb
Встановіть завантажені пакети:
Для amd64:
dpkg -i sams_1.0.5_amd64.deb
Для i386:
dpkg -i sams_1.0.5_i386.deb
Ми встановимо необхідні залежності для налаштування встановленого веб-інтерфейсу Самса за наступним командуванням:
aptitude install libmysqlclient16 php-fpdf
З'явиться вікно псевдографічного налаштування для пакета SAMS:
SAMS require additional manual configuration
Currently SAMS package not ready to work out of box. Starting of samsdaemon disabled in init.d script.
Please read /usr/share/doc/sams/README.Debain for description of additional configure step.
<Ok>Прес-релізи:
Монтаж SAMS 1.5
Під час встановлення базового сервера ми встановили панель керування хостингом ISPConfig 3. Відкрийте панель ISPConfig 3 і в вкладці Сайти Додати сайт sams.server.locУ полі вибору php мови виберіть php-5.2.17 і зберегти кнопку. Заощаджувати..
Видалення стандартних файлів автоматично створених за допомогою панелі ISPConfig 3: favicon.ico, robots.txt, index.html, .htaccess І тоді я зробив команду.
rm /var/www/sams.server.loc/web/favicon.ico rm /var/www/sams.server.loc/web/robots.txt rm /var/www/sams.server.loc/web/index.html rm /var/www/sams.server.loc/web/.htaccess
Перевірити права створеного сайту sams.server.loc за наступною командою:
Перейдіть в файл. /usr/src/iserver/sams
cd /usr/src/iserver/sams
Створіть папку, в яку ми розпакуємо файли веб-інтерфейсу SAMS:
mkdir /usr/src/iserver/sams/webfiles dpkg --extract sams-web_1.0.5_all.deb webfiles/ dpkg --extract sams-doc_1.0.5_all.deb webfiles/
Ми перераховуємо файли веб-інтерфейсу та документи до створеного ISPConfig 3 панельного сайту за допомогою виконання команд:
mv webfiles/usr/share/sams/* /var/www/sams.server.loc/web/ rm -rf /var/www/sams.server.loc/web/doc mkdir -p /var/www/sams.server.loc/web/doc mv webfiles/usr/share/doc/sams/html/* /var/www/sams.server.loc/web/doc/
Ми перевіряємо ім’я користувача та назву файлової групи сайту, в нашому випадку, користувачу Web3 та групі клієнта1 за наступними командами:
ls -l /var/www/sams.server.loc/
Відповідність системи:
drwxr-xr-x 2 web3 client1 4096 Янв 2 23:38 cgi-bin drwxr-xr-x 2 root root 4096 Янв 2 23:38 log drwx--x--- 2 web3 client1 4096 Янв 2 23:38 private drwxr-xr-x 2 root root 4096 Янв 2 23:38 ssl drwxrwxrwx 2 web3 client1 4096 Янв 2 23:38 tmp drwx--x--- 14 web3 client1 4096 Янв 4 19:52 web drwx--x--- 2 web3 client1 4096 Янв 2 23:38 webdav
Змінення прав на копіювання файлів веб-інтерфейсу SAMS за допомогою команди:
chown -R web3:client1 /var/www/sams.server.loc/web/
Ми також змінюємо права на файл конфігурації. /etc/sams.conf І тоді я зробив команду.
chown -R web3:client1 /etc/sams.conf
Після зміни прав на файл конфігурації /etc/sams.conf Для налаштування панелі ISPConfig 3 потрібно налаштувати панель ISPConfig, щоб інтерфейс SAMS міг прочитати параметри. Для цього потрібно відкрити сайт в панелі, перейти в вкладку Варіанти. Промисловість PHP open_basedirв кінці рядка додайте:
:/etc/sams.conf
Після внесених змін, збережіть зміни натиснувши кнопку Заощаджувати..
Ми робимо резервну копію config php 5.2.17, які ми змінимо:
cp /opt/php-5.2.17/lib/php.ini /opt/php-5.2.17/lib/php.ini_backup
Налаштування PHP
SAMS здатний працювати з PHP safe_mode=On. У Але це вимагає додаткових налаштувань конфігурації. Для цього встановіть файл конфігурації php5. /opt/php-5.2.17/lib/php.ini
vi /opt/php-5.2.17/lib/php.ini
Увімкніть безпечний режим (це необов'язково, наприклад, я не включаю на). Саме тому ми встановлюємо налаштування Safe_mode
safe_mode = On
Але я використовую sams c Safe_mode в Off, що означає, що він повинен бути:
safe_mode = Off
SAMS для деяких функцій інтерфейсу використовує системні команди, наприклад wbinfo. У В режимі. safe_mode php блокує доступ до системних команд. Php дозволяє виконувати команди системи, розташованих в каталозі, вказаному параметром. safe_mode_exec_dir. У Змінено цей параметр:
був:
safe_mode_exec_dir =
сталася:
safe_mode_exec_dir = "/usr/share/sams/bin"
Далі ми допускаємо виконання системних сценаріїв з php коду. Ми шукаємо файл конфігурації та знімаємо заборону на виклик функції phpinfo_exec від нього:
був:
disable_functions =
сталася:
disable_functions = "chdir,dl,ini_get_all,popen,proc_open,passthru,pcntl_exec"
У PHP ми збільшимо розмір та розмір файлу.
був:
post_max_size = 8M
сталася:
post_max_size = 50M
був:
upload_max_filesize = 2M
сталася:
upload_max_filesize = 50M
Всі. PHP готовий йти.
Вам потрібно перезапустити веб-сервер для перечитування параметрів з php.ini:
/etc/init.d/apache2 restart
Створення бази даних користувача та бази MySQL для SAMS:
перейти під хостинг-панель ISPConfig 3 Вступи Сайти секція База даних - Database Users - Add new User і додати
- Client: user
- Database user: _samsuser
- Database password: ZhjKwo9Ci1P
- Repeat Password: ZhjKwo9Ci1P
Заповнити поля для створення бази даних, необхідно заповнити поля на прикладі:
- Сервер: webserver.server.loc
- Site: sams.server.loc
- Тип: MySQL
- Назва БД: _samsbd
- Логін BG: c1_samsuser
- Кодування OBD: UTF-8
- Активно? кицька
Щоб додати базу даних, натисніть кнопку. Заощаджувати.:
Заповнити поля для створення бази даних, необхідно заповнити поля на прикладі:
- Сервер: webserver.server.loc
- Site: mail.server.loc
- Тип: MySQL
- Назва БД: _squidbd
- Логін BG: c1_samsuser
- Кодування OBD: UTF-8
- Активно? кицька
Щоб додати базу даних, натисніть кнопку. Заощаджувати.:
Необхідно змінити бази даних, які будуть залити в бази даних, створених вище:
sed -i 's/DROP DATABASE IF EXISTS `squidctrl`;/#DROP DATABASE IF EXISTS `squidctrl`;/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/CREATE DATABASE `squidctrl`;/#CREATE DATABASE `squidctrl`;/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/USE squidctrl;/#USE squidctrl;/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/ TYPE=MyISAM/ENGINE = MYISAM/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/squidctrl/c1_samsbd/g' /usr/share/sams/mysql/sams_db.sql sed -i 's/DROP DATABASE IF EXISTS squidlog;/#DROP DATABASE IF EXISTS squidlog;/g' /usr/share/sams/mysql/squid_db.sql sed -i 's/CREATE DATABASE squidlog;/#CREATE DATABASE squidlog;/g' /usr/share/sams/mysql/squid_db.sql sed -i 's/USE squidlog;/#USE squidlog;/g' /usr/share/sams/mysql/squid_db.sql sed -i 's/ TYPE=MyISAM/ENGINE = MYISAM/g' /usr/share/sams/mysql/squid_db.sql
Заповнити модифіковані файли баз даних за допомогою команд (виконання)Контакти і змінити пароль на свій розсуд:
mysql -u c1_samsuser -pZhjKwo9Ci1P c1_samsbd < /usr/share/sams/mysql/sams_db.sql mysql -u c1_samsuser -pZhjKwo9Ci1P c1_squidbd < /usr/share/sams/mysql/squid_db.sql
Включіть Самі в файл, скоригуючи файл /etc/init.d/sams:
vi /etc/init.d/sams
був:
SAMS_ENABLE=false
сталася:
SAMS_ENABLE=true
Налаштування файлу конфігурації на адресу /etc/sams.conf Корисно:
vi /etc/sams.conf
був:
... SQUID_DB=squidlog SAMS_DB=squidctrl MYSQLHOSTNAME=localhost MYSQLUSER=sams MYSQLPASSWORD=samspasswd MYSQLVERSION=4.0 ...
сталася:
... SQUID_DB=c1_squidbd SAMS_DB=c1_samsbd MYSQLHOSTNAME=localhost MYSQLUSER=c1_samsuser MYSQLPASSWORD=ZhjKwo9Ci1P MYSQLVERSION=5.5 ...
Далі перевірте, чи працює кальмар і якщо команда виводить число означає, що він працює:
pidof squid
відповідь системи:
8534
Після цього припиніть проксі-сервер, виконавши команду:
/etc/init.d/squid stop
відповідь системи:
* Stopping Squid HTTP proxy squid [ OK ]
Тепер ми відтворимо кеш-сервера проксі з командою:
squid -z
відповідь системи:
2009/02/16 15:55:20| Creating Swap Directories
На цьому етапі закінчуються налаштування кальмарів, тепер ми запускаємо проксі-сервер з командою:
/etc/init.d/squid start
Для того, щоб перейти до панелі керування SAMS необхідно ввести адресу sams.server.loc/ в браузері, якщо ви не налаштовуєте DNS на цьому сервері (доданий запис на IP сервер і ім'я sams to DNS A), то вам потрібно зареєструватися в hosts запис файлу (файл у Windows) c:\Windows\System32\drivers\etc\hosts):
192.168.1.1 sams.server.loc
де 192.168.1.1 є IP-адресою сервера
Відкрийте веб-сайт в браузері:
http://sams.server.loc/
Вхід адміністратора:
Логін: admin
Пароль: qwerty
Вхід за аудитором:
Логін: auditor
Пароль: audit
Я дуже радимо змінити пароль відразу, і написати його в блокнот.
Знімки екрана налаштування SAMS через веб-інтерфейс:
Введіть логін та пароль у відповідних полях і натисніть кнопку OK:
Ми бачимо першу сторінку інтерфейсу веб-сторінок SAMS:
Натисніть на посилання WEB interface settings і відкрити налаштування веб-інтерфейсу, натиснувши на кнопку:
У вікні, яка відкриває, змінює мову інтерфейсу в списку випадаючого та зберігає зміни:
Відкрийте посилання. Адміністрування SAMS і натисніть на кнопку, щоб відкрити налаштування адміністрування SAMS:
У вікні відкриваються зміни налаштувань за наступним чином:
- Кількість трафіку: Повний (відновлення проксі-сервера + готівку)
- NCSA: кицька
- Перевірити команду для переадресації squid кожен раз: 5 хв
- Обробка SQUID колод: кицька
- Запустіть обробник колоди в хвилину
- процес за допомогою: 5 хвилин.
- Включає обмеження швидкості користувача (delaypool): кицька
- Зберігайте дані про трафік в базі даних для останнього: 6 місяців
Щоб зберегти зміни в налаштуваннях SAMS, натисніть кнопку Збережіть зміни
Обов'язково змінити налаштування шаблону Default:
У вікні відкриваються зміни налаштувань за наступним чином:
- За замовчуванням трафік користувача (Mb): 0
- Метод авторизації користувачів: NCSA
Щоб зберегти зміни в налаштуваннях SAMS, натисніть кнопку Збережіть зміни
Додати користувача, натиснувши на посилання Користувачі і натисніть кнопку користувачеві додати іконку внизу сторінки, в вікні, яка відкривається, заповнивши нові дані користувача, наприклад нижче:
- Користувач: admin
- IP-адреса/маска: 192.168.1.50/255.255.255.0
- Ім'я Administrator
- Група: Administrators
- Користувач активно працює: кицька
- Шаблон: Default
Щоб додати користувача, натисніть кнопку Додати користувача:
Заощаджуйте зміни, внесені до веб-інтерфейсу SAMS, натиснувши на посилання SQUID, натиснути іконку SQUID reconfiguration натиснути кнопку. Реконфігурація
!! Проблемы
Якщо SAMS не обмежує трафік.
Давайте робимо команду.
sams -d
Якщо є проблема, видає помилку, у мене була проблема з базою даних squid_db, видалені вміст бази даних, перевозяться на прикладі вище і без проблем. Зараз SAMS підраховує трафік.
Керівництво по установці проксі-сервера Squid з веб-інтерфейсом SAMS в Debian Wheezy завершено.
Я був з вами. Сергій Лазаренко.
Давайте зробіть коротку ламку і подивимося відео, як відкрити канву своїми руками без будь-яких імпровізованих засобів:

























Про нас