Настройка Squid и SAMS в среде FreeBSD

Документация связанная с установкой, настройкой и работой пользовательского ПО
Post Reply
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Настройка Squid и SAMS в среде FreeBSD

Post by Raven » 31 May 2010, 11:58

Специально по просьбе zaka

Ставим squid

Code: Select all

  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
Далее

Code: Select all

  make install clean
Добавляем следующие опции в /usr/local/etc/squid/squid.conf
Ниже фрагмент файла squid.conf с добавленными или измененными параметрами.
Первые пять строк включают аутентификацию. Проверьте правильность путей к файлам.
  • Опция http_port 8080 меняет порт, на котором работает squid
    Опция forwarded_for off отключает ip адрес клиента (анонимность нам не повредит).
    Опциями acl squidusers proxy_auth REQUIRED и http_access allow squidusers мы разрешаем аутентифицированным пользователям доступ в интернет.

Code: Select all

  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 8080

  forwarded_for off

  acl squidusers proxy_auth REQUIRED

  http_access allow squidusers
Создадим пользователя для проверки работы squid

Code: Select all

/usr/local/bin/htpasswd /usr/local/etc/squid/ncsa.sams testuser
Вводим пароль для testuser Добавим в /ets/rc.conf строку

Code: Select all

  squid_enable=”YES”
Создадим кеш прокси сервера командой

Code: Select all

  squid –z
Запустим squid командой

Code: Select all

  /usr/local/etc/rc.d/squid start
Посмотрим процессы

Code: Select all

  ps axw | grep squid

  5925 ?? Is 0:00,00 /usr/local/sbin/squid -D
  5927 ?? S 0:01,05 (squid) -D (squid)
  5928 ?? Is 0:00,01 (ncsa_auth) /usr/local/etc/squid/ncsa.sams (ncsa_auth)
  5929 ?? Is 0:00,01 (ncsa_auth) /usr/local/etc/squid/ncsa.sams (ncsa_auth)
  5930 ?? Is 0:00,01 (ncsa_auth) /usr/local/etc/squid/ncsa.sams (ncsa_auth)
  5931 ?? Is 0:00,01 (ncsa_auth) /usr/local/etc/squid/ncsa.sams (ncsa_auth)
  5932 ?? Is 0:00,01 (ncsa_auth) /usr/local/etc/squid/ncsa.sams (ncsa_auth)
Установка MySQL5

Code: Select all

  cd /usr/ports/databases/mysql50-server
  make install clean
Добавим в /etc/rc.conf строку

Code: Select all

  mysql_enable=”YES”
Запустим mysql командой

Code: Select all

  /usr/local/etc/rc.d/mysql-server start
Посмотрим запустился ли mysql, командой

Code: Select all

  ps axw | grep mysql

  6210 p0 RV 0:00,00 grep mysql (csh)
  6188 p1- S 0:00,02 /bin/sh /usr/local/bin/mysqld_safe --defaults-extra-file=/var/db/mysql/my.cnf --user=mysql --datadir=/var
  6206 p1- S 0:00,94 /usr/local/libexec/mysqld --defaults-extra-file=/var/db/mysql/my.cnf --basedir=/usr/local --datadir=/var/
После установки меняем пароль админа командой

Code: Select all

  /usr/local/bin/mysqladmin -u root password 'new_password'
  /usr/local/bin/mysqladmin -u root -h hostname password 'new_password'
Подключаемся локально

Code: Select all

 mysql -u root -p
Добавим пользователя monty (полные права на все базы со всех хостов сети)

Code: Select all

 use mysql
  GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY 'password' WITH GRANT OPTION;
  GRANT ALL PRIVILEGES ON *.* TO monty@"%" IDENTIFIED BY 'password' WITH GRANT OPTION;
Ставим PHP5

Code: Select all

  cd /usr/ports/lang/php5
  make config
Выбираем опции

Code: Select all

 X CLI
  X CGI
  X APACHE
  X SUHOSIN
  X FASTCGI
  X PATHINFO

Code: Select all

 make install clean
Чтобы активировать модули apache даем команду

Code: Select all

  apachectl graceful
Правим файл /usr/local/etc/apache22/httpd.conf

В группе загрузки модулей дописываем загрузчик модуля php.

Code: Select all

  LoadModule php5_module libexec/apache2/libphp5.so
и в конце файла добавляем:

Code: Select all

  AddType application/x-httpd-php .php
  AddType application/x-httpd-php-source .phps
Еще проверим httpd.conf, в списке модулей должны быть строки.

В корень вебсервера кладем файл /usr/local/www/data/index.php содержащий

Code: Select all

  <?
    phpinfo();
  ?>
