---
title: "Добавление пользователей на Linux-серверах"
description: "Управление пользователями на серверах с UNIX-подобными ОС. Документация и инструкции по использованию и настройке облачных серверов Timeweb Cloud."
---

> Полный индекс документации для ИИ-агентов: [llms.txt](https://timeweb.cloud/llms.txt).

Из соображений безопасности работа от пользователя root в системе Linux не рекомендуется.

Оптимальным решением является создание дополнительного пользователя VDS с привилегиями `sudo`. Механизм `sudo` позволит пользователю при необходимости выполнять операции с правами администратора (`root`).

По этой же инструкции создаются и обычные пользователи системы (без привилегий `sudo`) — достаточно выполнить первые три шага.

## Создание пользователя с привилегиями sudo

1\. Создайте нового пользователя (в примере — `username`) командой ниже:

```shell
sudo adduser username
```

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

2\. В **Ubuntu / Debian** далее будет запрошен пароль пользователя. Его будет необходимо ввести дважды. Помните, что символы пароля не отображаются в консоли Linux при вводе.

![Adduser1](https://content.timeweb.com/assets/a6fc6b5c-4baa-45d6-aded-ee0f94642684?width=492&height=128)  
В **CentOS** для установки пароля выполните команду:

```shell
sudo passwd username
```

После введите пароль и повторите его.

3\. Далее в **Ubuntu / Debian** будет запрошен ввод дополнительной информации о пользователе (имя, номер телефона и пр.). Вы можете указать данные или нажимать Enter, чтобы оставить значения по умолчанию (т.е. пустые). После нажмите Y для подтверждения.  
![Adduser2](https://content.timeweb.com/assets/c640b5e2-3bd8-4d7b-9994-7cf7f3de8d6d?width=413&height=129)  
В **CentOS**, если вы хотите указать дополнительную информацию, выполните команду:

```shell
sudo chfn username
```

На этом этапе создание обычного пользователя (без привилегий `sudo`) завершено  

4\. Теперь для того, чтобы предоставить пользователю `sudo`\-привилегии, его нужно добавить в группу `sudo`. Это делается следующими командами.

В Ubuntu / Debian:

```shell
sudo usermod -aG sudo username
```

В CentOS:

```shell
sudo usermod -aG wheel username
```

5\. Проверьте работу пользователя. Для этого переключитесь на сеанс работы от его имени:

```shell
su - username
```

Система запросит пароль пользователя (при первом запуске `sudo`). Введите его, после чего попробуйте выполнить любую команду с привилегиями `sudo`. Например, можно просмотреть содержимое каталога `/root`, которое недоступно пользователю с обычными правами:

```shell
sudo ls -la /root
```

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

### **Если для root используется аутентификация по SSH-ключу**

Если вы подключились под `root` без ввода пароля, значит используется аутентификация по SSH-ключу. Чтобы новый пользователь мог входить в систему, добавьте копию вашего открытого ключа в файл `~/.ssh/authorized_keys` этого пользователя.

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

Скопируем весь каталог в домашний каталог нового пользователя:

```shell
cp -r ~/.ssh /home/username
```

Установим `username` владельцем этого каталога (также будет создана группа с тем же именем):

```shell
chown -R username:username /home/username/.ssh
```

Теперь можно залогиниться на сервер под новым пользователем без использования пароля:

```shell
ssh username@your_server_ip
```

Если нужно запустить команду с правами администратора, введите `sudo` перед ней:

```shell
sudo команда
```

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

6\. Этот шаг не является обязательным, но для повышения безопасности можно отключить дистанционный доступ для суперпользователя `root`. В этом случае пользователям всегда будет необходимо подключаться под собственными учетными записями, что позволит отслеживать действия на сервере, видеть, кем были внесены те или иные изменения и т.д.

Для отключения доступа root откройте файл `/etc/ssh/sshd_config`:

```shell
sudo nano /etc/ssh/sshd_config
```

Найдите строку `PermitRootLogin` и замените ее текущее значение на:

```shell
PermitRootLogin no
```

Выйдите из редактора с сохранением изменений (комбинация Ctrl X -> Y -> Enter).

После выполненных действий перезапустите службу SSH командами ниже.

В Ubuntu / Debian:

```shell
sudo service ssh restart
```

В CentOS:

```shell
sudo service sshd restart
```

## Другие команды для управления пользователями

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

```shell
sudo groupadd имя_группы
```

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

```shell
sudo addgroup имя_группы
```

После чего можно создать пользователя следующим образом:

```shell
sudo useradd -g имя_группы username
```

Если пользователь уже существует, вы можете добавить его в нужную группу командой `usermod`:

```shell
sudo usermod -G имя_группы username
```

Для того, чтобы изменить первичную группу пользователя, используется ключ `-g`:

```shell
sudo usermod -g имя_группы username
```

Для смены домашнего каталога пользователя используется команда:

```shell
sudo usermod -d путь/к/новому/каталогу username
```

Получить информацию о пользователе можно командой:

```shell
id username
```

Вывод будет содержать примерно следующие сведения:

```shell
uid=1000(username) gid=1000(username) groups=1000(username),27(sudo)
```

Сменить пароль можно командой:

```shell
sudo passwd username
```

Просмотреть список всех созданных пользователей можно командой:

```shell
cat /etc/passwd
```

Чтобы получить только список имен, без дополнительной информации, можно использовать:

```shell
sed 's/:.*//' /etc/passwd
```

Вывести список пользователей, которые сейчас в системе, можно простой командой `w`.

Удалить пользователя можно командой:

```shell
sudo deluser username
```

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

```shell
sudo delgroup имя_группы
```
