web-dev-qa-db-ja.com

フォルダーの制限されたサブツリーへのSSH経由の読み取り専用アクセス権を持つユーザーを作成するにはどうすればよいですか?

私はDebianサーバーを持っており、そのサーバー上のフォルダーのサブツリーへの読み取り専用アクセスを複数のユーザーに許可したいと思います。すべてのファイルとフォルダーの権限を手動で変更せずにこれを行う方法はありますか?

7
Marius

本当にそれらを可能な限り制限したい場合は、chrootされたsshインストールを検討することをお勧めします。そうすれば、たとえツリーを分割できたとしても、基盤となるシステムをトロールすることはできません。

Debianの人たちは、このテーマに関するガイドを利用できます。

5
Andrew Williams

rsshはまさにそれを行います。 pizzashack.orgから

rsshは、OpenSSHで使用するための制限付きシェルであり、scpまたはsftp、あるいはその両方のみを許可します。 rdist、rsync、cvsのサポートも含まれるようになりました。たとえば、シェルアクセスを提供せずに、ユーザーがscpを介してファイルをコピーすることのみを許可するサーバーがある場合は、rsshを使用してそれを行うことができます。 rsshが機能することがわかっているプラ​​ットフォームのリストについては、プラットフォームサポートページを参照してください。

1
elcuco

元の(openbsdからの)sshdは、sshd_configから引用して、完全なchrootを実行できます。

ChrootDirectory

         Specifies a path to chroot(2) to after authentication.  This
         path, and all its components, must be root-owned directories that
         are not writable by any other user or group.  After the chroot,
         sshd(8) changes the working directory to the user's home directo-
         ry.

         The path may contain the following tokens that are expanded at
         runtime once the connecting user has been authenticated: %% is
         replaced by a literal '%', %h is replaced by the home directory
         of the user being authenticated, and %u is replaced by the user-
         name of that user.

         The ChrootDirectory must contain the necessary files and directo-
         ries to support the user's session.  For an interactive session
         this requires at least a Shell, typically sh(1), and basic /dev
         nodes such as null(4), zero(4), stdin(4), stdout(4), stderr(4),
         arandom(4) and tty(4) devices.  For file transfer sessions using
         ``sftp'', no additional configuration of the environment is nec-
         essary if the in-process sftp server is used, though sessions
         which use logging do require /dev/log inside the chroot directory
         (see sftp-server(8) for details).

         The default is not to chroot(2).
1
akira