Поднять сервер на виртуальной машине
Поднятие полноценного сервера на виртуальной машине
Ставить кучу пакетов на свой linux mint, мне не очень хотелось, но вот нужно было поднять apache, php и mysql и любой желающий из всемирной паутины должен иметь возможность увидеть его. Лучшим выходом из ситуации я посчитал установку ubuntu-server на virtualbox.
Инструкции, которые описаны в статье подойдут для любой ОС (windows, linux, mac) на которой можно запустить VirtualBox или VMware. Однако в данном конкретном примере, рассмотрена установка на virtilbox, но отличие от VMware будет только в пробросе портов и настройке общих папок.
Выбор ubuntu-server был совершен совершенно случайно. Мне не требовался навороченный сервер. а нужна лишь возможность протестировать сайты. Если установить любой другой linux, то инструкции будут абсолютно теме же.
Для начала устанавливаем VirtualBox. И попутно скачиваем ОС для нашего сервера. Ubuntu-server можно взять здесь.
Особо не имеет значения, какие именно параметры выберете при установке. Доставить необходимые пакеты будет не трудно.
После завершения установки (хотя можно было это сделать и сразу), открываем Устройства > Сетевые адаптеры. Убеждаемся, что стоит NAT и нажимаем кнопку Проброс портов. В IP хоста пишем ваш внешний ip адрес и порт отличный от 80. А в Порт гостя пишем 80. Если вы хотите, что бы весь интернет смог подключиться к вашему виртуальному серверу, то оставьте IP гостя пустым.
Разумеется, что у вас должен быть внешний белый ip, в обратном случае проще поставить Сетевой мост за место NAT и тогда вашу виртаулку будет автоматически видно всем из сети. Но тогда на виртуалке не будет интернета. В качестве компрамиса можно в начале произвести все настройки на NAT, а потом поставить мост. Что бы узнать IP виртуальной машины, то наберите в ней
Перед первой перезагрузкой было бы неплохо русифицировать консоль. Для этого выполняем команду:
Во время установки вопросы будут «квадратиками»… первый из них о способе переключения раскладки, а на второй… да х его з. Просто жмём энтер.
Для того, что бы увидеть русские буквы выполняем команду:
Для удобства её удобно поместить в автозагрузку:
Выше строчки exit 0.
Перезагружаем виртуальную систему (sudo reboot) и введя ваш вешний ip адрес и соответствующий порт (или просто ip если ставили сетевой мост) вы должны попасть на стандартную страницу apache: «It working!».
Если этого не произошло, то проверьте статус апача
Если апач запущен, но интернет не видит ваш сайт, то проверьте правильно ли настроен апач. Например командой:
Если файл скачается, значит неправильно настроили проброс портов.
Если при проверке статуса апача напишет, что команда не найдена, то нужно установить его… а если нет апача, то скорее всего и остальных важных пакетов для поднятия сервера. Установим их.
Эти 3 пакета потянут за собой кучу других важных пакетов и в итоге получится полноценный сервер.
Если вы будете устанавливать CMS с rewrite модом, то необходимо активировать его в апаче. Иначе будут работать только стандартные ссылки вида http://site-name/p=?1234
Для активации выполняем команду:
Затем слегка отредактируем файл конфигурации:
В котором меняем AllowOverride None на AllowOverride All. Закрываем и сохраняем изменения (Ctrl+X).
Кстати, для остановки за место restart следует писать stop, а для запуска start.
Основы заложены. Теперь неплохо бы настроить общую папку между основной системой и виртуальной. Для virtualbox это делается следующим образом.
В начале обновляем систему (виртуальную)… на всякий случай:
Затем устанавливаем 2 пакета:
Загружаем «диск» от virtualbox, нажав Устройства > Установить дополнения гостевой ОС.
Затем монтируем дополнения в папку cdrom (можно и любую другую)
В устройства > общие папки. Указываем любую общую папку и ставим галочку «автоподключение». Перезагружаем виртуальноу ОС.
Если будем хостить сайт, то лучше указать папку в которой уже находятся файлы сайта. Значит заранее очищаем папку /var/www
и монтируем сайт в нужную папку.
Последнюю команду можно добавить в
перед exit 0, для её автозагрузки.
Теперь осталось подключить sql базы. Надеюсь вы не забыли пароль, который вводили при установке mysql-server.
В первую очередь заходим в саму sql.
Создаём новую базу… конечно можно поставить phpmyadmin, но быстрее освоить ввод команд из консоли, чем настроить для него удаленный доступ.
То есть, ввели первую строку, нажали энтер. Затем вторую строку, поставили «;» и опять энтер.
Должно выглядеть примерно так:
Что бы выйти вводим «exit».
Если сайт создаёте с 0-ля, то всё готово. Но если нужно перенести базу данных со старого сайта, то вводим команду:
Ну вот и всё. Если всё делать по инструкции, то получится поднять полноценный сервер с 0-ля менее чем за час.
Разумеется, что таким образом вы не получите комфортный хостинг или выделенный сервер. Для аренды сервера лучше оборотиться к профессионалам. В результате вам не придётся извращаться с виртуальной машиной, хотя это может быть и весело для некоторых.
Блог начинающего сисадмина
Здесь уже не будет ничего интересного, лучше загляните сюда: https://medium.com/@Amet13
понедельник, 14 января 2013 г.
Поднимаем веб-сервер на виртуальной машине
Либо устанавливаем с репозиториев Debian, просто введите в терминале:
$ sudo apt-get install virtualbox
2. Пока только скачиваем Debian (о скачивании и установке Debian можно прочесть здесь).
3. Открываем наш VirtualBox и создаем новую виртуальную машину, выставляем необходимые параметры и т. д.
4. Запускаем нашу виртуальную машину и устанавливаем Debian.
5. Debian установили, перезагружаемся и логинимся (можно под рутом).
Перед нами полноценная, рабочая ОС.
6. Первым делом установим службу SSH для удаленного доступа к компьютеру:
# apt-get install ssh
символ # означает, что действия мы выполняем с правами суперпользователя.
8. Заходим в настройки виртуальной машины и в разделе «Сеть» выбираем тип подключения «Сетевой мост».
Подтверждаем нажатием ОК.
9. Снова запускаем нашу виртуальную машину. Параметры сети мы выставили, теперь ее надо настроить:
# ifconfig
нас интересует блок eth0, так как в параметрах сети VirtualBox я выбрал eth0.
Для того, чтобы удаленно управлять сервером, нужно настроить ssh.
Так как у меня роутер (D-link), то мне необходимо пробросить 22-ой порт для SSH. Для этого нужно залогиниться в админку роутера и добавить виртуальный сервер.
Гуглите на тему «проброс портов роутер ‘имя вашего роутера'».
Вот инструкция на русском языке для роутеров D-link.
Это возможно только тогда, когда вы имеете так называемый «белый» адрес, об этом Вы можете узнать у своего провайдера.
Я же покажу свои параметры:
На этом настройка сети закончена.
10. «Каркас» сервера у нас готов, теперь надо сделать из него полноценный веб-сервер.
Будем использовать сервер LAMP.
Устанавливаем apache2 и php5:
# apt-get install apache2 php5 libapache2-mod-php5
Проверяем наш сервер. В браузере компьютера пишем адрес вашего сервера, пример:
Сервер функционирует. У нас там пока ничего нет, поэтому идем дальше.
11. Перезагрузим наш сервер apache2:
# /etc/init.d/apache2 restart
12. Проверяем работоспособность php.
Каталогом нашего сайта является /var/www/
В нем будет храниться все что нам нужно для сервера.
Установка сервера Linux + (Nginx + Apache) + PostgreSQL + PHP на VirtualBox (Ubuntu Server 16.04.3 LTS)
На просторах интернета не нашел единого рецепта по установке и настройке такого, довольно нестандартного сервера. Решил написать свой рецепт.
Принцип работы следующий:
Статические данные (файлы) отдает Nginx, а динамикой занимается Apache.
Начнем.
Установим VirtualBox
Подготовим VirtualBox к установке Ubuntu Server 16.04.3 LTS
Важно: У меня 8 ГБ оперативной памяти, и в моем случае, двух гигабайт будет достаточно. У вас может быть иначе.
Размер жесткого диска: 15 ГБ
Другие параметры оставим по умолчанию.
Сменим тип подключения с NAT на Сетевой мост.
Установка Ubuntu Server 16.04.3 LTS
Важно: Читайте подсказку внизу экрана.
Продолжаем.
Выбираем полное клонирование.
Жмем клонировать. У меня клонирование длилось две минуты.
Установим PuTTY, для доступа через SSH
Подключение через SSH к серверу
Мы должны наблюдать следующее:
Вводим логин, после пароль.
SSH соединение успешно настроено, теперь можно приступать к настройке (Nginx + Apache) + PostgreSQL + PHP.
Установка и настройка (Nginx + Apache) + PostgreSQL + PHP
make install
Теперь, на сервер PostgreSQL, в нужную базу данных, где хотим использовать беззнаковые и однобайтовые числа, отправим:
Вернемся в корневой каталог
cd /
Установим Nginx, но перед этим остановим Apache, дабы он не занимал порт 80, иначе Nginx не установится.
service apache2 stop
Установка Nginx
apt-get install nginx
Отлично, теперь остановим и Nginx
service nginx stop
Настройка Apache
a2dismod mpm_event
a2enconf php7.2-fpm
Сменим порт Apache
nano /etc/apache2/ports.conf
Заменить
127.0.0.1 — означает то, что к Apache можно обратиться только по локальному адресу.
8080 — можете поставить любой свободный порт.
Перейдем в папку с доступными сайтами
cd /etc/apache2/sites-available
Создадим конфигурационный файл нашего сайда
nano domain-name.local.conf
И привести его к такому виду:
Посмотрим, что у нас лежит в /var/www
cd /var/www/
tar xvf rpaf_v0.8.4.tar
cd mod_rpaf-0.8.4/
Теперь скомпилируем
make
make install
Выходим в корневой каталог
cd /
Хорошо, продолжим настройку Apache.
nano /etc/apache2/apache2.conf
Заменить
Приведем в порядок rpaf.conf
nano /etc/apache2/mods-available/rpaf.conf
Приведем его к такому виду:
Включим наш сайт в Apache.
a2ensite domain-name.local.conf
И запустим наш Apache.
service apache2 start
C Apache закончили.
Настроим Nginx
nano /etc/nginx/sites-available/domain-name.local
Привести к такому виду:
И сразу перейдем в нее
\c test_db
Подключим расширение pguint
И создадим тестовую таблицу
Заполним таблицу тестовыми данными
Посмотрим содержимое таблицы test_tb
Теперь проверим, и убедимся, что это работает
Отлично, мы настроили (Nginx + Apache) + PostgreSQL + PHP и он исправно работает.
Настроим FTP доступ к сайту
Все хорошо, попробуем создать каталог.
Country Name (2 letter code) [AU]:
State or Province Name (full name) [Some-State]:
Locality Name (eg, city) []:
Organization Name (eg, company) [Internet Widgits Pty Ltd]:
Organizational Unit Name (eg, section) []:
Common Name (e.g. server FQDN or YOUR name) []:
Email Address []:
Web сервер на виртуальной машине (Часть 1). Установка и настройка VirtualBox
Подробная инструкция по установки и настройки web сервера на виртуальную машину. Часть 1 из 3, установка и настройка VirtualBox.
В первой части подробно описано как установить VirtualBox, настроить его для виртуального веб сервера под управлением Ubuntu Server, а также настроим интернет соединение для нашего виртуального сервера
Скачиваем VirtualBox с официального сайта https://www.virtualbox.org/ и устанавливаем его на свой компьютер.
Скачиваем файл образ Ubuntu Server с официального сайта http://www.ubuntu.com/download/server
Пока Ubuntu Server загружается, настроем сеть для VirtualBox.
После установки VirtualBox, в Вашей системе появится новый «Виртуальный» сетевой адаптер «VirtualBox Host-Only Enthernet Adapter». Взаимодействие между ним, и существующим сейчас интернет соединением нам и необходимо настроить.
Откройте «Центр управления сетями и общим доступом»:
Затем выберите пункт «Подключение по локальной сети»:
В открывшемся окне нажмите на кнопку «Свойства»:
Обратите внимание флажок «VirtualBox Bridget Networking Driver» должен быть активен (отмечен), выберите вкладку «Доступ»:
В открывшимся окне отметьте флажок «Разрешить другим пользователям сети использовать подключение к Интернету данного компьютера», а в выпадающем списке «Подключение домашней сети» выберите пункт «VirtualBox Host-Only Network»:
Затем нажмите кнопку «Ок». После чего появится окно с предупреждением, что адаптеру «VirtualBox Host-Only Network» будет присвоен IP адрес 192.168.137.1:
Запомните этот адрес, и нажмите на кнопку «Да». Закрывайте окно состояния «Подключение по локальной сети» и откройте свойства сети «VirtualBox Host-Only Network»:
Нажмите на кнопку «Свойства» и установите флажок «VirtualBox Bridget Networking Driver» для этого сетевого адаптера:
Далее нажмите на кнопку «Ок», и закройте окно сетевых подключений.
Перейдем обратно к VirtualBox.
Откройте меню «Файл» «Настройки» или нажмите комбинацию клавиш Ctrl+G :
В появившемся окне выбираем пункт меню «Сеть» вкладку «Виртуальные сети хоста», кликаем по «VirtualBox Host-Only Ethernet Adapter» и жмем по иконке с изображением отвертки:
В открывшимся окне «Детали виртуальной сети хоста» вы увидите IP адрес хоста, и маску будущей виртуальной локальной сети:
Перейдите во вкладку «DHCP сервер» и снимите флажок с пункта «Включить сервер»:
Жмите на кнопку «Ок». Закрывайте настройки.
Перейдем к настройке нашего виртуального сервера.
Будем считать, что дистрибутив Ubuntu Server уже загружен и мы готовы продолжить.
Нажимаем на кнопку «Создать» в VirtualBox:
Заполняем поле «Имя» (если в имени будет присутствовать ключевое слово, например ubuntu, то поля «Тип» и «Версия» будут установлены автоматически) и нажимаем кнопку «Next»:
После чего укажите размер оперативной памяти выделяемый для данной машины и жмем кнопку «Next»:
Далее укажем, что мы хотим создать новый жесткий диск жмем на кнопку «Создать»:
VirtualBox предложит выбрать тип файла для создания нового виртуального жесткого диска. Выбираем пункт «VDI» и жмем на кнопку «Next»:
Далее ставим флаг напротив пункта «Фиксированный виртуальный жесткий диск» и жмем кнопку «Next»:
В следующем окне укажите место хранения виртуального жесткого диска и задайте его размер, после чего жмите кнопку «Создать» (Я поставил 20 Гб, но думаю и 8 Гб будет вполне достаточно):
Ждем пока VirtualBox создаст виртуальный жесткий диск:
Виртуальный жесткий диск готов, теперь в списке виртуальных машин выбираем нашу только что созданную и жмем по ней правой кнопкой миши, выбираем пункт «Настроить» или жмем по комбинации клавиш Ctrl+S :
В появившемся окне выбираем пункт «Носители», кликаем на диск с подписью «Пусто» под «Контроллер: IDE» и жмем на иконку выбора файла образа. Выбираем скачанный ранее дистрибутив Ubuntu Server:
Теперь необходимо перейти в пункт «Сеть» и в выпадающем списке «Тип подключения» выбрать пункт «Виртуальный адаптер хоста» и нажать на кнопку «Ок»:
Мы публикуем только рабочие и проверенные примеры. Если у вас возникли вопросы, то задавайте их в комментариях, не стесняйтесь)
Если вам понравился опубликованный материал делитесь им и подписывайтесь на нас в соц. сетях
Настраиваем свой первый VDS сервер в роли веб-сервера
Так уж сложилось, что последнее время пришлось достаточно часто менять VDS провайдеров, и каждый раз приходится заново настраивать систему, поэтому решил написать краткий конспект по настройке. Все нижеописанное корректно работает на ОС Linux Ubuntu server 12.04 LTS. В этой статье я опишу как установить и произвести первичную настройку nginx+apache2, eaccelerator, memcached, fure-ftpd, php, mysql, phpmyadmin а также панели управления игровыми серверами — open game panel.
Начну с краткого описания некоторых терминов.
VDS — он же VPS — Virtual Dedicated(Private) сервер — виртуальная машина, сервер — нужен он, когда обычного хостинга мало, а выделенный сервер дорого. На современном рынке провайдеров, которые предоставляют услуги по аренде VDS великое множество, и у каждого есть свои плюсы и минусы, но их мы обсуждать не будем.
Тип виртуализации — говоря простым языком это то, каким способом организована виртуальная машина. В настоящее время наиболее распространены OpenVZ и XEN. Плюс OpenVZ — низкая стоимость, так как в этом типе виртуализации для всех виртуальных машин запущенных на аппаратном сервере используется специально модифицированное ядро хост-системы. Минус этого типа виртуализации — невозможно менять параметры ядра ОС, также практически всегда присутствует оверселлинг (об это позже). А для серьезных проектов лучше использовать XEN или KVM виртуализацию — там гостевая ОС даже и не знает что она установлена на виртуальную машину, и с ОС можно делать практически все, чего душа пожелает, особенно на XEN-HWM и KVM.
Оверселлинг — провайдеры продают больше ресурсов, чем есть на самом деле. Работает это за счет того что клиенты редко используют ресурсы по тарифу на 100 процентов, но у недобросовестных провайдеров с завышенным коэффициентом оверселлинга могут наблюдаться проблемы, такие как крайне медленная работа машины или невыполнение скриптов по причине нехватки памяти. Возвращаясь к типам виртуализации на XEN и KVM оверселлинг практически невозможен технически.
Выбор хостинг-провайдера
Итак, вы решили купить услугу VDS. Как же следует выбирать провайдера. Начать следует с географии — где территориально будет располагаться ваш сервер.
Германия — плюсы: дешевые тарифы, быстрые каналы, безлимитный трафик, минусы — достаточно большая задержка до России — примерно 80мс, очень серьезно относятся к торрент трекерам, торрент клиентам, варезу и т.п.
Голландия, Канада — то же самое то и Германия, но немного дороже, но основной плюс — законодательство которое лояльнее относится к различным видам хранимой и передаваемой информации, за которую у нас по голове не гладят.
США — в большинстве своем считают трафик, большие пинги до России — в общем, не самый лучший вариант.
Россия, Украина — минимальные задержки до Российской аудитории, в большинстве случаев псевдобезлимитный трафик (снижение скорости после определенного порога или необходимость соблюдать пропорции входящего\исходящего Российского\зарубежного трафика), не самые надежные дата центры — практически в каждом периодически случаются массовые отключения сервиса на несколько часов, несмотря на три независимых электроввода, резервирование каналов интернет и дизель-генераторы.
Выбор типа виртуализации
Если позволяют ресурсы, то это однозначно KVM или XEN. Но не у всех провайдеров доступны эти типы виртуальных машин, да и денег оно стоит немного больших, нежели OpenVZ. Поэтому если ваш проект это некий сайт\два\десять с невысокой посещаемостью (примерно до 10000 уникальных хостов в день) и\или какой-нибудь ICQ чат, то OpenVZ для вас будет вполне достаточно.
Ну а если требуется выполнять какие-либо более ресурсоемкие задачи, такие как размещение игровых серверов или видеочаты лучше выбрать XEN | KVM, также эти типы виртуализации стоит выбирать, если есть необходимость создания VPN-туннелей. Здесь VPN поднять проще, чем на OpenVZ.
Настройка сервера
Пересобираем ядро
Если вы выбрали OpenVZ, то можете смело пропускать эту часть статьи.
Данная процедура не даст ощутимого прироста производительности, и нужна эта процедура только для саморазвития и «потренироваться на будущее».
качаем исходники последней стабильной версии ядра с сайта kernel.org. На данный момент это версия 3.6.7
• Устанавливаем необходимые для компиляции пакеты
• заходим в папку с исходниками и генерируем конфигурацию ядра. В нашем случае все будет проходить автоматически — в ядро будут включены только те модули, которые необходимы текущему железу. Если же вам хочется вручную сконфигурировать ядро, то прошу гуглить по запросу make config или make menugonfig.
• запускаем компиляцию ядра — процесс не быстрый идет от 15 минут до нескольких часов.
• поднимаемся на каталог выше и устанавливаем пакеты
• Перезагружаемся и проверяем, что ядро встало.
• Вот и все, в вашей системе новое ядро.
Меняем часовой пояс и имя ПК
Если вы устанавливаете Ubuntu на выделенный сервер сами, то языковые и географические параметры системы вы задаете в ходе установки, но в случае с VDS у провайдера есть уже готовый образ системы, который он раскатывает на ваш сервер. И всем нам приятней видеть правильное для нашего часового пояса время на сервере.
• Итак, установим часовой пояс, для этого в консоли выполним команду
• Появится псевдографический интерфейс в котором мы выберем наше расположение.
• Если вдруг (ни разу еще такого не видел) есть расхождения по дате\времени, то выполним следующую команду, в которую подставим текущие дату и время
• Чтобы изменить имя сервера, откроем файл /etc/hostname и заменим содержимое на желаемое имя сервера.
Устанавливаем nginx c бэкэндом apache2, PHP, MySQL, phpmyadmin
В этой части статьи мы установим и настроим веб-сервер, рассчитанный на большое количество соединений.
• Сначала установим стандартный «детский» набор пакетов для веб сервера.
• Нас будут просить задать пароль от MySQL, потом спросят чем обрабатывать phpmyadmin — нужно ответить то апачем, и спросят пароль от MySQL для нужд phpmyadmin
• На момент написания статьи phpmyadmin автоматически не прописывался в конфигурации apache2, вследствие чего по адресу адрес_сайта.зона/phpmyadmin мы видим ошибку 404, поэтому открываем файл /etc/apache2/apache2.conf и в конец дописываем строчку
• Включаем модули apache2
• Рисуем дефолтный конфиг апача. Для этого открываем /etc/apache2/sites-available/default стираем в этом файле все и пишем следующее:
• То, что указан восьмисотый порт — это не ошибка, на стандартном для http восьмидесятом порту будет висеть nginx. Параметр DocumentRoot по неизвестным мне причинам большинство советуют указывать /var/www/…, на мой же взгляд логичнее держать важные данные в /home — проще будет настраивать резервное копирование.
• Правим файл /etc/apache2/ports.conf
• Копируем файл /etc/apache2/sites-available/default в /etc/apache2/sites-enabled/адрес_сайта
• Директории и файлы с конфигами лучше называть по адресам сайтов т.к. в будущем это упростит поиск нужных конфигов\директорий, например /home/www/tweedle.ru /etc/apache2/sites-enabled/tweedle.ru
• Правим файл /etc/apache2/apache2.conf — меняем значение параметра MaxClients на 20, сделать это надо в двух местах.
• Прописываем репозиторий nginx, для этого откроем файл /etc/apt/sources.list и допишем в конец
• Устанавливаем nginx и apache2-mod-rpaf
• Далее настроим nginx, для этого открываем файл /usr/local/etc/nginx/nginx.conf и заменяем содержимое следующим
• в том случае если роль веб-сервера является основной ролью вашего сервера и\или сайты имеют большую посещаемость значение worker_processes выставляем равным количеству доступных ядер ЦП, в противном случае одного процесса будет вполне достаточно
• создаем конфиг для нашего сайта /etc/nginx/sites-enabled/адрес_сайта.зона
• устанавливаем memcached, никаких дополнительных настроек для него не требуеся
• теперь, прежде чем мы скомпилируем eAccelerator, поправим один баг в коде, из за которого возникают всяческие проблемы, например перестает работать авторизация в phpmyadmin. Откроем файл eaccelerator.c, строка 867. Заменим if (php_check_open_basedir(realname TSRMLS_CC)) < на if (php_check_open_basedir(p->realfilename TSRMLS_CC)) < Сохраняемся и продолжаем…
• Создаем папку для кэша, и даем на нее права
• Настраиваем php для работы с eaccelerator, для этого откроем файл /etc/php5/apache2/php.ini и допишем сверху
• Перезапускаем сервисы, убедившись что в /home/www/имя_сайта лежит сайт
• Теперь мы имеем достаточно шустрый веб-сервер, который потребляет меньше 100Мб оперативной памяти. Todo: Есть один недочет – phpmyadmin, который доступен по адресу адрес_сайта.зона/phpmyadmin отображается некрасиво(без картинок), временное решение, которое я могу предложить – открывать phpmyadmin по адресу адрес_сайта.зона:800/phpmyadmin
Установка FTP сервера pure-ftpd с поддержкой MySQL
ФТП сервер пригодиться нам для простого и быстрого и удобного переноса информации с сервера и на сервер.
• Устанавливаем pure-ftpd с поддержкой mysql
• Создаем группу для пользователей ftp и пользователя в ней – это делается для того чтобы впоследствии было удобней следить за тем, что происходит на вашем сервере.
• Создадим базу данных в MySQL для pure-ftpd. Это можно сделать и через phpmyadmin, но великим и могучим копипастом это быстрее сделать в консоли
• Создадим таблицу, в которой будут храниться учетные записи фтп.
• Теперь настроим pure-ftpd, для этого откроем файл /etc/pure-ftpd/db/mysql.conf и сделаем его содержание таким:
• Теперь сделаем так, чтобы домашняя директория пользователя автоматически создавалась если она не существует
• Следующая команда не даст пользователям доступа к директориям, которые выше чем их домашний каталог.
• И наконец отключим проверку хостнеймов пользователей – это значительно ускорит процесс авторизации и немного сократит количество трафика.
• Перезапустим сервис чтобы применить настройки
• Теперь создадим пользователя www-ftp с GID и UID 4002, домашней директорией /home/www лимитами скорости загрузки\отдачи по одному мегабайту в секунду и без ограничений по занимаемому дисковому пространству. Приведу пример с использованием командной строки, вы же можете использовать и «выполнить SQL-запрос» в phpmyadmin, или даже воспользоваться «добавить строки» в phpmyadmin – но в этом случае нужно не прошляпить то, что пароль в БД храниться в виде его md5 хеша, и в поле password выбрать «Функция» md5
• Вот и все, можно пробовать подключаться к вашему фтп серверу по адресу адрес_сайта.зона c логином www-ftp и указанным паролем.
• Если вы собираетесь передавать по протоколу ФТП данные, которые не должны попасть в чужие руки, то не лишним будет настроить TLS шифрование. Для этого выполним следующее:
• Устанавливаем пакет openssl, если он не установлен и генерируем сертификат.
• Отвечаем на вопросы – эти данные будут отображаться в созданном сертификате.
• Устанавливаем права доступа на сертификат и перезапускаем pure-ftpd
• Вот и все. Помните, что для того чтобы данные шифровались необходимо включить tls шифрование со стороны клиента, и далеко не все фтп клиенты поддерживают его.
Установка комплекса управления игровыми серверами – Open Game Panel
Open game panel – он же OGP — единственное из мною найденных бесплатное решение, которое позволяет осуществлять мониторинг и управление разнообразными игровыми серверами. На момент написания статьи поддерживаются более 50 разных игр с серверами на платформах Windows и Linux. В том числе такие популярные как Counter-Strike (2D, 1.5, 1.6, Source, GO) и Minecraft( Vanilla, Bukkit)
Состоит комплекс из двух частей – веб-морды, через которую осуществляется мониторинг и управление(фронтэнд) и агента – сервиса, который висит на машинах с игровыми серверами и передает логи в фронтэнд, а команды из фронэнда игровым серверам.
• Первым делом регистрируемся на http://www.opengamepanel.org – для установки это не обязательно, но на сайте можно скачать дополнительные модули(например систему биллинга), темы и прочие плюшки.
• Устанавливаем необходимые пакеты
• Если система x64, то дополнительно устанавливаем ia32-libs
• Скачиваем сам агент
• Устанавливаем. Внимание – я предварительно создал пользователя в системе, включил его в группы root и sudo и создал ему домашний каталог – это все необходимо для того чтобы агент корректно работал.
• У нас будут спрашивать имя пользователя под которым будет крутиться сервис – нужно указать того, про которого я говорил в предыдущем пункте, его пароль, директорию в которой будут находиться исполняемые файлы(/home/имя пользователя/OGP) и попросят ввести ключ агента – это не пароль пользователя, а ключ управления агентом, он нам пригодится позже, и еще нас попросят согласиться с правилами политики Steam.
• После установки залогиниваемся под созданным пользователем и запускаем
• Нам должны написать что все в порядке, процесс запущен и слушает на 12679 порту.
• Нажимаем ctrl+c, логинимся под рутом и прописываем – это нужно для того чтобы сервис стартовал при запуске ситемы
• Если серверов (выделенных или виртуальных) несколько, то агент необходимо установить на каждом
• Теперь установим веб-интерфейс от OGP, скачиваем архив и распаковываем
• Перемещаем содержимое папки upload в папку, в которой у нас лежит сайт
• В браузере открываем адрес_сайта.зона/папка_с_ogp и выбираем язык, если вдруг насм говорят что не хватает прав на создание каких-либо файлов или папок то выдаем права 777 chmodом, для этого зайдем в папку с ogp и выполним команду.
• Возвращаемся в веб-интерфейс и нажимаем «Повторить», потом «Дальше»
• Указываем параметры подключения к БД и нажимаем «Дальше»
• Регистрируем учетную запись администратора и нажимаем «Дальше»
• Далее следуем инструкциям, возможно в следующей статья я опишу процесс добавления серверов в OGP