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

Вступление

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

Шаг первый - Root Login

Чтобы войти на свой сервер, вам необходимо знать общедоступный IP-адрес вашего сервера и пароль учетной записи «root». Если вы еще не вошли в систему на своем сервере, вы можете воспользоваться первым учебным пособием в этой серии: https://www.digitalocean.com/community/tutorials/how-to-connect-to-your-droplet-with- ssh [Как подключиться к вашей капле с помощью SSH], которая подробно описывает этот процесс.

Если вы еще не подключены к своему серверу, войдите в систему как пользователь + root +, используя следующую команду (замените выделенное слово публичным IP-адресом вашего сервера):

ssh root@

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

О корне

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

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

Шаг второй - Создать нового пользователя

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

В этом примере создается новый пользователь с именем «demo», но вы должны заменить его на имя пользователя, которое вам нравится:

adduser

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

Введите надежный пароль и, при желании, заполните любую дополнительную информацию, если хотите. Это не обязательно, и вы можете просто нажать «ENTER» в любом поле, которое вы хотите пропустить.

Шаг третий - корневые привилегии

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

Чтобы избежать необходимости выходить из нашего обычного пользователя и входить в систему как учетная запись root, мы можем настроить так называемые привилегии суперпользователя или привилегии root для нашей обычной учетной записи. Это позволит нашему обычному пользователю запускать команды с правами администратора, помещая слово + sudo + перед каждой командой.

Установить судо

Debian 8 не поставляется с установленным + sudo +, поэтому давайте установим его с помощью apt-get.

Сначала обновите индекс пакета apt:

apt-get update

Затем используйте эту команду для установки sudo:

apt-get install sudo

Теперь вы можете использовать команды + sudo + и + visudo +.

Предоставление Судо привилегий

Чтобы добавить эти привилегии нашему новому пользователю, нам нужно добавить нового пользователя в группу «sudo». По умолчанию в Debian 8 пользователям, принадлежащим к группе «sudo», разрешено использовать команду «+ sudo +».

Как + root +, запустите эту команду, чтобы добавить нового пользователя в группу sudo (замените выделенное слово новым пользователем):

usermod -a -G sudo

Теперь ваш пользователь может запускать команды с привилегиями суперпользователя! Для получения дополнительной информации о том, как это работает, ознакомьтесь с this пособие по sudoers.

Шаг четвертый - добавление аутентификации с открытым ключом (рекомендуется)

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

Генерация пары ключей

Если у вас еще нет пары ключей SSH, которая состоит из открытого и закрытого ключей, вам необходимо сгенерировать их. Если у вас уже есть ключ, который вы хотите использовать, перейдите к шагу Copy the Public Key.

Чтобы сгенерировать новую пару ключей, введите следующую команду на терминале вашей * локальной машины * (т.е. твой компьютер):

ssh-keygen

Предполагая, что ваш локальный пользователь называется «localuser», вы увидите вывод, который выглядит следующим образом:

