Меню Рубрики

Установка web интерфейса на freebsd

Media UniX

freebsd команды, настройка, установка сервера и не только

Webmin — веб-интерфейс для администрирования FreeBSD

Webmin представляет из себя веб-интерфейс для администрирования unix-систем, включая и FreeBSD. Через любой современный браузер можно настроить локальные учётные записи, группы, расписание заданий cron, nfs, cсетевые интерфейсы, samba-сервер, сервер DNS BIND, принтеры, системное время и многое другое.
Используем как всегда любимую ОС FreeBSD.

Сначала обновляем порты
и устанавливаем webmin из портов:
cd /usr/ports/sysutils/webmin
make install clean

установилось:
@comment Insert PLIST.lib-webmin here

After installing Webmin for the first time you should perform the following
steps as root:

* Configure Webmin by running /usr/local/lib/webmin/setup.sh

* Add webmin_enable=»YES» to your /etc/rc.conf

* Start Webmin for the first time by running /usr/local/etc/rc.d/webmin start

The parameters requested by setup.sh may then be changed from within Webmin
itself.

=== Installing rc.d startup script(s)
=== Registering installation for webmin-1.540
=== Cleaning for p5-Net-SSLeay-1.36
=== Cleaning for p5-Authen-PAM-0.16_1
=== Cleaning for webmin-1.540

собственно делаем всё по инструкции, которая отображена после инсталяции, а именно запускаем скрипт setup.sh:
/usr/local/lib/webmin/setup.sh

и отвечаем на вопросы:
***********************************************************************
* Welcome to the Webmin setup script, version 1.540 *
***********************************************************************
Webmin is a web-based interface that allows Unix-like operating
systems and common Unix services to be easily administered.

Installing Webmin in /usr/local/lib/webmin …

***********************************************************************
Webmin uses separate directories for configuration files and log files.
Unless you want to run multiple versions of Webmin at the same time
you can just accept the defaults.

Log file directory [/var/log/webmin]: здесь указываем где хранить логи или если устраивает /var/log/webmin, то просто жмём enter

***********************************************************************
Webmin is written entirely in Perl. Please enter the full path to the
Perl 5 interpreter on your system.

Full path to perl (default /usr/bin/perl): пишем путь до перла, я его ставил из портов когда то, поэтому путь здесь указан правильно

Testing Perl …
Perl seems to be installed ok

***********************************************************************
Webmin uses its own password protected web server to provide access
to the administration programs. The setup script needs to know :
— What port to run the web server on. There must not be another
web server already using this port.
— The login name required to access the web server.
— The password required to access the web server.
— If the webserver should use SSL (if your system supports it).
— Whether to start webmin at boot time.

Web server port (default 10000): указываем номер порта для веб-интерфейса
Login name (default admin): логин для администрирования через веб-интерфейс(по умолчанию admin)
Login password: пароль для вышеуказанного логина
Password again: повторяем пароль ещё раз
Use SSL (y/n): n решаем использовать ли ssl. У меня webmin только внутри сети, секьюрность особая не нужна, поэтому я отказался, поставив символ «n»
***********************************************************************
Creating web server config files..
..done

Читайте также:  Установки для дымоудаления газов

Creating access control file..
..done

Creating start and stop scripts..
..done

Copying config files..
..done

Changing ownership and permissions ..
..done

Running postinstall scripts ..
syslog-ng: not found
..done

Enabling background status collection ..
..done

Далее в /etc/rc.conf добавляем строку:
webmin_enable=»YES»

стартуем webmin:
/usr/local/etc/rc.d/webmin start

теперь можно заходить в своём любимом браузере:
http://ip_сервера:10000/
здесь:
ip_сервера — это ip-адрес, куда только что устанавливали webmin
10000 -номер порта, который указывали при выполнении скрипта /usr/local/lib/webmin/setup.sh

или если на вопрос Use SSL (y/n) вы ответили в отличии от меня положительно, то можно попробовать зайти через
https://ip-сервера:10000/

Примечание:
Не забываем открыть на фаерволе порт 10000 или иной, который вы указывали выше.

Вписываем логин и пароль админа, который указывали при выполнении скрипта /usr/local/lib/webmin/setup.sh

и попадаем на первую страницу:

первым дело сменил язык интерфейса на русский, перейдя в Webmin — change language and theme и в раскрывающемся меню «Personal choice ..» выбираем «Russian UTF-8 (RU.UTF-8)»
Подтверждаем выполненное кнопкой «Make Chandes»

