Меню

Начальная настройка сервера debian



Начальная настройка сервера Debian 10

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

1: Логин root

Чтобы подключиться к серверу, вам понадобится его внешний IP-адрес. Кроме того, нужно знать пароль или иметь закрытый ключ (если используется аутентификация на основе SSH-ключей) администратора – пользователя root.

Если вы еще не подключились к вашему серверу, сделайте это сейчас. Чтобы войти как пользователь root, введите команду:

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

Что такое root?

Пользователь root является администратором среды Linux и обладает максимальными привилегиями. Именно поэтому использовать аккаунт root для рутинной работы крайне небезопасно – так можно случайно нанести системе непоправимый ущерб.

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

2: Создание нового пользователя

Войдя в систему как root, создайте новый аккаунт для постоянной работы с сервером.

Чтобы создать нового пользователя по имени 8host, введите:

Примечание: Замените условное имя 8host именем своего пользователя.

После запуска команды вам будет предложено ввести информацию о пользователе.

Установите надёжный пароль и при желании укажите дополнительную информацию. Чтобы принять данные по умолчанию, просто нажмите Enter.

3: Доступ к sudo

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

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

В Debian 10 доступ к этой команде есть по умолчанию у всех, кто входит в группу sudo. Чтобы добавить нового пользователя в эту группу, запустите следующую команду в сессии пользователя root:

usermod -aG sudo 8host

Теперь новый пользователь имеет права суперпользователя и может выполнять задачи администратора.

4: Настройка брандмауэра

Серверы Debian могут использовать брандмауэр для блокировки соединений с отдельными сервисами. Мы используем UFW, чтобы установить политики брандмауэра и настроить исключения.

С помощью менеджера пакетов apt установите брандмауэр UFW. Сначала обновите локальный индекс.

apt update
apt install ufw

Различные приложения при установке регистрируют свои профили в UFW. Такие профили позволяют UFW управлять этими приложениями по имени. OpenSSH (сервис, который позволяет подключаться к серверу) имеет в UFW свой профиль.

Чтобы просмотреть его, введите:

ufw app list
Available applications:
. . .
OpenSSH
. . .

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

ufw allow OpenSSH

После этого можно включить брандмауэр:

Чтобы продолжить, нажмите у и Enter. Чтобы убедиться, что соединения SSH не блокируются брандмауэром, введите эту команду:

ufw status
Status: active
To Action From
— —— —-
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)

На данный момент брандмауэр блокирует все, кроме SSH. Если вы установили и настроили дополнительные сервисы, вам необходимо откорректировать настройки брандмауэра, чтобы он не блокировал другой трафик.

5: Проверка доступа к новому пользователю

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

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

Настройка SSH-доступа для вашего нового пользователя зависит от того, что использует ваша учетная запись root для аутентификации – пароль или SSH-ключи.

Парольная аутентификация

Если вы вошли в свою учетную запись root через пароль, значит, SSH поддерживает парольную аутентификацию. Вы можете подключиться по SSH к новому пользователю, открыв новую сессию терминала и используя SSH с именем нового пользователя:

Введите пароль пользователя, после чего вы войдете в систему. Помните, что если вам нужно запустить команду с правами администратора, нужно для этого добавить sudo:

При первом запуске sudo в каждой сессии (и периодически при запуске разных команд) вам будет предложено ввести пароль текущего пользователя.

Чтобы повысить безопасность сервера, вместо парольной аутентификации мы рекомендуем настроить SSH-ключи. Следуйте инструкциям в мануале Установка SSH-ключей в Debian 10.

Аутентификация на основе SSH-ключей

Если вы вошли в учетную запись root через SSH-ключи, парольная аутентификация отключена. Вам нужно добавить копию открытого ключа в файл

/.ssh/authorized_keys нового пользователя для дальнейшего доступа к системе.

Поскольку открытый ключ уже находится на сервере в файле пользователя root,

/.ssh/authorized_keys, вы можете скопировать эту структуру файлов и каталогов в учетную запись нового пользователя в текущем сеансе с помощью команды cp. Чтобы установить привилегии, используйте команду chown . Обязательно укажите свои данные в приведенных ниже командах.

Читайте также:  Ubuntu server настройка usb

/.ssh /home/8host
chown -R 8host:8host /home/8host/.ssh

Команда cp -r копирует весь каталог в домашний каталог нового пользователя, а команда chown -R передает этот каталог (и всего внутри) в собственность указанного пользователя и группы в формате username:groupname (Debian создает для пользователя одноименную группу по умолчанию).

Откройте терминал и создайте новое SSH соединение:

Вы должны без пароля войти в новую учетную запись пользователя. Помните, чтобы запустить команду с правами администратора, нужно ввести перед ней sudo:

