複数のドメインとユーザーが必要なWebサーバーを構成しています。
ユーザーをホームディレクトリのみに制限し、SSHまたはSFTPで接続できるようにしようとしています。
これまで、いくつかのガイドに従い、ユーザーを特定のディレクトリに制限してSFTPで接続しようとしましたが、SSHを使用して接続しようとすると次のようになります。
ホームディレクトリにchdirできませんでした/ home/username:そのようなファイルまたはディレクトリはありません/ bin/bash:そのようなファイルまたはディレクトリはありません
/ etc/ssh/sshd_configの終わりは次のようになります。
Subsystem sftp internal-sftp
Match Group sftp
ChrootDirectory %h
X11Forwarding no
AllowTcpForwarding no
ForceCommand internal-sftp
*ユーザー「username」をグループ「sftp」に追加しました。
*「MatchGroup ...」ブロックにコメントして「Subsystemsftpinternal-sftp」を「Subsystemsftp/usr/libexec/openssh/sftp-server」に戻すと、SSHで接続できますが、フォルダの制限はありません。
- 何か案が?
正しいchroot環境を設定する必要があります各ユーザーごと SSH経由で許可します。
各chrootされたホームディレクトリには独自のシェルなどを起動できるようにするためのUnix実行可能ファイルとデバイスファイルの最小限のセットが必要です。コマンドセットは、ユーザーの「自分のルート」にコピーするコマンドに制限されます。 "。これはchrootされた環境の主なトリッキーです-ユーザーは特定のコマンドが欠落していると際限なく不平を言うでしょう。
ChrootされたSSHの設定方法に関するマニュアルがたくさんあります。これは正気に見えます: chrooted SSH/SFTPチュートリアル(Debian Lenny) 。
乾杯!