Subscribe to Блог php программиста: статьи по PHP, JavaScript, MySql

В этой статье я пошагово продемонстрирую процесс установки и настройки OpenVPN сервера, менее, чем за 15 минут, и ценой, всего 5$ в месяц на DigitalOcean. А, если вы читали прошлую мою статью, посвященную регистрации на DigitalOcean, то уже наверняка знаете, как получить бонусных 100$ на счёт. В итоге, получается, что первые 2 месяца ваш VPN будет бесплатным.

Настройка VPN

Первое, что нужно сделать — это подключиться к нашему, созданному серверу с помощью PuTTY.

Откройте PuTTY, и в поле Host Name введите IP вашего сервера (который вы скопировали с письма, пришедшего на почту), и нажмите кнопку Open. Вам будет показано всплывающее окно во время первого входа, просто нажмите Да: И вы попадёте в консоль сервера, где нужно ввести логин и пароль (опять-таки, взятые из письма). Введите root на вопрос login as, после чего — пароль, взятый из письма (если вы скопируете пароль, то можете вставить его в консоль, кликнув правой кнопкой мыши на поле ввода, видимых действий не произойдёт, но пароль будет вставлен в поле ввода, смело можете нажимать Enter). Когда вы корректно введёте пароль, вам нужно будет изменить пароль на новый (из соображений безопасности), введите его в появившемся окне, и подтвердите:

Учтите, что этот VPN сервер будет хранить приватную информацию о ресурсах, просмотренных через VPN. Потому, следует установить сложный пароль, чтобы сохранить вашу безопасность и конфиденциальность всей информации. Для этого, рекомендуется устанавливать пароль, минимум в 8 символов, содержащий, как минимум, одну заглавную букву, цифру, и

Hyper-V

Выбор операционной системы доступен на этапе заказа услуги. Установка происходит в автоматическом режиме, данные для доступа на ваш сервер отправляются на контактный e-mail.

В панели управления вы всегда можете выполнить автоматическую установку или переустановку Windows. Для этого:

1. На вкладке Снимки в разделе Переустановка ОС выберите образ операционной системы.

2. Нажмите кнопку Переустановить ОС.

Для опытных пользователей доступен заказ VDS без операционной системы с последующей установкой в ручном режиме. Этот функционал доступен во вкладке DVD панели управления услугой.

Внимание! При переустановке все данные на VDS и сохраненные снимки системы будут удалены, пароль администратора останется прежним.

Читайте также:  Обзор виртуального хостинга на Linux от Veesp

Создание сервера VPS

Теперь о том, как создать личный сервер (на данном сервере вы также можете создать сайт, либо личный облачный диск по типу Yandex Disk или DropBox), провайдер DigitalOcean называет их Droplet.

Создание сервера VPS
  • Нажмите на кнопку Create Droplet, после чего вы попадете на страницу создания конфигураций сервера
Создание сервера VPS
  • Выбираем необходимую операционную систему (ЧТО УКАЗАНО В ИНСТРУКЦИИ, КОТОРУЮ ВЫ ВЫПОЛНЯЕТЕ), либо перейдите во вкладку Marketplace, чтобы выбрать настоенный вариант сервера под задачу
Создание сервера VPS
  • Выбираем тарифный план
Создание сервера VPS
  • Выбираем расположение сервера, которое в дальнейшем будет эмулировать ваше расположение (если выбрать города США, то IP будет американским). Стоить также отметить, что чем ближе находиться сервер, тем быстрей у вас будут загружаться страницы и файлы.
Создание сервера VPS
  • Указываем авторизацию по паролю (one-time password) и ниже прописываем пароль
Создание сервера VPS
  • В конце нажимаем кнопку CREATE, чтобы создать Droplet (сервер). Создание будет происходить в течение 2-5 минут. Узнать IP можно на основной странице управления Droplet, логин по умолчанию root .

Делаем…

Выбранный нами VPS хостинг должен поддерживать доступ к консоли виртуальной машины напрямую, а не только по SSH. На VPS устанавливаем шаблонную Ubuntu Как правило это чистая система с родным загрузчиком GRUB. Скачиваем туда образ любой Ubuntu/Debian netinstall CD, извлекаем ядро и initrd, например в папку boot, а дальше подсовываем GRUB это ядро и initrd. Обязательно ядру при загрузке указываем параметр rescue/enable=true. Попадаем в Ubuntu/Debian recovery mode, запускаем консоль без подключения к восстанавливаемой системе, а дальше

wget [АДРЕС НАШЕГО ОБРАЗА, ВЫЛОЖЕННОГО НА ЛЮБОЙ WEB-ХОСТИНГ] -q -O — | dd of=/dev/vda bs=10M

Ждем. (можно ждать долго, у кого то и 2-3 часов не хватит). По окончании работы команды перезагружаем нашу VPS виртуалку, и видим успешную загрузку pfSense.

Расширяем файловую систему RouterOS.

Любители всё делать в консоли могут делать там, мне показалось быстрее и проще сделать всё в GParted.

Запускаем GParted, выбираем диск, на который установили RouterOS и с помощью функции Resize/Move увеличиваем размер второго раздела. Обратите внимание, что размер раздела за вычетом размера первого раздела не должен превышать размер диска Вашего дроплета, который мы посмотрели в самом начале (т.е. первый раздел у нас 32 МиБ, значит второй должен быть не более 17179869184 байт / 1048576 = 16384 МиБ и — 32, т.е. 16352 МиБ)

Читайте также:  7 лучших программ клонирование жесткого диска и SSD для Windows

Не забываем применить изменения разметки диска.

Варианты размещения SWAP

