web-dev-qa-db-ja.com

ホームディレクトリUbuntu 12.04へのアクセスのみを制限したFTPユーザーを作成する

Ubuntu 12.04サーバーがあり、FTP用のVSFTPDサービスをインストールしました。

/ var/www /ディレクトリとサブディレクトリのすべてのアクセス権のみにアクセスできるFTPユーザーを作成しようとしています。

FTPUserは、ルート/トップレベルのディレクトリおよびファイルにアクセスできません。

これまでのところ、次のことを行ってきました。

  • FTPUser1というユーザーを作成しました
  • FTPUser1のホームディレクトリを/ var/www /に変更しました
  • / etc/vsftpd.confファイルを編集し、chroot_local_user = YESを設定しました
  • 再起動されたvsftpdサービス

これらすべてを実行した後、My FTPuser1はトップレベルのディレクトリとファイルにアクセスできます。

トップレベルのアクセスをブロックするにはどうすればよいですか?

(2014年の質問がホームページに再び表示される理由はわかりませんが、とにかく:D)

他の答えで提案されているように、ファイルシステムの残りの部分の全体的なパーミッションを台無しにすることはおそらく良い考えではありません。より良い方法は、「c​​hroot」と呼ばれる機能を使用することです。

「chroot」は、「ルートの変更」の略で、それを行います。(FTP)ユーザーが管理者が望むものにアクセスできるディレクトリツリーのルートを変更します。同じ機能が、ホームディレクトリでのユーザーの「jail」と呼ばれることもあります。

ほとんどのFTPサーバーは、chrootをサポートしています(いくつかの非常に小さなベアボーンを除きます)。私はvsftpdにはあまり慣れていませんが、 Cyber​​cityのこのハウツー によると、configディレクティブchroot_local_user1に設定する必要があります。

1

所有者/ルートとして、次を実行します。

chmod 700 -r [directory]

700は所有者のみがフルアクセスできることを意味し、-rはルールをサブフォルダーに適用することを意味します。次のことも必要になります。

chown user:user -r [/path/to/dir]

chownコマンドは、所有者を変更します。 user:は、所有者になるユーザー名です。 :userはグループです。

0
bleeves