FTP経由でWebサイトを変更しようとしていますが、ファイルを保存すると、アクセス許可と所有者がユーザー名に変更されます。許可を変更せずに、Sambaを介して同じフォルダー内のファイルを編集できます。 /var/www
フォルダーのアクセス許可がどのように機能するか本当に理解していないので、機能させるために髪を引っ張っています。最近、/var/www
ディレクトリのアクセス許可を変更しました( このガイド に続く)。したがって、wwwルートのファイルを変更できます。現在、/var/www
の内容全体が-rwxrwxr-x 1 www-data www-data
に設定されていますが、ftpでファイルを変更すると-rw------- 1 akbkuku akbkuku
になり、akkbkukuがユーザー名になります。サーバーとしてvsftpdを使用しており、通常のユーザーでログインしています。
許可だけに任せるにはどうすればよいですか?
この時点で、すべてのアクセス許可をストックにリセットする方法を取り、Webルートのファイルを変更することはありません。
設定は、使用しているFTPクライアントによって異なります。接続しているFTPサーバーもある程度。
通常、ftpコマンドラインから、次のことができます。
Webサイトにファイルが表示されることを確認する場合は、ファイルが世界で読み取り可能であること(およびディレクトリにRXビットが設定されていること)を確認してください。
Vsftpd構成の問題である可能性があります。 -rw-------
を取得している場合、オプションfile_open_mode
が0600またはlocal_umask
が060に設定されている可能性があります。man vsftpd.conf
から:
file_open_mode
アップロードされたファイルが作成される許可。 Umasksはこの値の上に適用されます。アップロードしたファイルを実行可能にする場合は、0777に変更することをお勧めします。
デフォルト:0666
local_umask
ファイル作成用のumaskがローカルユーザー用に設定されている値。
デフォルト:077
-rw-rw-r--
が必要な場合は、/etc/vsftpd.conf
:file_open_mode=0660
、local_umask=066
の1つまたは両方のオプションを変更できます。
この変更はサーバー全体に適用されることに注意してください。アップロードされたすべてのファイルは、/var/www
以外のアクセス可能なディレクトリでもない場合でも、660のアクセス許可を取得しますが、これは望んでいない場合があります。