При первом запуске sudo в каждой сессии (и периодически при запуске разных команд) вам будет предложено ввести пароль текущего пользователя.

Заключение

Вы выполнили начальную настройку сервера, он готов к установке нового программного обеспечения и к разработке проектов. Теперь, когда основные компоненты серверной среды настроены, можно оптимизировать работу системы: настроить справку, текстовый редактор по умолчанию и т. п.

Источник

Начальная настройка сервера Debian 9

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

1: Логин root

Для подключения к серверу вам понадобится его внешний IP-адрес. Кроме того, нужно знать пароль или иметь закрытый ключ (в случае использования аутентификации на основе SSH-ключей) администратора – пользователя root.

Чтобы войти как пользователь root, используйте команду:

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

Что такое root?

Пользователь root является администратором среды Linux и обладает максимальными правами. Именно из-за широких привилегий аккаунта root использовать его для рутинной работы крайне небезопасно – так можно случайно нанести системе непоправимый вред.

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

2: Создание нового пользователя

Войдя в систему как root пользователь, создайте новый аккаунт для постоянной работы с сервером.

Примечание: В некоторых средах пакет unscd может быть установлен по умолчанию для более быстрого обслуживания запросов серверов типа LDAP. В последней версии пакета, которая в данный момент доступна в репозитории Debian, есть баг, из-за которого некоторые команды (например adduser) выводят такой дополнительный вывод:

sent invalidate(passwd) request, exiting
sent invalidate(group) request, exiting

Эти сообщения можно просто игнорировать, но если вы хотите убрать их, можете удалить пакет unscd (если он вам не нужен).

apt remove unscd

Чтобы создать нового пользователя, введите:

Примечание: Замените условное имя 8host именем своего пользователя.

После запуска команды вам будет предложено предоставить информацию о пользователе.

Установите надёжный пароль и при желании укажите дополнительную информацию. Чтобы принять информацию по умолчанию, просто нажмите Enter.

3: Доступ к sudo

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

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

В Debian 9 доступ к этой команде по умолчанию есть у всех пользователей, которые входят в группу sudo. Чтобы добавить нового пользователя в эту группу, запустите следующую команду в сессии пользователя root:

usermod -aG sudo 8host

Теперь новый пользователь имеет права суперпользователя.

4: Настройка брандмауэра

Серверы Debian могут использовать брандмауэр для блокирования соединений с отдельными сервисами. По умолчанию установлен iptables, но Debian не имеет никаких строгих рекомендаций касательно брандмауэра. В этом мануале мы используем UFW.

С помощью менеджера пакетов apt установите брандмауэр UFW. Сначала обновите локальный индекс.

apt update
apt install ufw

Различные приложения могут при установке зарегистрировать свой профиль в UFW. Такие профили позволяют UFW управлять этими приложениями по имени. OpenSSH (сервис, который позволяет подключаться к серверу) имеет свой профиль, зарегистрированный в UFW.

Чтобы просмотреть его, введите:

ufw app list
Available applications:
. . .
OpenSSH
. . .

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

ufw allow OpenSSH

После этого можно включить брандмауэр:

Чтобы продолжить, нажмите у и Enter. Чтобы убедиться в том, что соединения SSH не блокируются брандмауэром, введите:

ufw status
Status: active
To Action From
— —— —-
OpenSSH ALLOW Anywhere
OpenSSH (v6) ALLOW Anywhere (v6)

Если вы установили и настроили дополнительные сервисы, вам необходимо откорректировать настройки брандмауэра, чтобы он не блокировал трафик этих сервисов.

5: Проверка доступа к новому пользователю

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

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

Читайте также:  Настройка ролей sql server 2008

Процесс настройки SSH-доступа для вашего нового пользователя зависит от того, что использует ваша учетная запись root для аутентификации – пароль или SSH-ключи.

Парольная аутентификация

Если вы вошли в свою учетную запись root, указав пароль, значит, SSH поддерживает парольную аутентификацию. Вы можете подключиться по SSH к новому пользователю, открыв новую сессию терминала и используя SSH с именем нового пользователя:

Введите пароль пользователя, после этого вы войдете в систему. Помните, что если вам нужно запустить команду с правами администратора, вам нужно для этого добавить sudo:

При первом запуске sudo в каждом сеансе (и периодически при запуске разных команд) вам будет предложено ввести пароль текущего пользователя.

Чтобы повысить безопасность сервера, вместо парольной аутентификации мы настоятельно рекомендуем настроить SSH-ключи. Следуйте инструкциям в мануале Установка SSH-ключей в Debian 9.

Аутентификация на основе SSH-ключей

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

/.ssh/authorized_keys нового пользователя для дальнейшего доступа к системе.