После того как применится, обновим страницу в браузере и увидим результат — русский интерфейс.

Первым делом сделаем «резервное копирование конфигурационных файлов» , расположенное в разделе «webmin»
Выбираем все модули для резервного копирования, выбираем место , куда сохранить созданную резервную копию (я выбрал «загрузить в браузер), ставим галку «Конфигурационные файлы модуля Webmin» и жмём кнопку «запуск резервного копирования».

Дальше начинаем играться с настройками в веб-интерфейсе, всё на русском языке.

Добавить комментарий Отменить ответ

Для отправки комментария вам необходимо авторизоваться.

источник

Настройка web сервера на Freebsd 10

В первой и второй частях мы рассмотрели установку и настройку операционной системы Freebsd 10.1 для разворачивания на ней блога wordpress. Теперь предстоит установить и настроить программное обеспечение, необходимое для нашего web сервера.

Я буду рассматривать самый простой и быстрый вариант настроек, с небольшим отклонением от дефолтных для нашего удобства. По каждому пункту могут возникать вопросы и нюансы, я не буду касаться всего этого в этой статье.

Устанавливаем ftp сервер vsftpd

Начнем нашу настройку с установки ftp сервера vsftpd. Для авторизации мы будем использовать системные учетные записи, анонимный доступ отключим.

Первым делом обновим порты:

После обновления, ставим сервер:

Компоненты оставляем по-умолчанию. Добавляем загрузку vsftpd в /etc/rc.conf:

Редактируем конфиг /usr/local/etc/vsftpd.conf, приводим его к следующему виду:

Проверяем, запустился ли демон:

В ответ должны увидеть что-то похожее:

Это означает, что сервер запустился и слушает входящие соединения на 21 порт. С текущими настройками можно залогиниться учетной записью root и перемещаться по всему серверу. Это очень небезопасно, призываю внимательно относиться к этим возможностям. Рекомендую подробнее ознакомиться с настройками сервера, обратить внимание на директивы userlist_enable, userlist_file, chroot_local_uses, chroot_list_enable, chroot_list_file. С помощью них можно ограничивать доступ к серверу и перемещение пользователей по папкам. Вообще, у vsftpd много настроек и возможностей, в интернете достаточно статей на подобную тему. Можно без проблем хранить базу пользователей сервера в mysql. В завершение порекомендую ограничить доступ к ftp через firewall.

Читайте также:  Установка бетонных полусфер нормативы

Установка и настройка Mysql

Дальше устанавливаем сервер баз данных mysql:

Настройки оставляем дефолтные.

Сервер тянет за собой достаточно большое количество зависимостей. Установка постоянно тормозится и выскакивает окно с настройками очередной зависимости. Чтобы не отвлекаться на это и не тормозить процесс, я рекомендую перед командой make install clean ввести команду:

Она проверит все зависимости и выведет сразу настройки этих зависимостей. Потом в процессе сборки пакета уже не будет прерываний.

После завершения установки добавляем запуск сервера в rc.conf:

Создаем необходимые папки и выставляем права:

Создаем файл конфигурации:

Записываем следующее содержание в файл настроек:

Закомментированные строки включаем на свое усмотрение в процессе отладки. Если будет включен лог всех SQL запросов, то нужно не забыть настроить ротацию логов, файл будет расти очень быстро, можно забыть и пропустить момент, когда файл займет все свободное место.

Лог файлы нужно обязательно создать самим и выставить на них права пользователя mysql. Если этого не сделать, то сервер не будет стартовать, и что самое неприятное, не будет никаких сообщений в лог файлах. Они будут созданы с правами root:wheel и сервер ничего туда не сможет записать. Так что создаем файлы сами:

Проверяем, все ли запустилось как следует:

Если все в порядке, то вы увидите что-то похожее на это:

Дальше воспользуемся стандартным скриптом для безопасной настройки mysql:

Задаем пароль root пользователя mysql. Обращаю внимание, что это не системный root. В mysql свои пользователи. На остальные вопросы отвечаем положительно, в принципе, там все понятно описано, ничего сложного нет. Удаляется тестовая база, тестовый пользователь, запрещается удаленный доступ к серверу.

На этом настройка mysql окончена. Идем дальше.

Устанавливаем и настраиваем apache24

Устанавливаем непосредственно web сервер apache:

Оставляем все настройки по-умолчанию. Запускаем установку:

Добавляем apache в атозагрузку:

