vsftpdのchroot_local_userが安全でないのはなぜですか?


20

VPSにvsftpdを設定していますが、ユーザーがftpホームディレクトリを離れることを許可したくありません。匿名ではなくlocal_user ftpを使用しているため、次のように追加しました。

chroot_local_user = YES

私は多くのフォーラムの投稿で、これは安全ではないことを読みました。

  1. なぜこれは安全ではないのですか?
  2. sshを使用してVPSにも参加しているためにこれが安全でない場合、これらのユーザーをsshdからロックアウトできますか?
  3. vsftpdのこの動作を実現する他のオプションはありますか?(システム上の「world」のすべてのフォルダー/ファイルの読み取り許可を削除したくない)

回答:


20

お探しの回答については、VSFTPDのFAQご覧ください。以下は、あなたの質問に答えるだろうと思う重要な抜粋です。

Q)助けて!「chroot_local_user」オプションで参照されるセキュリティの意味は何ですか?

A)まず、他のftpデーモンも同じ意味を持つことに注意してください。これは一般的な問題です。問題はそれほど深刻ではありませんが、これは次のとおりです。一部の人々は、完全なシェルアクセスを持つことが信頼されていないFTPユーザーアカウントを持っています。これらのアカウントもファイルをアップロードできる場合、わずかなリスクがあります。不良ユーザーは、ファイルシステムのルート(ホームディレクトリ)を制御できるようになりました。ftpデーモンにより、いくつかの構成ファイル(たとえば/ etc / some_file)が読み取られる場合があります。chroot()を使用すると、このファイルはユーザーの制御下になります。この領域ではvsftpdは注意が必要です。しかし、システムのlibcはロケール設定ファイルまたは他の設定を開きたいかもしれません...


そのおかげで、私はそのすべてを知りませんでした。何かを学んだ!+1
ヤニックギルアール

4
実際、私はよくある質問を読んだ後にここに来ました。なぜなら、心配な声明が理解できないからです。ユーザー。"。おそらくこれはvsftpd、セキュリティ上の欠陥(バッファオーバーフローなど)がある場合にのみ当てはまりますか?vsftpdユーザーをホームディレクトリにchroot して実行すると、このシナリオはどのようになりますか?説明してください
...-sxc731

4

問題は、ローカルアカウントを使用することも、シェルログインからそれらのアカウントを無効にすることもできないことです。ログインシェルを/ bin / nologinに設定すると、vsftpdでログインすることもできなくなります。

より安全で安全なFTPデーモンは、Pure-ftpdです。それを調べて、EPELリポジトリから入手でき、仮想ユーザーを作成できます。サーバーは、共通のユーザー/グループを使用してユーザーのホームフォルダーのすべての権限を設定し、ログインして権限を処理するときに仮想ユーザーをそのユーザーに「マッピング」します。それはより安全であり、opensshログインセキュリティに対処する必要はありません。

pure-ftpdは、クォータ、比率などの多くの機能もサポートしています。vsftpdよりもはるかに優れています。

これをインストールして基本的な仮想ユーザーを構成する方法に関する簡単なチュートリアルを次に示します。http//blog.namran.net/2011/05/04/how-to-setup-virtual-ftp-server-using-pure-ftpd- in-centos /

完全なドキュメントを読むと(必要です)、仮想ユーザーを作成するときの-dスイッチは、そのユーザーのそのディレクトリへの自動chrootであることがわかります。


AllowUsers user1 user2sshd_configでディレクティブを使用します。ftp_user1はsshでログインできませんが、ユーザーftp_user1はftpでログインできます。したがって、意図したとおりに機能していますが、私の主な質問はまだ開かれていますが、なぜ安全ではないのですか?
p1100i

4
はい、できます!「非シェル」を/ etc / shellsに追加するだけです。多くのシステムでは、/ etc / shellsに/ bin / falseまたは/ bin / nologinが存在します。シェルが存在する場合、vsftpdは実際にchroot_local_userも有効にしてログインできます。
フランズ・ハンセン

1
私はその時訂正します。それを指摘してくれてありがとう!
ヤニックギルアール
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.