この記事では、Debian®とRPM Package Manager(RPM)ベースのディストリビューションの両方を使用してchrootjailを構成する方法について説明します。
これらの手順では、次のグループ名とユーザー名の例を使用してchrootjailを作成します。
-
グループ: sftponly
-
ユーザー: ftpuploader
次の手順を使用して、投獄されたユーザーのグループを作成します。
-
次のコマンドを使用して、jailedグループを作成します。
groupadd sftponly
注: このグループは、ユーザーをホームディレクトリに制限または投獄するために使用されます。
-
/ etc / ssh / sshd_configを開きます テキストエディタで、次の手順を使用してファイルを編集します。
-
番号記号(
#
)を配置して、次の行をコメントアウトします )行の前:前:
Subsystem sftp /usr/libexec/openssh/sftp-server
後:
#Subsystem sftp /usr/libexec/openssh/sftp-server
-
構成ファイルの最後に次の行を追加します。
Subsystem sftp internal-sftp Match Group sftponly ChrootDirectory %h X11Forwarding no AllowTCPForwarding no ForceCommand internal-sftp`
-
-
新しい構成で構文が正しいことを確認し、 sshdをリロードします 次のコマンドを使用して:
sshd –t service sshd reload
次の手順を使用して、セキュアファイル転送プロトコル(SFTP)ユーザーを作成します。
-
次のコマンドを使用して、SFTPユーザーのホームディレクトリを作成します。
mkdir -p /home/chroot/ftpuploader/public
-
シェルアクセスのないホームディレクトリを持つ新しいユーザーを作成し、それをグループ sftponly に追加します 次のコマンドを使用して:
useradd -d /home/chroot/ftpuploader -s /sbin/nologin -G sftponly ftpuploader
-
すでにSFTPユーザーを作成している場合は、ユーザーのシェルアクセスを / sbin / nologinに設定する必要があります。 それらをグループsftponlyに追加します 次のコマンドを使用して:
usermod -s /sbin/nologin -G sftponly ftpuploader
-
次に、次のコマンドを使用して、SFTPユーザーの新しいパスワードを設定します。
Passwd ftpuploader
-
次のコードに示すように、RPMおよびDebianベースのディストリビューションを使用してホームディレクトリの権限と所有権を変更します。
chown root:root /home/chroot/ftpuploader/ chown ftpuploader:sftponly /home/chroot/ftpuploader/public chmod 711 /home/chroot/ chmod 755 /home/chroot/ftpuploader/ chmod 755 /home/chroot/ftpuploader/public
注: 前のコマンドでは、グループは sftponly ユーザーがsftponlyの一部になる場合 グループ。