В стандартных пакетах pfsense нет ни MySQL, ни полноценного Apache. PHP присутствует в системе по умолчанию, являясь основным языком сценариев, но отсутствуют нужные модули mysql.so и присутствуют свои pfsense.so, ssh2.so и т.д.
В отличие от FreeBSD, убраны многие стартовые скрипты и файлы конфигурации (rc.conf, rc.local), вместо них используются свои механизмы, написанные на PHP.
Pfsense представляет некую пхпэшную обертку наподобие перлового вебмина. К радости присутствует система пакеджей pkg, с помощью которой я поставлю необходимое ПО и опишу несколько фокусов, которые помогут хостить сайты на системе первоначально предназначенной быть интернет шлюзом.
Ставил все на голую систему — в любом случае не забываем делать бекап.
После установки и первоначальной настройки необходимо освободить 80 порт от lighthttp.
System — Advanced — webConfigurator — TCP port = 88
Вся остальная работа будет в консоли, которую включаем:
System — Advanced — Secure Shell — Enable Secure Shell
PHP желательно устанавливать именно версии 55 т. к. в системе именно она, иначе могут быть проблемы с модулями.
В системе нет rc.conf поэтому службы не стартуют.
Трюк первый: добавляем записи в /etc/defaults/rc.conf:
Система при каждой загрузке чистит каталог /tmp.
Трюк два: сокет мускула кладем в /var/tmp/mysql.sock.
Редактируем (создаем) файл /usr/local/etc/my.cnf:
Php.ini генерится каждый раз заново скриптом при запуске системы.
Трюк три: редактируем /etc/rc.php_ini_setup:
Перед ; Extensions:
После ; Extensions вставляем:
Чтобы не выскакивали ворсинки меняем on на Off:
Каталог /usr/local/etc/rc.d не является стартовым. Чтобы службы запускались автоматом, создаем два файла /etc/rc.local и /etc/rc.local.running.
Трюк четыре: редактируем /etc/rc.local:
Перегружаемся и настраиваем виртуал хосты Apache по вкусу, на один из них я поставил Bitrix для последующей организации складского учета.
При установке битрикса в качестве сервера мускула указываем не localhost, а 127.0.0.1.
В отличие от FreeBSD, убраны многие стартовые скрипты и файлы конфигурации (rc.conf, rc.local), вместо них используются свои механизмы, написанные на PHP.
Pfsense представляет некую пхпэшную обертку наподобие перлового вебмина. К радости присутствует система пакеджей pkg, с помощью которой я поставлю необходимое ПО и опишу несколько фокусов, которые помогут хостить сайты на системе первоначально предназначенной быть интернет шлюзом.
Ставил все на голую систему — в любом случае не забываем делать бекап.
После установки и первоначальной настройки необходимо освободить 80 порт от lighthttp.
System — Advanced — webConfigurator — TCP port = 88
Вся остальная работа будет в консоли, которую включаем:
System — Advanced — Secure Shell — Enable Secure Shell
pkg install apache24 mysql56-server mod_php55 php55-mysql php55-mysqli
PHP желательно устанавливать именно версии 55 т. к. в системе именно она, иначе могут быть проблемы с модулями.
В системе нет rc.conf поэтому службы не стартуют.
Трюк первый: добавляем записи в /etc/defaults/rc.conf:
apache24_enable="YES"
mysql_enable="YES"
Система при каждой загрузке чистит каталог /tmp.
Трюк два: сокет мускула кладем в /var/tmp/mysql.sock.
Редактируем (создаем) файл /usr/local/etc/my.cnf:
[client]
port = 3306
socket = /var/tmp/mysql.sock
[mysqld]
port = 3306
socket = /var/tmp/mysql.sock
skip-external-locking
key_buffer_size = 16M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
init-connect='SET NAMES utf8'
collation_server = utf8_unicode_ci
character_set_server = utf8
character_set_client = utf8
character_set_filesystem = utf8
log-bin=mysql-bin
binlog_format=mixed
server-id = 1
[mysqldump]
quick
max_allowed_packet = 16M
[mysql]
no-auto-rehash
[client]
default-character-set = utf8
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M
[mysqlhotcopy]
interactive-timeout
Php.ini генерится каждый раз заново скриптом при запуске системы.
Трюк три: редактируем /etc/rc.php_ini_setup:
Перед ; Extensions:
[mbstring]
mbstring.internal_encoding = UTF-8
mbstring.func_overload = 2
После ; Extensions вставляем:
extension=mysql.so
extension=mysqli.so
Чтобы не выскакивали ворсинки меняем on на Off:
display_startup_errors=Off
display_errors=Off
Каталог /usr/local/etc/rc.d не является стартовым. Чтобы службы запускались автоматом, создаем два файла /etc/rc.local и /etc/rc.local.running.
Трюк четыре: редактируем /etc/rc.local:
/usr/sbin/service mysql-server start
/usr/sbin/service apache24 start
Перегружаемся и настраиваем виртуал хосты Apache по вкусу, на один из них я поставил Bitrix для последующей организации складского учета.
При установке битрикса в качестве сервера мускула указываем не localhost, а 127.0.0.1.
dvserg
Традиционный вопрос. Зачем в систему, заточенную под роутер, ставить апач и битрикс?
Неужели нет других вариантов (ubuntu & etc)?
axilirator
Цитата из Википедии:
У каждого дистрибутива есть свое конкретное предназначение и конкретная аудитория. Если речь идет об opensource-решениях, нацеленных на встраиваемые системы, так это как раз openWRT и DD-WRT.
dvserg
Я к тому, что ядро системы заточено на конкретную задачу — обработку сетевых пакетов. И есть большая вероятность, что производительность системы при работе серверных служб битрикса будет неудовлетворительной.
axilirator
С этим согласен.
allseen Автор
Ответ — кризис. Цены выросли в два раза. SOHO выживает.
Поступило конкретное предложение об организации ИТ инфраструктуры (локалка, телефония, склад), техника только бу. На бу ПК в качестве сервера можно поставить все что угодно — хоть виндоус, но цена вопроса. Либо бесплатный unix из исходников. Но это SOHO админить будет собственными силами. Поэтому нужно (почти) готовое решение, типа pfsense.
По поводу убунту — как вариант Zentyal, который имеет в том числе и вебсервер. Не буду открывать холивар и приводить другие готовые решения kerio, Vyatta и т. д., но это все комерческие продукты и в плане цены pfsensy не конкуренты. И беда заключается в том что у pfsense есть почти все для организации офисной ИТ инфраструктуры, телефония, прокся, snort и более того есть возможность организации вебсервера, но на базе lighttp с урезанными возможностями без mysql. Попробовал поставить FAMP (LAMP) и столкнулся с проблемами, которые решаемы — может кому-то поможет.
dvserg
Тогда может быть имеет смысл управление сервисами встроить в сам pfSense вместо rc.conf?
Сделать Start/stop скрипт и добавить его в конфиг /cf/config.xml (вроде так).
Из плюсов — управление из вебморды.
Хотя запуск апача может быть лучше сделать по аналогии с Lighhtpd (код запуска есть в PHP скриптах).
allseen Автор
Смысл есть. Более того возможно создание нативного пакета lamp для pfsense. Нужно только созреть.