Поскольку ваш открытый ключ уже находится на сервере в файле пользователя root,

/.ssh/authorized_keys, вы можете скопировать эту структуру файлов и каталогов в новую учетную запись пользователя в текущем сеансе с помощью команды cp. Чтобы установить привилегии, используйте команду chown . Обязательно укажите свои данные в приведенных ниже командах.

/.ssh /home/8host
chown -R 8host:8host /home/8host/.ssh

Откройте терминал и создайте новое соединение SSH:

Вы должны войти в новую учетную запись пользователя без пароля. Помните, чтобы запустить команду с правами администратора, нужно ввести sudo перед ней:

При первом запуске sudo в каждом сеансе (и периодически при запуске разных команд) вам будет предложено ввести пароль текущего пользователя.

6: Опциональные настройки

Теперь, когда основные компоненты серверной среды настроены, можно оптимизировать работу системы.

Установка справки

Debian предоставляет расширенную справку для большей части программного обеспечения. Справка доступна по команде man. Но эта команда не всегда установлена по умолчанию.

Чтобы получить доступ к справке, установите пакет man-db:

sudo apt install man-db

Теперь попробуйте запросить справочную информацию:

Многие пакеты в репозитории Debian содержат справочную информацию как часть установки.

Настройка редактора по умолчанию

Debian предлагает широкий выбор текстовых редакторов, некоторые из которых доступны в базовой установке. Команды с интегрированной поддержкой редакторов, например visudo и systemctl edit, передают текст команде editor, которая связана с текстовым редактором системы по умолчанию. Выбрав наиболее удобный редактор, вы можете упростить и ускорить свою работу с сервером.

Если предпочтительный текстовый редактор не установлен по умолчанию, введите:

sudo apt install your_preferred_editor

Затем можно уточнить, какой редактор используется по умолчанию и изменить его с помощью команды update-alternatives:

sudo update-alternatives —config editor

Команда выведет таблицу доступных реакторов и поможет выбрать нужный вам вариант:

There are 8 choices for the alternative editor (providing /usr/bin/editor).
Selection Path Priority Status
————————————————————
* 0 /usr/bin/joe 70 auto mode
1 /bin/nano 40 manual mode
2 /usr/bin/jmacs 50 manual mode
3 /usr/bin/joe 70 manual mode
4 /usr/bin/jpico 50 manual mode
5 /usr/bin/jstar 50 manual mode
6 /usr/bin/rjoe 25 manual mode
7 /usr/bin/vim.basic 30 manual mode
8 /usr/bin/vim.tiny 15 manual mode
Press to keep the current choice[*], or type selection number:

Текущий редактор по умолчанию отмечен звездочкой. Чтобы изменить редактор, введите порядковый номер нового редактора и нажмите Enter. Например, чтобы выбрать nano:

Press to keep the current choice[*], or type selection number: 1
update-alternatives: using /bin/nano to provide /usr/bin/editor (editor) in manual mode

Теперь система будет использовать nano по умолчанию.

Заключение

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

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

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

Источник

Настройка сервера на Debian 9

Установка debian на живой сервер или на виртуалку Virtual Box, настройка сети

Начнём с VirtualBox. Установка виртуальной машины стандартная, о ней уже рассказывалось в статье Установка Debian 9.3 — пошаговая инструкция

При установке имеется небольшая разница относительно того, какая операционная система установлена — Windows или unix системы.

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

Указываем имя Debian сервер, virtualbox сам выбирает операционную систему Linux Debian (он по названию определит).

Заходим в настройки и загружаем образ предварительно скачанные с сайта — www.debian.org/distrb/

Скачивать нужно дистрибутив net Install, что означает установка по сети, дистрибутив весит около 250 МБ, он достаточно быстро скачивается. Пакеты и программное обеспечение будет доустанавливаться по сети. Т.е. если у вас нет интернета, дистрибутив net Install вам не подойдёт, и нужно скачивать полную версию.

Заходим в настройке, выбираем накопители, и в контроллере IDE 10 монтируется образ ISO. Далее стартуем сервер. В открывшемся меня нажимаем Install. Подробная установка Debian рассмотрена здесь. После завершения установки перезагружаем сервер.

Установка SSH

SSH (от англ. Secure Shell «безопасная оболочка») представляет собой сетевой протокол для соединения по сети Internet, который позволяет выполнять удалённое управление системой. Имеется бесплатная модификация SSH, которая именуется OpenSSH и включена в пакет ssh Debian.

Читайте также:  Сервер синхронизации времени настройка 2003

Подключиться к серверу через ssh (с компьютера под управлением unix подобной операционной системы)

Знакомство с командной строкой и протоколом ssh, sftp, настройка доступов по ключам (вместо паролей), root доступ

