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

CopSSH SFTP - ограничить доступ пользователей только к их домашнему каталогу

Позвольте мне предварить это, сказав, что я много раз читал и выполнял эти инструкции в FAQ: http://www.itefix.no/i2/node/37

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

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

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

Детали:

Вот именно то, что я пробовал, следуя FAQ. Мой каталог установки copSSH: C: \ Program Files \ CopSSH

net localgroup sftp_users /ADD      **Create a user group to hold all my SFTP users

cacls c:\ /c /e /t /d sftp_users    **For that group, deny access at the top level and all levels below

cacls "C:\Program Files\CopSSH" /c /e /t /r sftp_users    **Allow my user group access to the copSSH installation directory and its subdirectories

Для каждого пользователя sftp я создаю новую учетную запись пользователя Windows, а затем:

net localgroup sftp_users sftp_user_1 /add    **Add my user to the group I've created

Откройте мастер активации пользователя для CopSSH, выбрав пользователя «/ bin / sftponly» и

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

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

cacls "C: \ Program Files \ CopSSH \ home" / c / e / t / d sftp_users ** Запретить пользователям доступ к домашнему каталогу пользователя

Затем я попытался добавить разрешения для каждого пользователя для каждой папки home \ username. Однако это разрешение не было разрешено окнами, поскольку указанное выше правило запрета, созданное в домашнем каталоге, унаследовалось и переопределило мое правило разрешения.

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

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

Спасибо за помощь!

  1. создать группу «Пользователи SSH» в управлении компьютером
  2. Добавить группу в gpedit -> Конфигурация компьютера -> Параметры Windows -> Параметры безопасности -> Локальные политики -> Назначение прав пользователя -> Разрешить локальный вход в систему (см. Не удается войти на сервер Cygwin sshd с учетной записью пользователя без прав администратора)
  3. запустить gpupdate
  4. Добавить ftpuser в группу пользователей SSH
  5. Добавьте подробности в / etc / sshd_config:

    Subsystem sftp internal-sftp
    
    Match User ftpuser
        ChrootDirectory /home/ftpuser
        X11Forwarding no
        AllowTcpForwarding no
        ForceCommand internal-sftp
    

    (ключевые слова в строках после Match директива применяется только к пользователю ftpuserи переопределить те, которые установлены в глобальном разделе файла конфигурации, пока не появится другой Match строка или конец файла.)

  6. Активируйте пользователя ftpuser через мастер copSSH
  7. Удалите все файлы / папки .ssh .bashprofile в папке ftpuser.
  8. Установите для пользователя SvcCOPSSH значение root с идентификатором 0

    SvcCOPSSH:unused_by_nt/2000/xp:**0**:545:U...
    

    (видеть http://www.itefix.no/i2/node/11956)

  9. Возможно, потребуется сделать следующее в copSSH 'UNIX BASH Shell'

    cd /
    chown SvcCOPSSH /
    chmod 0755 /
    
  10. перезапустить службу openssh