Центр Диагностики & База Системных Ошибок

Решения для Windows Server, Active Directory, 1С, СУБД, Linux, Cisco, MikroTik и IP-телефонии.

⚠️ Важная информация Все материалы, инструкции, команды и скрипты предоставлены исключительно в ознакомительных целях. Их применение может повлиять на работу операционной системы, баз данных и сетевого оборудования. Перед выполнением действий обязательно создайте резервную копию. При отсутствии необходимой квалификации обратитесь к ИТ-специалистам.

Как добавить разработчика на Linux-сервер: SSH-ключи и права доступа

Обновлено: 27.08.2026  ·  Официальная база знаний

Задача: дать программисту доступ только к его проекту

Давать разработчикам пароль от root-пользователя категорически небезопасно. Правильный подход: завести отдельную учетную запись, настроить авторизацию по ключу и ограничить права только рабочей директорией /var/www/site.

Сравнение прав доступа

ПараметрRoot доступ (Плохо)Изолированный пользователь (Правильно)
Права в системеПолный контроль над ОСТолько чтение/запись в свой проект
Аудит действийНевозможно понять, кто авторКаждое действие зафиксировано в логах
БезопасностьРиск случайного удаления ОСИзоляция системных файлов

Пошаговое создание пользователя и настройка прав

  1. Создаем нового пользователя:
    sudo adduser devuser
  2. Создаем каталог для SSH-ключей нового юзера:
    sudo mkdir -p /home/devuser/.ssh
    sudo chmod 700 /home/devuser/.ssh
  3. Добавляем публичный ключ разработчика:
    sudo nano /home/devuser/.ssh/authorized_keys
    # Вставьте открытый ключ (ssh-rsa / ssh-ed25519) и сохраните файл
    sudo chmod 600 /home/devuser/.ssh/authorized_keys
    sudo chown -R devuser:devuser /home/devuser/.ssh
  4. Назначаем права на директорию веб-проекта:
    # Делаем пользователя и веб-сервер совладельцами папки:
    sudo usermod -aG www-data devuser
    sudo chown -R devuser:www-data /var/www/my_site
    sudo chmod -R 775 /var/www/my_site

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

Практический опыт инженера: Используйте команду chmod g+s /var/www/site (SGID бит), чтобы все новые файлы, создаваемые разработчиком, автоматически наследовали группу www-data.

Частые вопросы (FAQ)

Как разработчику подключиться по новому ключу?

Командой в консоли: ssh -i ~/.ssh/id_rsa devuser@IP_СЕРВЕРА.

Что делать, если веб-сервер не может записывать загружаемые файлы?

Убедитесь, что папка uploads принадлежит группе www-data и имеет права 775.

Как заблокировать доступ уволенному разработчику?

Удалите его ключ из ~/.ssh/authorized_keys или заблокируйте аккаунт: sudo usermod -L devuser.

Как временно зайти под созданным пользователем для проверки?

Выполните команду sudo su - devuser.