OS

ubuntu 架設ftp server給學生上傳網站

學生練習時可能需要讓他們把作業(?)上傳到伺服器去測試看看,所以就會需要安裝apache php mysql等

裝好後還要再安裝ftp跟創立一堆的學生ftp帳號來給他們上傳作業。

首先當然是先來安裝ftp server拉

#安裝ftp
sudo apt-get install vsftpd
service vsftpd restart

安裝完畢後,要來設定一些ftp的功能,我們希望ftp 上傳的user只能看到他自己的家目錄,不能跑去看其他別人的作業跟系統檔案就會需要去編輯/etc/vsftpd.conf

 nano /etc/vsftpd.conf
 #設定使用者只能在他的加目錄
 chroot_local_user=yes
 #限定在家目錄,但是家目錄不再預設自己家時 要開這功能
 allow_writeable_chroot=YES
 # 設定 local_umask=002 主要是為了讓透過 FTP 上傳的檔案的預設群組權限為「可寫入」apache才能讀取打開
 local_umask=002
#支援檔案上傳
write_enable=YES

改好後就重開ftp 程式 service vsftpd restart

之後要來創見學生的帳號了,假設學生名稱為web01

#創一個目錄給學生自己專用
 mkdir /var/www/html/web01
#創帳號
 useradd -d /var/www/html/web01 -s /bin/bash web01
#創學生密碼
 sudo passwd web01
#把該目錄使用者改成學生擁有
 chown web01 /var/www/html/web01

這樣其實就可以了,如果要考試不想給各別學生透過網址去瀏覽別人的作品的話就會需要去編輯apache2.conf來限制web01這個目錄只能給特定學生的Ip(如:192.168.1.32)跟老師(192.168.1.101)瀏覽

vi /etc/apache2/apache2.conf

<Directory "/var/www/html/web01/">
        Options All
        AllowOverride All
        Require all denied
        Require ip 192.168.1.32 192.168.1.101
</Directory>

這樣子改玩出來重開apache就可以拉service apache2 restart

Be the First to comment.

Leave a Comment

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

(若看不到驗證碼,請重新整理網頁。)