Как ограничить доступ ssh только для локального хоста?

Мне нужно запретить доступ ssh (кроме localhost) для указанного пользователя.

Так. ssh localhost должен работать. ssh hostname извне не должно работать для этого пользователя.

Все остальные пользователи должны работать как обычно.

3 Solutions collect form web for “Как ограничить доступ ssh только для локального хоста?”

См. Директивы AllowUsers и DenyUsers на странице руководства sshd_config (и, возможно, также AllowGroups и DenyGroups ).

В основном эти директивы принимают список пользовательских шаблонов в формате user@host , разделенных пробелами. Директивы имеют следующий приоритет: DenyUsers , AllowUsers , DenyGroups и, наконец, AllowGroups .

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

 AllowUsers user@localhost 

Это неявно лишает любого пользователя нигде, не являющегося user@localhost .

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

Чтобы заставить конкретного пользователя использовать аутентификацию с открытым ключом:

 Match User Bad_User PasswordAuthentication no AuthorizedKeysFile /somewhere/the/user/cannot/touch 

А затем в файле авторизованных ключей сконфигурируйте свой ключ следующим образом:

 from=localhost ssh-rsa AAAA... 

Вы можете узнать больше о директивах соответствия в man sshd_config и о разрешенных параметрах ключей в man sshd .

Вы можете использовать PAM (UsePAM в sshd_config) и добавить

 account required pam_access.so 

к конфигурации PAM для ssh.

Затем вы можете определить политики доступа в /etc/security/access.conf

 + : john : 127.0.0.1 ::1 - : john : ALL + : ALL : ALL 

(Непроверенные)

  • Странная проблема с неудовлетворенными зависимостями, когда состояния клонирования пакетов из более ранней установки на одном компьютере
  • Как получить доступ ко всем 8 последовательным портам на моей 8-портовой последовательной PCI-карте
  • Настроить svn для существующего проекта
  • Перезапустить сервер MySQL
  • Как я могу войти в свой Linux-ноутбук, если забыл как логин, так и пароль?
  • Выход из учетной записи пользователя после выполнения программы
  • Grub rescue: как исправить insmod normal, неизвестную файловую систему
  • xkill Используется на рабочем столе
  • Когда система Linux (Ubuntu) отключается, какие процессы отправляются SIGTERM?
  • Как создать USB-утилиту?
  • Очистка файлов журнала в Linux
  • Interesting Posts

    Как запустить скрипт с привилегиями, ожидаемыми от общего «предполагаемого пользователя» сценария?

    Как получить последние три последние даты файла журнала?

    Как включить все ключи привязки по умолчанию vi-edit-mode в bash?

    Простейшая возможная защищенная песочница (необходимы ограниченные ресурсы)

    Как передать пароль дочернему процессу?

    Как использовать xhost для привязки отображения одного виртуального терминального устройства к другому?

    Разрешить setuid для сценариев оболочки

    Контроллер Bluetooth работал на Ubuntu 10.10, но не в более поздних версиях

    Подстановка числа в имя файла в bash

    Может ли udev контролировать установку и размонтирование сетевого хранилища?

    Новая установка зависает при загрузке initramfs

    Как преобразовать текст или символ в hex в оболочке korn

    Скопировать файл ‘red’ в ‘смешанный’ каталог в Unix?

    Отключить логин пользователя без отключения учетной записи.

    Получение строк из файлов с определенным расширением

    Linux и Unix - лучшая ОС в мире.