Вариантов несколько:

  • на разделе диска,
  • в файле,
  • или в оперативной памяти использую zRAM.

Исторически в Linux SWAP размещался на разделе, но в современных дистрибутивах производительность SWAP-файла не уступает SWAP-разделу и это весьма радует.

SWAP-раздел

Когда вы точно знаете, что размер оперативной памяти меняться не будет и вы точно уверены в размере SWAP разумно выделить раздел при установке системы.

Хочу заострить ваше внимание на установку систем Linux из готовых шаблонов которые предлагают хозяева ресурсов предоставляющих услуги VDS. Один из шаблонов при использовании 2 G памяти создал мне SWAP раздел размером 512 М. При таком размере он заполнился на стадии настройки системы. Устанавливайте OS Linux по возможности с минимального iso образа системы!

SWAP-файл

Использование файла очень удобно особенно когда нет точного понимания какие будут окончательные аппаратные параметры системы. Файл можно создать в любом удобном месте и необходимым вам размером. Ниже я расскажу как это сделать.

ZRAM и ZSWAP

Вариант с использованием этих вариантов требует наличие хорошего опыт в использовании Linux систем. На мой взгляд данный способ имеет смысл использовать с хорошим знанием системы на которой это будет работать.

ZRAM — это модуль ядра Linux, позволяющий сжимать содержимое оперативной памяти, и таким образом увеличивать ее объем в несколько раз. ZRAM создает сжатое блочное устройство в ОЗУ которое чаще всего используется как swap. При этом степень сжатия данных получается в среднем 3:1. Это означает что на 1 гигабайт подкачки будет использовано в 333 мегабайт физической памяти.

ZSWAP — тличается от ZRAM тем, что использует существующий swap-раздел на диске, а в ОЗУ создаётся пул со сжатыми данными (кэшем). После того как пул до отказа забьётся сжатыми данными, он сбросит их в раздел подкачки и снова начнёт принимать и сжимать данные.  По утверждению разработчиков, в их конфигурации при компиляции ядра в ситуации когда происходит своппинг, выигрыш по объему ввода/вывода составил 76%, а время выполнения операции сократилось на 53%. При использовании ZSWAP, используется раздел swap на диске, в ОЗУ хранится только сжатый кэш.

Webinoly

Главная цель скриптов Webinoly — запустить на вашем сервере с Убунтой сайты. Вы не найдёте управление пользователями, мониторинг производительности и прочие фишечки. Webinoly — прекрасное решение для тех, кому нужен сервер для личных проектов.

В качестве софта используется стек LEMP: Nginx+PHP+MySQL. Правда, в качестве сервера баз данных авторы предпочли MariaDB, но это даже хорошо — так можно покрыть потребности большего количества систем управления контентом.

Читайте также:  Дистрибутивы Linux для опытных пользователей

В отличии от VestaCP, какой-либо «защиты от дурака» здесь не существует. Неправильно отредактировали конфиг — сами виноваты. Но зато Webinoly не сильно вмешивается в файлы конфигурации, лишь генерируя базовые конфиги как для полностью статических, так и динамических сайтов на PHP. Особое внимание уделено WordPress: для быстрого создания сайта на этой CMS есть отдельная команда.

Поддержка кеширования с помощью средств Nginx, Redis и Memcached также присутствует. Причём для WP при включении кеша будет предложена установка соответствующих плагинов.

PhpMyAdmin для управления базами данных тоже наличествует.

В общем, Webinoly — это инструмент без особых замашек на всеядность, но зато в нём нормально работают заявленные функции:

  1. Добавление, удаление сайтов.
  2. Быстрое включение кеширования.
  3. Быстрая конфигурация HTTPS (встроенный шаблон настроек SSL очень даже неплох, получает A+ на SSL Labs).
  4. Автоматическое обновление сертификатов SSL от Let’s Encrypt.
  5. Просмотр в реальном времени всех основных журналов событий.

Это хороший старт для тех, кому не лень прочитать мануалы и донастроить сервер под свои нужны самостоятельно, на 100% используя имеющиеся ресурсы сервера.

Установка

Ставится достаточно просто, нужно выполнить несколько шагов.

1. Выполните в консоли команду загрузки и запуска инсталлятора:

wget -qO weby && sudo bash weby 3

Первоначальная установка пакетов займёт 5-15 минут.

Затем вы получите два пароля от базы данных — админский (admin) и полный (root), запишите их. Если что, в phpMyAdmin достаточно заходить под админом.

Webinoly

Успешная установка Webinoly

В принципе, серверный софт уже будет работать, но нужно его донастроить.

2. Кое-какие средства администрирования окажутся доступны на 22222 порту. Не облегчайте жизнь сканирующим ботам и злоумышленникам, измените порт на любой случайный командой:

sudo webinoly -tools-port=xyz

Вместо xyz — любой порт, кроме 22, 80 и 443.

Попытавшись зайти по адресу http://ip_вашего_сервера:тот_случайный_порт, вы обнаружите, что у вас требуют логин и пароль. Их нужно добавить командой:

sudo httpauth -add=[user,password]

Полагаю, вы догадались, что нужно ввести вместо user и password.

Пароли, передающиеся методом HTTP Authentication, можно перехватить. Не админьте сервер, подключившись к публичной Wi-Fi сети.

Зайдя по этому адресу, вы сможете глянуть некоторую статистику сервера и воспользоваться phpMyAdmin.

Также этим же логином и паролем можно защитить админки сайтов на WordPress. Просто выполните команду:

sudo httpauth -wp-admin=on

Это не защитит от слишком настойчивого хакера, но в целом полезно.