Ubuntu 12.04サーバーがあり、FTP用のVSFTPDサービスをインストールしました。
/ var/www /ディレクトリとサブディレクトリのすべてのアクセス権のみにアクセスできるFTPユーザーを作成しようとしています。
FTPUserは、ルート/トップレベルのディレクトリおよびファイルにアクセスできません。
これまでのところ、次のことを行ってきました。
これらすべてを実行した後、My FTPuser1はトップレベルのディレクトリとファイルにアクセスできます。
トップレベルのアクセスをブロックするにはどうすればよいですか?
(2014年の質問がホームページに再び表示される理由はわかりませんが、とにかく:D)
他の答えで提案されているように、ファイルシステムの残りの部分の全体的なパーミッションを台無しにすることはおそらく良い考えではありません。より良い方法は、「chroot」と呼ばれる機能を使用することです。
「chroot」は、「ルートの変更」の略で、それを行います。(FTP)ユーザーが管理者が望むものにアクセスできるディレクトリツリーのルートを変更します。同じ機能が、ホームディレクトリでのユーザーの「jail」と呼ばれることもあります。
ほとんどのFTPサーバーは、chrootをサポートしています(いくつかの非常に小さなベアボーンを除きます)。私はvsftpdにはあまり慣れていませんが、 Cybercityのこのハウツー によると、configディレクティブchroot_local_user
を1
に設定する必要があります。
所有者/ルートとして、次を実行します。
chmod 700 -r [directory]
700
は所有者のみがフルアクセスできることを意味し、-r
はルールをサブフォルダーに適用することを意味します。次のことも必要になります。
chown user:user -r [/path/to/dir]
chown
コマンドは、所有者を変更します。 user:
は、所有者になるユーザー名です。 :user
はグループです。