Wednesday, March 31, 2010

vsftpd架設

給未來的裕翔

vsftpd是一個ftp server套件

安裝開啟就馬上有anonymous download的功能了

當然, iptables要先對tcp的port 21開放, hosts.allow也要設定

如果現在想要新增anonymous upload功能

要先處理selinux的問題, 所謂的處理不是關閉它^^

getsebool -a | grep ftp

然後用大腦對適當的設定永久(-P)開啟

setsebool -P allow_ftpd_anon_write 1

/var/ftp底下新增一個工上傳的資料夾, ex: upload

mkdir /var/ftp/upload

chown root.ftp upload

chmod g+w upload 做存取的動作是ftp這位user

記得要對它的context修改, selinux只允許'有資格的'資料夾供上傳

chcon -t public_content_rw_t upload

到此, 大環境已設定好, 剩最後一道關卡

/etc/vsftpd/vsftpd.conf

確定下行非註解

anon_upload_enable=YES

如果進一步不希望upload資料夾被有心人濫用

可以把upload資料夾的read權限對group, other拿掉

如果希望上傳的檔案馬上換owner

可以考慮對/etc/vsftpd/vsftpd.conf設定以下:

chown_uploads=YES

chown_username=root

anon_umask=077

其它小實驗:

ftp client端太久沒用會被踢開

ftp裡面沒有tab補齊檔名的功能

防火牆如果突然設定不開放21並重啟, 連線中的ftp不會被影響

即使是連線中, selinux的allow_ftpd_anon_write可以馬上生效

vsftpd套件移除, 上傳或供下載的檔案都還在

裝好的vsftpd開啟就可以供下載檔案了

如果不能上傳單純因為權限, server改完權限client馬上就可以上傳了, 不需要重登

selinux的效力依舊是最大

No comments:

Post a Comment