2012年6月30日 星期六

FTP server for Ubuntu 12.04

 用Google找了一下,大多數是用vsftpd。vsftpd是"Very Secure FTP Daemon"的意思,通常提到secure的意思就是有些小地方要注意設定,不然它理都不理你。

sudo apt-get install vsftpd

安裝之後編輯/etc/vsftpd.conf來作設定。

這裡分幾個情況來說明

Anonymous Read-Only Access
編輯/etc/vsftpd.conf
anonymous_enable=YES
anon_root=/home/ftp 
要注意的是anon_home這個目錄的設定,我習慣將它設定成/home/ftp,將它的owner:group設定成ftp:ftp,mode設定成0577。這個目錄對ftp user而言一定不可以是writable,不然login時會有訊息抱怨權限錯誤。

Anonymous Read-Write Access
編輯/etc/vsftpd.conf,除了上述的兩個變數之外有一些額外的設定
write_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_upload_enable=YES

上面的設定變數如果沒有需要可以不打開,各變數的說明請man vsftpd.conf

Local User Access
編輯/etc/vsftpd.conf

local_enable=YES


Server上有帳號的人(local users)可以login,login之後是到自己的home directory。

2012年6月9日 星期六

TFTP server for Ubuntu 12.04

用apt-get直接裝TFTP server套件。

    sudo apt-get install tftpd-hpa

Default options放在 /etc/default/tftp-hpa

# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/var/lib/tftpboot"
TFTP_ADDRESS="0.0.0.0:69"
TFTP_OPTIONS="--secure"

TFTP_DIRECTORY 是TFTP的檔案存放目錄.,我是將它改成rw for all,不知有沒有甚麼副作用?

    sudo chmod a+rw /var/lib/tftpboot

在Ubuntu上面直接裝的TFTP server套件不會在開機時執行,精確一點說應該是開機時跑了卻沒有起來。這是個老毛病,修一下就好。
編輯 /etc/init/tftpd-hpa.conf ,修改它錯誤的初始條件。

#start on runlevel [2345] # the original line which is wrong
start on (filesystem and net-device-up IFACE!=lo)