web-dev-qa-db-ja.com

FTPファイル変更許可

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ルートのファイルを変更することはありません。

1
AkBKukU

設定は、使用しているFTPクライアントによって異なります。接続しているFTPサーバーもある程度。

通常、ftpコマンドラインから、次のことができます。

  1. セッションのumaskを設定する、または
  2. 所有しているファイル/ディレクトリの権限を変更します。

Webサイトにファイルが表示されることを確認する場合は、ファイルが世界で読み取り可能であること(およびディレクトリにRXビットが設定されていること)を確認してください。

2
mdpc

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.conffile_open_mode=0660local_umask=066の1つまたは両方のオプションを変更できます。

この変更はサーバー全体に適用されることに注意してください。アップロードされたすべてのファイルは、/var/www以外のアクセス可能なディレクトリでもない場合でも、660のアクセス許可を取得しますが、これは望んでいない場合があります。

1
sierrasdetandil