自分しかアクセスしない(できない)FTPサーバ(vsFTPd on CentOS)にanomnymousでファイルを転送できるようにしたい。
(vsFTPdやファイアウォール等の他の設定は既にしてある。)
- vsFTPdで使うディレクトリの所有者設定(グループは関係ないかも)
mkdir /var/ftp/my
chown ftp:ftp /var/ftp/my - vsFTPdの設定ファイルを編集する
vi /etc/vsftpd/vsftpd.conf
- anonymousについての設定をする
# Allow anonymous FTP? (Beware - allowed by default if you comment this out).
anonymous_enable=YES
# obviously need to create a directory writable by the FTP user.
anon_upload_enable=YES - vsFTPdを再起動
/etc/init.d/vsftpd restart
Windowsのコマンドプロンプトから接続してみる
- 接続(-Aはanonymousにするオプション)
C:>ftp -A 192.168.1.xxx
Connected to 192.168.1.xxx.
220 (vsFTPd 2.0.5)
331 Please specify the password.
230 Login successful.
Anonymous login succeeded for xxx@xxx - 最初いる場所は「/var/ftp」なので、所有者をftpにしたディレクトリに移動
ftp> cd my
250 Directory successfully changed. - ファイルを転送
ftp> put c:test.txt
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 File receive OK.
ftp: 24 bytes sent in 0.00Seconds 24000.00Kbytes/sec. - これで/var/ftp/my/test.txtに転送された。このファイルのアクセス権限を見てみる
-rw------- 1 ftp ftp
- vsftpd.confのlocal_umaskは"022"にしてあるが、これはanonymousには適用されないようだ
参考:
floatingdays: Linuxコマンド備忘録
How to build Internet Server with Linux: ftpのセキュリティ
ファイルのパーミッション、アクセス権限について (Unix Linux)
0 件のコメント:
コメントを投稿