Є комп'ютер з Windows 10, де встановлений VirtualBox. Створемо віртуальну машину у VirtualBox, встановимо на неї Debian. Застосувавши цю машину веб-сервера та встановивши певний програмний продукт, необхідний для веб-розробки. Додатково налаштуємо свою папку, щоб зручно працювати в ній з сайтами в улюбленому редакторі коду під Windows. Відкриватися сайти теж будуть під Windows.
Віртуалка і Debian
Скачуємо новий образ для установки Debian. Даю посилання на сторінку з образами, призначеними для мережевого встановлення. Вони маленькі, не мають нічого лишнього, добре підходять для веб-сервера. Я використовую 64-бітний образ.
Створюємо віртуальну машину:
Об'єм пам'яті і диска на свій розсуд.
Диск особливо витрачатися не буде, тому що ми будемо працювати з сайтами в загальнодоступному місці, яка буде підключається до Debian як додатковий носій. Тип основного диска за замовчуванням, динамічний.
Машина підготовлена. Поки не включаємо. Заходимо в властивості машини, підключаємо скачаний інсталяційний образ на CD/DVD:
Пройдемося по іншим налаштуваням.
Число ядер процесора вибирайте самі, в залежності від можливостей і потреб. Обов'язково встановіть позначку «Включити PAE/NX».
Можна вимкнути різні непотрібні речі, типу віддаленого доступу по RDP, звукової карти, порти USB стандарту 2.0 і т.д.
У мережевих адаптерах вибираємо тип підключення «NAT», нижче тут же натискаємо «Додатково» і заходимо в «Переадресування портів».
Тут для SSH вказуємо порти 3022 і 22, для http 80 і 80, https 443 і 443. Для панелі VestaCP 8083 і 8083. І для статистики 9191 і 9191.
Чому саме «NAT»? Віртуальну машину зможете використовувати тільки ви, вона не буде видна в вашій локальній мережі і ніяк на неї не вплине. Для мене це важливо.
Якщо ви хочете, щоб ваша віртуальна машина повноцінно додавалася в вашу локальну мережу, то вибирайте тип підключення «Мережевий міст». Інші комп'ютери у вашій локальній мережі теж зможуть звертатися до вашої віртуальній машині.
На завершення додаємо загальну папку:
Виходимо з налаштувань. Запускаємо машину, встановлюємо Debian. Процедура установки Debian нічим особливо непримітна. По ходу вибираємо всякі параметри.
Ближче до кінця установки треба буде вибрати компоненти, які потрібно встановити. Робочий стіл і інше сміття нам на веб-сервері не потрібен, знімаємо всюди позначки. Ми залишаємо тільки SSH-сервер і стандартні системні утиліти.
Пропонований в списку «web server» я теж вважаю за краще не ставити, тому що там буде Apache, який в сучасному світі нафіг не потрібен. Краще встановити потім самому саме ті програми, які потрібні.
Загалом, установка завершується, машина перезапускается.
Входимо під root-ом:
Все ОК? Невелика рекомендація. Робіть «знімки» машини на різних етапах настройки і використання. Це корисно! Якщо в процесі якихось налаштувань або інших дій щось піде не так, то ви зможете відкотитися до попереднього стану.
Щоб вимкнути машину можна написати poweroff, щоб перезапустити - reboot.
Налаштування
Поки продовжуємо працювати з створеної машиною через вікно VirtualBox. До підключення по SSH повернемося трохи пізніше.
В процесі установки Debian, крім root, обов'язково створюється додатковий користувач. Якщо він зовсім вам не потрібен, то його можна видалити:
Додатковий користувач іноді корисний. Наприклад, коли ви будете працювати з Composer. Цей менеджер пакетів вважає, що робота під root небезпечна і видає попередження, хоча і продовжує справно працювати.
За замовчуванням Debian не дозволяє підключитися по SSH, використовуючи користувача root. Виглядає це так:
root@127.0.0.1's password:
Access denied
Додатковим користувачем підключатися можна відразу.
Щоб по SSH можна було зайти root-ом редагуємо файл /etc/ssh/sshd_config.
шукаємо:
PermitRootLogin without-password
Міняємо на:
PermitRootLogin yes
Щоб зміни вступили в силу перезавантажуємо машину.
Для підключень по SSH в Windows зручно використовувати PuTTY. Адреса машини 127.0.0.1, порт 3022:
Тепер уже можна більшу частину часу працювати з віртуальною машиною через SSH. Воно зручніше, ніж через вікно VirtualBox. Вікно PuTTY можна вільно розтягувати і його вміст буде під це підлаштовуватися. У вашому розпорядженні буфер обміну і навіть миша.
Щоб працювала спільна папка потрібно встановити гостьові доповнення ОС.
Для початку підключаємо образ:
Тепер монтуємо його:
Попередньо встановлюємо необхідні пакети:
Ще виконуємо:
Тепер сама установка доповнень:
Результат успішної установки:
Verifying archive integrity ... All good.
Uncompressing VirtualBox 5.1.2 Guest Additions for Linux ...........
VirtualBox Guest Additions installer
Copying additional installer modules ...
Installing additional modules ...
vboxadd.sh: Building Guest Additions kernel modules.
update-initramfs: Generating /boot/initrd.img-3.16.0-4-amd64
vboxadd.sh: Starting the VirtualBox Guest Additions.
Could not find the X.Org or XFree86 Window System, skipping.
root @ webdev: ~ #
Перезапускаємо машину і радіємо. Тепер у нас запрацювала загальна папка. У віртуальній машині в моєму випадку це: /media/sf_web. На основний машині вона відповідає: d:\OpenServer\domains\.
Робота із загальною папкою в віртуальній машині здійснюється з під користувальницької групи vboxsf. Це означає, що якщо користувач (під яким ви працюєте) не входить в цю спеціальну групу, то він не зможе записувати в загальну папку. Для нього в папці за умовчанням режим «readonly».
Щоб додати користувача в цю групу виконуємо:
usermod -aG vboxsf root
usermod -aG vboxsf www-data
Користувач www-data за замовчуванням використовується Nginx.