Разворачиваем базовый сервер Debian stretch, настройка сети

debianeach

Опубликован:  2018-12-09T11:18:51.704268Z

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

Итак, после всех усилий, предпринятых в предыдущих статьях цикла, я оказался перед окном виртуальной машины и голой консолью Linux.

GnyJr1Tj1Y.png

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

soD9s7nUz0.png

Мне нужно увидеть доступные операционной системе сетевые интерфейсы, это можно сделать при помощи ip.

ip a

HTfQKSFGGL.png

На снимке экрана выше видно, что у сервера имеется два сетевых интерфейса, и второй сетевой интерфейс - enp0s8 - находится в состоянии неопределённости и не имеет IP-адреса. Напомню, что этот интерфейс в момент создания виртуальной машины был подключен к виртуальному сетевому адаптеру. Сейчас мне необходимо назначить этому интерфейсу правильные параметры сети, для этого открываю в текстовом редакторе nano файл /etc/network/interfaces.

nano /etc/network/interfaces

dxOjAbtbRK.png

На снимке экрана выше видно, что в начальном состоянии второй интерфейс enp0s8 в этом файле не вписан. Вписываю его.

# The internal network interface
auto enp0s8
iface enp0s8 inet static
address 192.168.56.101
netmask 255.255.255.0

B2XAp33AVI.png

Сохраняю файл (ctrl+o) и выхожу из текстового редактора (ctrl+x). Обращаю внимание, что в значении address я вписал IP-адрес, на котором этот сетевой адаптер будет слушать сеть. Делаю перезапуск сети.

systemctl restart networking.service

TO3OJFecOX.png

Чтобы убедиться, что сетка заработала, пробую пинговать сначала IP-адрес сервера.

ping -c 2 192.168.56.101

А затем IP-адрес хост-машины.

ping -c 2 192.168.56.100

h3XfMvIxki.png

Выхожу из сессии в консоли виртуальной машины командой exit и отправляю окно виртуальной машины на второй рабочий стол.

4qsoAwoLpG.png

Теперь, когда хост-машина и виртуальный сервер связаны сетью, чтобы управлять сервером, мне достаточно подключиться к нему по протоколу SSH прямо из терминала хост-машины. Открываю терминал хост-машины и создаю новый ключ.

ssh-keygen -t ed25519

ICsDHHN9Ob.png

Следует обратить внимание, что при создании ключа программа даёт возможность создать для этого ключа пароль, если этот пароль задан, то при каждом подключении к серверу ssh программа будет запрашивать этот пароль.

Копирую публичную часть этого только что созданного ключа на сервер.

ssh-copy-id -i ~/.ssh/id_ed25519.pub debianeach@192.168.56.101

yeb6m4QdR1.png

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

Чтобы не стучаться каждый раз в SSH сервера по IP-адресу, устанавливаю на IP-адрес сервера доменное имя auriz.net, для этого на хост-машине открываю в текстовом редакторе nano файл /etc/hosts.

sudo nano /etc/hosts

Дописываю в этот файл одну единственную строчку.

192.168.56.101  auriz.net www.auriz.net

TqQFWXyS7g.png

Сохраняю файл и выхожу из текстового редактора.

Важное замечание: следует иметь ввиду, что как только в файле /etc/hosts своей хост-машины я установил IP-адрес для домена auriz.net, я затенил для своей хост-машины Интернет-сайт с этим доменным именем, теперь моя хост-машина при подключении к этому домену будет стучаться в установленный IP-адрес.

hvUuwKOYCk.png

Пробую подключиться к серверу из терминала хост-машины.

ssh debianeach@auriz.net

C4zWM5OvdR.png

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

На текущий момент на сервере не установлена и не настроена программа sudo, чтобы сделать это из текущего подключения, мне необходимо получить права суперпользователя. Для этого служит программа su.

su -

На этот раз нужно ввести пароль root, который был задан в программе установки при установке операционной системы. Приглашение командной строки изменит свой вид.

MfnMF4XWIl.png

Таким образом, я получаю возможность настроить операционную систему сервера: обновить кеш пакетного менеджера, сделать абгрейд операционной системы, настроить таймаут загрузчика, установить программу sudo, дать пользователю debianeach право пользоваться sudo и так далее, - все эти действия были рассмотрены ранее при установке десктопа и никак не будут отличаться для сервера, поэтому демонстрировать их повторно я не стану. Кроме этого, необходимо настроить сервер SSH, для этого открываю в текстовом редакторе nano файл /etc/ssh/sshd_config.

eaCCUl6Wa2.png

В этом файле нахожу и редактирую следующие строчки.

PermitRootLogin no
PasswordAuthentication no

Если бы я настраивал удалённый VDS-сервер в публичной сети, то изменил бы ещё и порт подключения, но, поскольку мой сервер локальный, в данном случае я этого делать не буду. Сохраняю файл и выхожу из текстового редактора, а затем перезагружаю виртуальный сервер.

shutdown -r now

rKYjhHaaBG.png

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

gRkVKd6MEn.png

Успех. В итоге потраченных усилий я имею виртуальный сервер с установленной базовой операционной системой Debian stretch, имею в этой системе пользователя debianeach с возможностью использовать sudo, и могу подключаться к этому виртуальному серверу по сети по протоколу SSH и управлять им из терминала хост-машины. Теперь не составит никакого труда установить на эту виртуальную машину серверное программное обеспечение и использовать его по назначению, эта часть настройки операционной системы и варианты целевого использования сервера будут, вероятно, описаны в соседнем блоге в ближайших выпусках.

Напоминаю, что виртуальный сервер можно выключить при помощи команды shutdown.

sudo shutdown -h now

Этот выпуск блога завершает цикл статей, посвященных равёртыванию и настройке базового сервера Debian stretch, вопросы мне можно задать в комментариях или приватным сообщением - для этого потребуется регистрация. Имейте ввиду, мне интересно узнать ваше мнение...

Комментарии: