web-dev-qa-db-ja.com

1つのディレクトリのみにアクセスするSFTPユーザーを作成します。

特定のディレクトリにのみSFTPできるユーザーを作成し、情報のコピーを取得する必要があります。それだ。オンラインで見続けると、chrootについての情報が表示され、sshd_configが変更されます。

これまでのところ

  • ユーザー「useradd sftpexport」を追加します
  • ホームディレクトリ「-M」なしで作成します
  • ログイン場所を「-d/u02/export/cdrs」に設定します(情報が保存される場所)
  • ssh "-s/bin/false"の使用を許可しない

useradd sftpexport -M -d/u02/export/cdrs -s/bin/false

ユーザーがログインしてファイルをコピーすることしかできないように、誰が編集するつもりかを提案できますか?

ユーザーグループsftpを作成し、そのグループのユーザーをホームディレクトリに制限することを好みます。

まず、/etc/ssh/sshd_configファイルし、これを下部に追加します。

Match Group sftp
    ChrootDirectory %h
    ForceCommand internal-sftp
    AllowTcpForwarding no  

これにより、OpenSSHは、sftpグループ内のすべてのユーザーが自分のホームディレクトリ(_%hはChrootDirectoryコマンドで表します)

新しいsftpグループを追加し、ユーザーをグループに追加し、sshアクセスを制限し、ホームディレクトリを定義します。

groupadd sftp
usermod username -g sftp
usermod username -s /bin/false
usermod username -d /home/username

Sshを再起動します。

Sudo service ssh restart

それでも問題が発生する場合は、ホームディレクトリのディレクトリ権限が正しいことを確認してください。設定に合わせて755値を適切に調整します。

Sudo chmod 755 /home/username

編集:質問の詳細に基づいて、sshd_configの部分が欠落しているようです。あなたの場合、sftpsftpexportに置き換えてください。また、/u02/export/cdrsディレクトリ。

さらに優れたセットアップ(そして、私が提案しようとしているものよりも優れたセットアップがあります)は、/u02/export/cdrsディレクトリからユーザーのホームディレクトリ。

29
csi

このユーザーがそこにいくつかのファイルを配置できるように、制限付きシェルを追加する必要があります。 rssh ツールを使用できます。

usermod -s /usr/bin/rssh sftpexport

設定で許可されたプロトコルを有効にする/etc/rssh.conf

2
user3132194