Иногда мне кажется, что единственным универсумом в программировании является цикл. (Алан.Дж.Перлис)

Первоначальная настройка сервера с Ubuntu 16.04

1 Звезда2 Звезды3 Звезды4 Звезды5 Звезд (3 оценок, среднее: 5,00 из 5)
Загрузка...

Статья опубликована: 1 февраля 2017

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

Шаг первый – Войдите под root

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

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

 

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

О root

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

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

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

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

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

 

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

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

Шаг третий – суперпользователь

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

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

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

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

 

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

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

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

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

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

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

 

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

Вывод ssh-keygen
Теперь вернитесь, чтобы принять это имя файла и путь к нему (или введите новое имя).

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

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

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

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

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

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

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

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

 

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

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

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

 

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

Содержание id_rsa.pub
Выберите открытый ключ, и скопируйте его в буфер обмена.

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

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

 

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

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

 

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

 

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

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

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

 

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

 

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

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

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

Примечание
Отключить только проверку подлинности пароля, если вы установили открытый ключ к вашему пользователю, как это рекомендовано в предыдущем разделе, четвертый этап. В противном случае, вы будете заперты на вашем сервере!

Чтобы отключить проверку пароля на сервере, выполните следующие действия.

В корневом каталоге или нового пользователя SUDO, откройте конфигурацию SSH-демона:

 

Найдите строку, которая определяет PasswordAuthentication, раскоментировать путем удаления # в начале, а затем измените его значение на “no”. Он должен выглядеть следующим образом после того, как вы сделали изменения:

sshd_config – Отключите пароль аутентификации
Вот два другие параметра, которые имеют важное значение только для ключа аутентификации и устанавливаются по умолчанию. Если вы не изменили этот файл ранее, вы не должны изменять эти настройки:

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

Перезагрузите SSH демон:

 

Аутентификация пароля теперь отключена. Ваш сервер теперь доступен только с ключом аутентификации SSH.

Шаг шестой – Тест входа

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

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

 

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

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

После аутентификации, вы войдете в систему в качестве нового пользователя.

Помните, что если вам нужно выполнить команду с привилегиями суперпользователя, введите “sudo” перед ним, так:

 

Шаг седьмой – Настройка основного брандмауэра

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

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

Вы можете увидеть это, введя:

 

Вывод
 

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

 

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

 

Введите “у” и нажмите кнопку ENTER для продолжения. Вы можете видеть, что соединения SSH по-прежнему разрешено выводить:

 

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

 

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

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


Читайте также

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

Войти с помощью: 

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Заполните форму и наш менеджер перезвонит Вам в самое ближайшее время!

badge
Обратный звонок 1
Отправить
galka

Спасибо! Ваша заявка принята

close
galka

Спасибо! Ваша заявка принята

close