RedhatLinux上vsftpd編譯安裝 |
發(fā)布時(shí)間: 2012/8/13 10:34:48 |
以root賬戶登錄RedHatbashshell
[root@redhat~]#tar-zxvfvsftpd-2.0.5.tar.gz//解壓vsftpsource文件 [root@redhat~]#cdvsftpd-2.0.5//進(jìn)入解壓后的目錄 [root@redhatvsftpd-2.0.5]#moreINSTALL//看看安裝說(shuō)明。比如要做什么工作。是個(gè)英文文檔。 [root@redhatvsftpd-2.0.5]#useraddnobody//這里需要加一個(gè)nobody用戶。大家可以使用fingernobody查看下?词欠裼羞@個(gè)用戶。用就不需要加了 [root@redhatvsftpd-2.0.5]#mkdir/usr/share/empty//這一步同上。服務(wù)器需要一個(gè)empty的空目錄放在/usr/share/下。可以使用ls/usr/share/empty查看。如果存在就不需要了。這步也可以跳過(guò) 如果需要開(kāi)啟匿名用戶訪問(wèn),需要做下面幾步工作 [root@redhatvsftpd-2.0.5]#mkdir/var/ftp///創(chuàng)建供匿名用戶使用的目錄 [root@redhatvsftpd-2.0.5]#useradd-d/var/ftpftp//創(chuàng)建ftp用戶并且指定家目錄為/var/ftp,這個(gè)步驟一般的系統(tǒng)也有。如果創(chuàng)建提示:userftpexists(FTP用戶存在)就表示此用戶已經(jīng)存在。 繼續(xù)下一步 [root@redhatvsftpd-2.0.5]#chownroot.root/var/ftp//設(shè)置/var/ftp,也就是ftp用戶的家目錄屬組和屬主都是root,為了安全。這步還是需要的 [root@redhatvsftpd-2.0.5]#chmodog-w/var/ftp//更改權(quán)限,去掉屬組和其他人的寫(xiě)權(quán)限 上面這寫(xiě)工作做完了。下面就可以便宜了 [root@redhatvsftpd-2.0.5]#make//編譯二進(jìn)制文件 [root@redhatvsftpd-2.0.5]#makeinstall//安裝,安裝的時(shí)候可以看到安裝的相關(guān)文件。 [root@redhatvsftpd-2.0.5]#cpvsftpd.conf/etc///拷貝配置文件 [root@redhatvsftpd-2.0.5]#cpRedHat/vsftpd.pam/etc/pam.d/ftp//拷貝PAM安全驗(yàn)證文件此為驗(yàn)證文件所在的目錄 [root@redhatvsftpd-2.0.5]#vi/etc/vsftpd.conf 然后按,跳到行尾。設(shè)置pam_server_name=ftp(要與你的PAM文件同名);userlist_enable=YES(用戶列表的用戶不允許登入服務(wù)器)。然后:wq保存退出 [root@redhatvsftpd-2.0.5]#cpvsftpd.conf.5/usr/local/man/man5 [root@redhatvsftpd-2.0.5]#cpvsftpd.8/usr/local/man/man8 基本到這里。所有工作就做完了。但是還要說(shuō)點(diǎn)東西 默認(rèn)情況下vsftp是以超級(jí)守護(hù)進(jìn)程(xinetd)運(yùn)行的。 啟動(dòng)方式(二種方式) [root@redhatvsftpd-2.0.5]#servicexinetdrestart//重啟超級(jí)守護(hù)進(jìn)程就等于啟動(dòng)了vsftp 另外一個(gè)方式,就是獨(dú)立運(yùn)行需要修改配置文件 [root@redhatvsftpd-2.0.5]#vi/etc/vsftpd.conf 然后按,跳到行尾。加上listen=YES.然后:wq保存退出 這樣就可以使用下面這條語(yǔ)句啟動(dòng) [root@redhatvsftpd-2.0.5]#/usr/local/sbin/vsftpd&//后臺(tái)啟動(dòng)vsftp [root@redhatvsftpd-2.0.5]#echo"/usr/local/sbin/vsftpd&">>/etc/rc.local//追加到啟動(dòng)腳本上 上面兩種方式可隨意使用。我還對(duì)啟動(dòng)腳本做了一些實(shí)驗(yàn)(以servicevsftpdstart這種方式啟動(dòng)),最終還是失敗了。但是我想說(shuō)。我努力了。由于本人對(duì)shell編程不是很了解。未能寫(xiě)出一個(gè)使用的腳本,哎。學(xué)!可能還是有辦法解決。使用RPM方式安裝一個(gè)vsftp,然后看看init.d里面的腳本是怎么寫(xiě)的。 下面貼一個(gè)別人的關(guān)于配置的文章 #匿名用戶 anonymous_enable=NO #anon_mkdir_write_enable=YES #anon_upload_enable=YES #本地用戶能否登陸 #local_enable=YES #是否可寫(xiě) write_enable=YES #VSFTPD獨(dú)立運(yùn)行(用vsftpd/etc/vsftpd.conf&)以及下載速度的限制 listen=YES max_clients=600 max_per_ip=5 tcp_wrappers=YES connect_from_port_20=YES #anon_max_rate=51200(56k) #local_max_rate=512000(560k) #如何更改路徑 #anon_root=/var/ftp/pub #local_root=/var/ftp #如何隨意增加一個(gè)用戶目錄 通過(guò)useradd-d/path/dir-Mname以及chmod?/path/dir可以達(dá)到 #如何對(duì)磁盤(pán)限額 用quota對(duì)/etc/fstab進(jìn)行限制,然后對(duì)特定用戶進(jìn)行限制 補(bǔ)充: 補(bǔ)充一:如何把用戶限制在家目錄中呢? 我們要自己建一個(gè)文件,在/etc目錄中 #touch/etc/vsftpd.chroot_list 以beinan這個(gè)用戶為例 在vsftpd.chroot_list這個(gè)文件中,把beinan添上去就行。 然后改/etc/vsftpd/vsftpd.conf文件,找如下的兩行 #chroot_list_enable=YES #chroot_list_file=/etc/vsftpd.chroot_list 把前面的#號(hào)去掉,也就是這樣的 chroot_list_enable=YES chroot_list_file=/etc/vsftpd.chroot_list 如果沒(méi)有這樣的兩行,就可以自己添加上去也是一樣的。 設(shè)置好后,重新vsFTPD服務(wù)器。 補(bǔ)充二:打開(kāi)vsFTP服務(wù)器的日志功能: 把下面xferlog_file前面的#號(hào)對(duì)掉,也就是把vsftp的log功能打開(kāi),這樣我們就能在/var/log目錄下查看vsftpd.log.這是vsFTP的日志功能,這對(duì)于我們來(lái)說(shuō)是極為重要的。 #xferlog_file=/var/log/vsftpd.log 補(bǔ)充三:如何讓綁定IP到vsFTP?也就是說(shuō),如何讓用戶只能通過(guò)某個(gè)IP來(lái)訪問(wèn)FTP.其實(shí)這個(gè)功能很有意思。如果綁定的是內(nèi)網(wǎng)的IP,外部是沒(méi)有辦法訪問(wèn)的。如果綁定的是對(duì)外服務(wù)的IP,內(nèi)網(wǎng)也只能通過(guò)對(duì)外服務(wù)的IP來(lái)訪問(wèn)FTP 在/etc/vsftpd/vsftpd.conf中加一行,以我的局域網(wǎng)為例,請(qǐng)看第一帖中的操作環(huán)境,這樣外網(wǎng)就不能訪問(wèn)我的FTP了,內(nèi)網(wǎng)也可能通過(guò)192.168.0.2來(lái)訪問(wèn)FTP listen_address=192.168.0.2 加完后,要重啟vsFTP服務(wù)器。 本文出自:億恩科技【mszdt.com】 服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM] |