Перезапускаем вебсервер командой apachectl restart

Проверяем работоспособность php http://127.0.0.1/index.php

Ставим PHP5_EXTENSIONS из портов (/usr/ports/lang/php5-extensions)

Code: Select all

make config
Выбираем опции
  • 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

Code: Select all

  make install clean
Я не злопамятный, я просто часто ковыряю логи
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Настройка Squid и SAMS в среде FreeBSD

Post by Raven » 31 May 2010, 12:46

Чтобы активировать модули apache даем команду

Code: Select all

  apachectl graceful
В файл /usr/local/etc/apache/httpd.conf добавить директиву ExecCGI
Это разрешит загрузку файлов на сервер через web интерфейс
Ниже фрагмент httpd.conf

Code: Select all

  <Directory />
  Options FollowSymLinks ExecCGI
  AllowOverride None
  </Directory>
Настраиваем php

Code: Select all

  cp /usr/local/etc/php.ini-recommended /usr/local/etc/php.ini
Настриваем php для работы в режиме safe mode, изменим /usr/local/etc/php.ini включаем режим safe mode. Для этого выставляем параметр safe_mode = On
Ниже фрагмент php.ini

Code: Select all

safe_mode = On
safe_mode_exec_dir = "/usr/local/share/sams/bin" 
Ставим SAMS
В связи с проблемой 2010г. предпочтителнее скачать самсу с официального сайта, релизом не ниже 1.0.5 (далее мы будем использовать на свой страх и риск бета-версию 2.0). Итак, качаем по ссылке

Дополнительная информация:
Если у вас возникли проблемы с кодировкой веб интерфейса,
надо в конфиге апача задать параметр

Code: Select all

AddDefaultCharset Off 
В файле php.ini (в директории /etc и директории http сервера) раскомментируйте вызов библиотеки поддержки mysql:

Code: Select all

extensions=mysql.so
Реконфигурированием прокси-сервера squid занимается демон samsdaemon.
Реконфигурирование прокси-сервера squid происходит путем изменения файла squid.conf и подачей сигнала squid на реконфигурацию.

При внесении изменений в squid.conf samsdaemon привязывается к тэгам начала разделов, например
# TAG: acl
Наличие этих тэгов необходимо!!!
Кроме того, sams добавляет только те настройки, которые необходимы для работы пользователей, зарегистрированных в SAMS.
acl типа acl all src 0.0.0.0/0.0.0.0 и прочие не вносятся и не удаляются.
Если вы создали какие-то свои настройки для sams в squid.conf, чтобы они не уничтожались при реконфигурировании, поставьте после ваших правил знак комментария # (решетка). samsdaemon не удаляет строки где есть знак #.

Продолжение будет!
Я не злопамятный, я просто часто ковыряю логи
User avatar
zaka
Эникейщик
Эникейщик
Posts: 461
Joined: 19 May 2010, 08:52

Re: Настройка Squid и SAMS в среде FreeBSD

Post by zaka » 28 Dec 2010, 17:28

Я распечатал и зашил в моих man'x
низкий поклон *HALLO*
Помни прошлое, живи настоящим и думай о будущем.
Image
User avatar
Raven
Бородатый сис
Бородатый сис
Posts: 2791
Joined: 03 Mar 2010, 15:12
ОС: RHEL 8
Location: Из серверной

Re: Настройка Squid и SAMS в среде FreeBSD

Post by Raven » 28 Dec 2010, 17:57

Да, но я не успел дописать - все времени нет. Статья там большая
Я не злопамятный, я просто часто ковыряю логи
User avatar
zaka
Эникейщик
Эникейщик
Posts: 461
Joined: 19 May 2010, 08:52

Re: Настройка Squid и SAMS в среде FreeBSD

Post by zaka » 29 Dec 2010, 13:23

Raven wrote:Да, но я не успел дописать - все времени нет. Статья там большая
да я понял жду продолжении *DANCE* и потихоньку фрюху начинаем копать %)
Помни прошлое, живи настоящим и думай о будущем.
Image
Moriarti
Юзер
Юзер
Posts: 6
Joined: 07 Apr 2011, 15:23

Re: Настройка Squid и SAMS в среде FreeBSD

Post by Moriarti » 14 Apr 2011, 13:11

ждем продолжения *BRAVO*
User avatar
zaka
Эникейщик
Эникейщик
Posts: 461
Joined: 19 May 2010, 08:52

Re: Настройка Squid и SAMS в среде FreeBSD

Post by zaka » 14 Apr 2011, 15:05

Moriarti wrote:ждем продолжения *BRAVO*
да да ждемс
Помни прошлое, живи настоящим и думай о будущем.
Image
Post Reply

Return to “Документация *nix”