Теперь создадим 2 виртуальных хоста. На первом будет располагаться phpmyadmin, на втором наш сайт, в данном случае wordpress. Не забываем настроить в DNS эти хосты. Раскомментируем строчку в конфиге /usr/local/etc/apache24/httpd.conf

Дальше идем в папку /usr/local/etc/apache24/extra/ и редактируем файл httpd-vhosts.conf до следующего вида:

Я использую тестовый домен websrv.local В общем случае тут должен быть непосредственно домен вашего сайта, что-то вроде myblog.ru. Для phpmyadmin я использую поддомен с произвольным непопулярным именем, чтобы туда не заходил тот, кому не следует.

Обращаю внимание на параметр Require all granted. На предыдущих серверах я его не указывал. В этот же раз при обращении к виртуальному домену в логах получал ошибку:

Скорее всего это особенность apache24, до этого я пользовался более ранними версиями.

Сайты я размещаю в каталоге /web/sites. Для каждого домена отдельная папка. Для улучшения безопасности можно настроить отдельных пользователей для каждого поддомена, сделать пользователя ftp, доступ к логам и так далее. В этой статье я не буду касаться этого вопроса. У нас будет один сайт и один пользователь. Создаем необходимые папки:

Читайте также:  Установка редуктора воды типичные ошибки

На этом пока настройку apache закончим, мы к ней вернемся позже, когда установим остальные компоненты. Запускать его не будем, он все равно не запустится, выдаст ошибку.

Устанавливаем php и phpextensions

Дальше устанавливаем php, настройки оставляем настройки по-умолчанию:

После установки создаем файл конфигурации:

Помимо настроек по-умолчанию, обязательно добавляем CURL, DOM, POSIX, FTP, GD, HASH, ICONV, XML, JSON, MBSTRING, MYSQL, MYSQLI, OPENSSL, SOCKETS, TOKENIZER, XMLREADER, ZLIB, EXIF, GETTEXT,

Теперь поставим модуль php для apache. Он теперь стал почему-то отдельным портом. Я не сразу первый раз сообразил, куда делся модуль, который всегда ставился вместе с портом php. В общем, ставим отдельно:

Для того, чтобы apache правильно обрабатывал php файлы, необходимо в конфиг httpd.conf добавить следующие строки:

Теперь можно запустить apache и проверить, все ли у нас в порядке. Сначала проверим, нет ли у нас ошибок в конфигурации:

У нас ошибка, модуль mod_rewrite не подключен. Чтобы это исправить, раскомментируем в конфиге апача строку

Снова ошибка, но не критичная, можно работать и с ней, но мы все равно ее исправим. В фале httpd.conf находим строку со значением ServerName и приводим ее к виду:

Сохраняем файл, проверяем конфигурацию:

Все в порядке, можно стартовать apache:

Проверяем, все ли запустилось:

Если получаете что-то подобное, значит все в порядке. Сейчас можно в браузере набрать http://ip-сервера/ и увидеть страничку с одной единственной надписью:

Это означает, что веб сервер apache работает, все в порядке.

Настройка frontend сервера nginx

Теперь будем настраивать наш frontend — nginx. Он будет смотреть в интернет и принимать запросы от пользователей, чтобы потом их перенаправлять на apache. Идем в порты и устанавливаем nginx:

Добавим nginx в автозагрузку:

Редактируем конфиг nginx /usr/local/etc/nginx/nginx.conf, приводим его к следующему виду:

Указываем свой внешний ip адрес. Проверяем настройки nginx:

Теперь необходимо изменить конфигурацию apache, чтобы он слушал только локальный интерфейс 127.0.0.1, а все внешние запросы принимал nginx и перенаправлял к apache. Меняем в /usr/local/etc/apache24/httpd.conf строку с параметром Listen, приводим к виду:

Наш веб сервер готов. Теперь проверим его работу. Создадим в папке /web/sites/websrv.local/www файл index.php с содержимым

Заходим в браузере по адресу http://websrb.local

Если вы видите информацию о версии php и его модулях, значит все настроено и работает.

Установка phpmyadmin на виртуальный хост

Остался последний шаг в нашем деле — установка phpmyadmin. В принципе, wordpress можно установить уже сейчас, но без удобного средства работы с mysql как-то неловко. В будущем оно все равно пригодится. Так что ставим из портов:

По-умолчанию, phpmyadmin устанавливается в папку /usr/local/www/phpMyAdmin, но так как мы для него создали отдельный виртуальный хост, то переносим все содержимое папки туда:

источник

Добавить комментарий

Adblock
detector