Назад | Перейти на главную страницу

Разрешить вход root только с одного IP-адреса

У меня centos5.

Есть ли способ войти на свой vps-сервер с пользователем root только с определенного IP-адреса.

Я прочитал, что могу использовать закрытый ключ для входа в sshd. Но проблема в том, что я использую SFTP для всех своих веб-сайтов, и я не хочу, чтобы пользователи, не являющиеся ИТ-специалистами, использовали ключи для входа в систему с помощью SFTP.

ИЛИ есть ли способ, которым только root может использовать ключи для входа в оболочку, но для других - обычный пароль

Теперь лучше использовать ключевое слово Match:

Match Host myworkstation
        PermitRootLogin yes

или

Match Address 192.168.1.100
        PermitRootLogin yes

Таким образом, вы можете оставить PermitRootLogin равным «нет», но вы все равно сможете войти в систему как root со своей рабочей станции.

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

Как правило, лучше сначала войти в систему как непривилегированный пользователь, а затем использовать su - или sudo для получения привилегий root, но ...

Вы всегда можете установить ограничение IP на свой ключ в ~ root / .ssh / authorized_keys:

from="192.168.1.100" ssh-rsa AAAAh9uif...auwehuf== yourkey@yourhost.com

Это позволит ssh использовать ключ yourkey@yourhost.com только из 192.168.1.100.

Использование:

PermitRootLogin без пароля

В / etc / ssh / sshd_config. Каждому пользователю, кроме root, будет разрешено использовать пароль для входа. Root должен использовать ключи для входа в систему.

редактировать sshd_config (обычно в /etc/ssh) и добавить или изменить следующие директивы

  PermitRootLogin yes
  AllowUsers root@thehosttoallow

Затем перезапустите демон

  service ssh restart

Во-первых, почему вы хотите запретить пользователям использовать ключ аутентификации? Для меня это не имеет смысла.

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