常用CentOSvsftpd安裝設定講解
CentOS vsftpd還是比較常用的,於是我研究了一下CentOS vsftpd,在這裡拿出來和大家分享一下,希望對大家有用。這裡講解介紹centos vsftpd的設定。CentOS Linux與RHEL產品有著嚴格的版本對應關係,例如使用RHEL 4原始碼重新編譯釋出的是CentOS Linux 4.0,與RHEL 5對應的是CentOS Linux 5.0。
本地使用者經過設定後可以進行ftp訪問。而匿名使用者的訪問經過了轉換,在系統中。匿名使用者的使用者名稱為ftp, 系統將其屬性設定為 根目錄 /var/ftp/, 禁止控制檯登陸,也就是,該使用者只能進行ftp訪問。CentOS vsftpd 的執行程式為 /etc/vsftpd,修改 /etc/vsftpd/vsftpd.conf檔案中的listen要設定為YES.
CentOS vsftpd有兩種開機自啟動模式: inet模式和standalone模式,推薦使用standalone模式。
在CentOS中已整合了CentOS vsftpd軟體。CentOS vsftpd是一個安全高效的FTP服務軟體,得到了廣泛的應用。
本文介紹兩種常見安裝形式以及兩種安裝方式的配置
1.rpm包形式安裝
2.編譯安裝
1.rpm包形式安裝
一、CentOS vsftpd安裝
在服務中檢視是否已安裝VSFTPD服務。如沒有,下載並安裝:
rpm -ivh vsftpd-2.0.5-12.el5.i386.rpm
二、設定CentOS vsftpd自啟動
chkconfig –level 35 vsftpd on
三、CentOS vsftpd配置
1 開啟 /etc/vsftpd/vsftpd.conf檔案。將anonymous_enable=YES,改為anonymous_enable=NO
2 開啟 /etc/vsftpd/vsftpd.conf檔案。新增user_config_dir=/etc/vsftpd/virtual,並建立virtual目錄。在此目錄中建立以使用者名稱為檔名的檔案,並寫入:local_root=[目錄],這個目錄即是FTP連線時的主目錄。
3 限定使用者只在自己目錄:修改vsftpd.conf檔案,取消註釋:
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
在/etc/vsftpd/目錄下新增檔案chroot_list,加入作為FTP使用者的本地使用者名稱。
4 解決使用者無法進入目錄問題:
開啟終端,輸入:setsebool -P ftpd_disable_trans 1
然後重啟FTP服務:service vsftpd restart
四、許可權:
假設是/var/www/html
這個目錄的許可權應該是770,owner是root,group是ftp
chmod 770 /var/www/html
chown root:ftp /var/www/html
2.編譯安裝
vsftpd-2.0.1.tar.gz安裝筆記
1.安裝
tar xzvf vsftpd-2.0.1.tar.gz
cd vsftpd-2.0.1
make
make install
2.安裝配置檔案
#cp vsftpd.conf /etc/;
#cp RedHat/vsftpd.pam /etc/pam.d/ftp
3.編輯配置檔案/etc/vsftpd.conf
新增:listen=YES
4.啟動伺服器
#/usr/local/sbin/vsftpd &
mkdir /var/ftp
chmod og-w /var/ftp
5.若打算僅啟用/etc/ftpusers檔案中出現的使用者的話,則要修改/etc/pam.d/ftp中的deny為allow;否則,則出現在檔案中的使用者為禁止登入伺服器的使用者。
6 通過pam認證方式,新增虛擬使用者
(1)在/etc/pam.d/目錄中建立一個或者修改現有檔案ftp(若修改,則必順先註釋掉原來的可用項)
[root@VSFTP root]# touch /etc/pam.d/ftp
(2)在/etc/pam.d/ftp裡面加上如下的兩行
auth required (/lib/security/)pam_userdb.so db=/etc/vsftpd_login
account required (/lib/security/)pam_userdb.so db=/etc/vsftpd_login
注:括號內的路徑可以沒有。
(3)建立一系統的使用者名稱用密碼的檔案login.txt
[root@VSFTP root]# vi login.txt
在login.txt檔案中,輸入如下的內容。下面是我新增的FTP的虛擬使用者名稱和密碼,其中tom為使用者名稱,123是密碼;jerry為使用者名稱,123是密碼;其內容可以根據需要定製。
tom
123
jerry
123
(4)建立一個真實的使用者名稱vuser,其目錄可以根據需要來定,也可以按系統預設的來新增。
[root@VSFTP root]# useradd vuser
(5)改變其目錄/home/vuser的許可權,以使得其它使用者(如tom)登入時能檢視目錄下的檔案。
[root@VSFTP root]#chmod o+r /home/vuser
(6)通過db_load來建立虛擬使用者的庫檔案,此時要用到的原檔案是開始時建立的login.txt
[root@VSFTP root]# db_load -T -t hash -f login.txt /etc/vsftpd_login.db
(7)更改vsftpd.conf檔案,加入如下的幾行:
(pam_service_name=ftp)
guest_enable=YES
guest_username=vuser
(anon_world_readable_only=NO)
注:那些有關匿名的選項最好全部置為NO
(8)重啟vsFTPd伺服器:/usr/local/sbin/vsftpd &
7 把系統預設用standalone啟動改為用xinetd啟動
(1)在/etc/xinetd.d/目錄中建立一個檔案vsftpd
[root@VSFTP root]# touch /etc/xinetd.d/vsftpd
/etc/xinetd.d/vsftpd內容如下:
service ftp
{
socket_type = stream
wait = no
user = root
server = /usr/sbin/vsftpd
# server_args =
# log_on_success += DURATION USERID
# log_on_failure += USERID
nice = 10
disable = no
}
(2)複製vsftpd.conf到/etc/目錄下,因為xinetd對vsFTPd配製檔案應該在/etc目錄下,所以我們就必須把這個檔案複製到/etc目錄下,否則會出現系統中local使用者無法登入,也就是說,不復制這個檔案會出現ftp非匿名使用者無法訪問,只能用匿名使用者訪問。
[root@VSFTP root]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd.conf
(3)更改配製檔案/etc/vsftpd.conf,把如下的項注掉:也就是把
listen=YES
改為
#listen=YES
或者是把這行刪除也行。
(4)把/etc/init.d/vsftpd這個檔案刪除。其實最好的備份到別處,因為我們有時實驗來實驗去,可能還會轉到standalone模式啟動。我就直接移動到別的目錄,比如是/root下面的backup目錄。
[root@VSFTP root]#mkdir /root/backup
[root@VSFTP root]# mv /etc/init.d/vsftpd /root/backup
(5)執行ntsysv,把vsftpd的服務取消
[root@VSFTP root]#ntsysv
[ ] vsftpd
(6)重啟xinetd服務
[root@VSFTP root]# service xinetd restart
備註:
1.將vsftpd新增為xinetd啟動的話可能存在啟動後不能連線,可能是因iptables引起的,關閉iptables試試看
2.vsftpd隨系統啟動方法:
2.1 通過rc.local啟動: vsftpd.conf 新增listen=YES,/etc/rc.d/rc.local 新增 /usr/local/sbin/vsftpd &
2.2 通過xinetd啟動:註釋掉vsftpd.conf的listen=YES, 新增以下檔案
/etc/xinetd.d/vsftpd內容如下:
service ftp
{
socket_type = stream
wait = no
user = root
server = /usr/sbin/vsftpd
# server_args =
# log_on_success += DURATION USERID
# log_on_failure += USERID
nice = 10
disable = no
}
相關文章
- IntelliJ IDEA 常用設定講解IntelliJIdea
- Jmeter安裝設定JMeter
- Ubuntu安裝設定Ubuntu
- 影片講解:PX-Backup安裝
- 圖解python | 安裝與環境設定圖解Python
- 安裝並設定autotrace
- 講解Linux資料庫安裝Linux資料庫
- linux安裝截圖講解02Linux
- 如何安裝並設定 Vagrant
- 使用docker安裝設定oracleDockerOracle
- proftp 安裝設定文件(轉)FTP
- idea 快捷鍵,常用設定,外掛安裝,檢視位元組碼Idea
- Linux RPM包安裝、解除安裝、升級命令講解Linux
- 圖文講解Godoc的安裝與使用Go
- Oracle GoldenGate相關講解及安裝OracleGo
- 組策略常用設定詳解 -轉載
- PLSQL常用設定SQL
- mysql 5 安裝時或者安裝後設定字符集MySql
- Win32常用API講解Win32API
- 【ROS教程】ROS常用API講解ROSAPI
- centos安裝及設定 jdk/tomcatCentOSJDKTomcat
- MOM 2005 安裝設定初步
- oracle 安裝相關引數設定Oracle
- Ubuntu Linux:Apache安裝設定(轉)UbuntuLinuxApache
- CVS安裝及設定步驟
- Centos7 安裝Docker,常用命令,設定國內阿里雲映象,並且在docker中安裝MysqlCentOSDocker阿里MySql
- Redis 入門 - 安裝最全講解(Windows、Linux、Docker)RedisWindowsLinuxDocker
- LINUX下安裝ORACLE的常用設定引數及環境變數說明LinuxOracle變數
- 10046設定和檔案引數講解
- PL/SQL常用設定SQL
- 常用分析函式開窗講解函式
- 動畫講解Eclipse常用快捷鍵動畫Eclipse
- Redis——急速安裝並設定自啟(CentOS)RedisCentOS
- 樹莓派:設定與軟體安裝樹莓派
- Oracle安裝時shmmax引數的設定OracleHMM
- Windows平臺下sbt的安裝設定Windows
- ORACLE RAC的FLASHBACK後期安裝設定Oracle
- 在Ubuntu 8.04安裝設定snmpd筆記Ubuntu筆記