ssh-keygen outputGenerating public/private rsa key pair.
Enter file in which to save the key (/Users//.ssh/id_rsa):

Нажмите return, чтобы принять это имя файла и путь (или введите новое имя).

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

  • Примечание: * Если вы оставите парольную фразу незаполненной, вы сможете использовать закрытый ключ для аутентификации без ввода парольной фразы. Если вы введете парольную фразу, вам понадобится как закрытый ключ _, так и парольная фраза для входа в систему. Защита ваших ключей с помощью парольных фраз более безопасна, но оба метода имеют свое применение и более безопасны, чем обычная аутентификация по паролю.

Это генерирует закрытый ключ + id_rsa + и открытый ключ + id_rsa.pub + в каталоге + .ssh + домашнего каталога localuser. Помните, что закрытый ключ не должен передаваться тем, кто не имеет доступа к вашим серверам!

Скопируйте открытый ключ

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

Вариант 1: использовать ssh-copy-id

Если на вашем локальном компьютере установлен скрипт + ssh-copy-id +, вы можете использовать его для установки вашего открытого ключа любому пользователю, для которого у вас есть учетные данные для входа.

Запустите скрипт + ssh-copy-id +, указав пользователя и IP-адрес сервера, на который вы хотите установить ключ, например:

ssh-copy-id @

После ввода пароля в приглашении ваш открытый ключ будет добавлен в файл + .ssh / authorized_keys + удаленного пользователя. Соответствующий закрытый ключ теперь можно использовать для входа на сервер.

Вариант 2: вручную установить ключ

Предполагая, что вы сгенерировали пару ключей SSH с помощью предыдущего шага, используйте следующую команду на терминале вашего * локального компьютера *, чтобы напечатать ваш открытый ключ (+ id_rsa.pub +):

cat ~/.ssh/id_rsa.pub

Это должно напечатать ваш открытый ключ SSH, который должен выглядеть примерно так:

id_rsa.pub contentsssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBGTO0tsVejssuaYR5R3Y/i73SppJAhme1dH7W2c47d4gOqB4izP0+fRLfvbz/tnXFz4iOP/H6eCV05hqUhF+KYRxt9Y8tVMrpDZR2l75o6+xSbUOMu6xN+uVF0T9XzKcxmzTmnV7Na5up3QM3DoSRYX/EP3utr2+zAqpJIfKPLdA74w7g56oYWI9blpnpzxkEd3edVJOivUkpZ4JoenWManvIaSdMTJXMy3MtlQhva+j9CgguyVbUkdzK9KKEuah+pFZvaugtebsU+bllPTB0nlXGIJk98Ie9ZtxuY3nCKneB+KjKiXrAvXUPCI9mWkYS/1rggpFmu3HbXBnWSUdf [email protected]

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

Добавить открытый ключ к новому удаленному пользователю

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

  • На сервере * как пользователь + root + введите следующую команду, чтобы переключиться на нового пользователя (подставьте свое имя пользователя):

su -

Теперь вы будете в домашнем каталоге вашего нового пользователя.

Создайте новый каталог с именем + .ssh + и ограничьте его разрешения следующими командами:

mkdir .ssh
chmod 700 .ssh

Теперь откройте файл в .ssh с именем + authorized_keys + в текстовом редакторе. Мы будем использовать nano для редактирования файла:

nano .ssh/authorized_keys

Теперь вставьте свой открытый ключ (который должен быть в вашем буфере обмена), вставив его в редактор.

Нажмите + CTRL-X +, чтобы выйти из файла, затем + Y +, чтобы сохранить внесенные изменения, затем + ENTER +, чтобы подтвердить имя файла.

Теперь ограничьте права доступа к файлу authorized_keys с помощью этой команды:

chmod 600 .ssh/authorized_keys

Введите эту команду once, чтобы вернуться к пользователю + root +:

exit

Теперь вы можете войти в систему как ваш новый пользователь, используя закрытый ключ в качестве аутентификации.

Чтобы узнать больше о том, как работает аутентификация по ключу, прочитайте это руководство: How Чтобы настроить аутентификацию на основе ключей SSH на сервере Linux.

Шаг пятый - Настройка SSH

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

Начните с открытия файла конфигурации с вашим текстовым редактором с правами root:

nano /etc/ssh/sshd_config

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

Чтобы отключить удаленный вход в систему, нам нужно найти строку, которая выглядит следующим образом:

/ etc / ssh / sshd_config (до)

#PermitRootLogin yes

Вы можете изменить эту строку на «нет» следующим образом, если вы хотите отключить root-логин:

/ etc / ssh / sshd_config (после)

PermitRootLogin no

Отключение удаленного входа в систему root настоятельно рекомендуется на каждом сервере!

Когда вы закончите вносить изменения, сохраните и закройте файл, используя метод, который мы использовали ранее (+ CTRL-X +, затем + Y +, затем + ENTER +).

Перезагрузить SSH

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

Введите это, чтобы перезапустить SSH:

systemctl restart ssh

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

Откройте * новое * окно терминала. В новом окне нам нужно начать новое соединение с нашим сервером. На этот раз вместо использования учетной записи root мы хотим использовать созданную нами новую учетную запись.

ssh @

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

Помните, что если вам нужно запустить команду с привилегиями root, наберите «sudo» перед этим так:

sudo

Если все хорошо, вы можете выйти из ваших сессий, набрав:

exit

Куда пойти отсюда?

На данный момент у вас есть прочная основа для вашего сервера Debian 8. Вы можете установить любое необходимое вам программное обеспечение на свой сервер сейчас.

Related