Базовые утилиты: su ls pwd cp scp locate updatedb which

Команда cd означает change directory (сменить директорию)

su – Superuser (суперпользователь).

Если мы находимся под логином текущего пользователя, то прописав su + имя пользователя, можно зайти в систему с правами root. Root имеет доступ ко всем папкам, может запускать и удалять всё что угодно, поэтому от имени суперпользователя необходимо работать внимательно и осторожно.

ls – показывает содержимое папки.

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

Сочетание клавиш

Ctrl+c отменяет запущенный процесс

Настройка сети

Для того, чтобы наш сервер стал доступен из нашей операционной системы, например, для того, чтобы из Windows зайти на свой сервер, через пути или просто пинговать его, или просто зайти в браузер. Выключаем сервер правильным способом (команда halt). Включаем питание в виртуально машине, идем в настройки – сеть — включаем режим моста, выбираем подключение.

Сейчас IP адрес у сервера будет такой же, как и у компьютера.

Вводим ip a — посмотреть все интерфейсы и их IP адреса.

Таким образом можно сделать пинг со своего компьютера. Теперь можно заходить на сервер с компьютера. Система запросит подтверждение на добавление публичного ключа сервера в систему. Теперь консоль от virtualbox уже не нужна и ее можно просто свернуть, теперь можно заходить в систему через ssh клиент, как будто бы выполняется заход на сервер удаленно.

Потребуется отредактировать следующий файл:

Пример config для ручной настройки IP:

iface lo inet loopback

# The primary network interface

iface eth0 inet static

# dns-* options are implemented by the resolvconf package, if installed

Публичные ключи

Для начала нам нужно сгенерировать ключ уже на нашем же сервере с помощью утилиты ssh-keygen. Ключи нужны чтобы каждый раз не вводить пароль.

На сервер нужно загрузить публичный ключ (приватный ключ хранится только у нас на компьютере).

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

Для создания пары (pair) ключей, пропишите команду в терминале вашего компьютера:

Ключ будет сгенерирован в текущем каталоге пользователя в папке …/.ssh/id_rsa.

Этот файл необходимо держать у себя на компьютере.

Чтобы зайти на аккаунт под публичным ключом нужно создать файл .ssh/authorized_keys

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

Закрываем файл сочетанием клавиш ctrl+x. Сохраняем – y.

Теперь попробуем зайти на сервер:

Теперь мы на сервер можем сколько угодно раз заходить без всяких паролей.

Псевдонимы в Unix ssh/config

Это относится опять же к операционным системам на базе unix. К Windows это никакого отношения не имеет. Но если вы будете с одного Debian сервера заходить на другой Debian сервер, тогда это вам пригодится или если ваш домашний компьютер будет Debian и вы будете администрировать удаленный компьютер Debian, то вам это в принципе поможет.

В папке ssh создается файл config, в нем прописывается хост, придумывается псевдоним. Теперь можно сразу заходить с помощью псевдонима под логином и паролем.

Знакомство с менеджером пакетов apt и принципом установки приложений

Что такое .deb пакеты в Debian?

Это файлы, подобные MSI файлам в Windows. То есть это набор файлов и мета-данных для установки того или иного определённого приложения. Там хранится скомпилированный бинарник уже сразу под вашу операционную систему. Например, если установлена 64 битная Debian версия 9.3, то значит в этом в пакете будет именно этот бинарный файл для установленной системы.

Вся установка deb пакетов означает скопировать бинарник в одну папку, config в другую папку, ну и попросить какие-то зависимости, без которых эта программа не запустится.

В Debian по умолчанию установлена системная программа dpkg, которая при установке системы ставит приложения. Существует принципиальное отличие dpkg и apt.

Утилита dpkg просто устанавливает бинарники, и предупреждает о зависимостях, которые нужны для этой программы, при этом она эти зависимости устанавливать не будет.

Утилита apt автоматически всё продумывает, необходимые зависимости она установит.

apt-get – это менеджер пакетов, который устанавливает deb пакеты и автоматически устанавливает все нужные зависимости. То есть если нужен, к примеру, PHP с поддержкой xml или ещё с чем-то, то apt-get автоматически устанавливает целый комплект нужных программ (это своего рода как AppStore для для iOS).

Установка утилит mc

Попробуем установить полезную утилиту mc, она часто используется для работы сервера. Она представляет собой популярный 2х-панельный файловый менеджер Midnight Commander.

Установка mc на сервер:

Добавляем пользователя в группу root

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

Установка и настройка окружения nginx, php-fpm, mysql;

Устанавливаем nginx php5 и mysql-server:

sudo apt-get install php5-fpm php5-mysql

Настройка nginx

sudo cp /etc/nginx/sites-available/default

Источник