CentOS VSFTP采用RPM包安裝方式
1.此次為了測試了解一下,CentOS VSFTP,采用RPM包安裝方式
首先rpm -qa | grep CentOS VSFTP查看有無安裝,若沒有,則要安裝,我采用的是yumyum install vsftpd見下:
- [root@ftp sbin]# yum install vsftpd
- [root@ftp sbin]# service vsftpd status
- vsftpd is stopped
- [root@ftp sbin]# service vsftpd start
- Starting vsftpd for vsftpd: [ OK ]
- [root@ftp sbin]#
2.設置每次開機時自動運行及手工啟動它:
- chkconfig vsftpd on
- service vsftpd start
- netstat -tl 可以查看ftp端口是否在偵聽了!
- 相關配置文件:/etc/vsftpd/vsftpd.conf里面;
3.至此已經可以FTP已經可以正常運行了,
4.FTP配置參考以下設置:初級測試篇:(注:匿名用戶使用ftp這個系統(tǒng)用戶,無需密碼)a. 匿名服務器的連接(獨立的服務器)在/etc/vsftpd/vsftpd.conf配置文件中添加如下幾項:
- Anonymous_enable=yes (允許匿名登陸)
- Dirmessage_enable=yes (切換目錄時,顯示目錄下.message的內容)
- Local_umask=022 (FTP上本地的文件權限,默認是077)
- Connect_form_port_20=yes (啟用FTP數據端口的數據連接)*
- Xferlog_enable=yes (激活上傳和下載的日志)
- Xferlog_std_format=yes (使用標準的日志格式)
- Ftpd_banner=XXXXX (歡迎信息)
- Pam_service_name=vsftpd (驗證方式)*
- Listen=yes (獨立的VSFTPD服務器)*
功能:只能連接FTP服務器,不能上傳和下載注:其中所有和日志歡迎信息相關連的都是可選項,打了星號的無論什么帳戶都要添加,是屬于FTP的基本選項
b. 開啟匿名FTP服務器上傳權限在配置文件中添加以下的信息即可:
- Anon_upload_enable=yes (開放上傳權限)
- Anon_mkdir_write_enable=yes (可創(chuàng)建目錄的同時可以在此目錄中上傳文件)
- Write_enable=yes (開放本地用戶寫的權限)
- Anon_other_write_enable=yes (匿名帳號可以有刪除的權限)
c. 開啟匿名服務器下載的權限在配置文件中添加如下信息即可:Anon_world_readable_only=no注:要注意文件夾的屬性,匿名帳戶是其它(other)用戶要開啟它的讀寫執(zhí)行的權限(R)讀-----下載 (W)寫----上傳 (X)執(zhí)行----如果不開FTP的目錄都進不去
d.普通用戶FTP服務器的連接(獨立服務器)在配置文件中添加如下信息即可:
Local_enble=yes (本地帳戶能夠登陸)
Write_enable=no (本地帳戶登陸后無權刪除和修改文件)
功能:可以用本地帳戶登陸CentOS VSFTP服務器,有下載上傳的權限
注:在禁止匿名登陸的信息后匿名服務器照樣可以登陸但不可以上傳下載
e. 用戶登陸限制進其它的目錄,只能進它的主目錄
設置所有的本地用戶都執(zhí)行chroot
Chroot_local_user=yes (本地所有帳戶都只能在自家目錄)
設置指定用戶執(zhí)行chroot
Chroot_list_enable=yes (文件中的名單可以調用)
Chroot_list_file=/任意指定的路徑/vsftpd.chroot_list
注意:vsftpd.chroot_list 是沒有創(chuàng)建的需要自己添加,要想控制帳號就直接在文件中加帳號即可
f. 限制本地用戶訪問FTP
Userlist_enable=yes (用userlistlai 來限制用戶訪問)
Userlist_deny=no (名單中的人不允許訪問)
Userlist_file=/指定文件存放的路徑/ (文件放置的路徑)
注:開啟userlist_enable=yes匿名帳號不能登陸
g. 安全選項
Idle_session_timeout=600(秒) (用戶會話空閑后10分鐘)
Data_connection_timeout=120(秒) (將數據連接空閑2分鐘斷)
Accept_timeout=60(秒) (將客戶端空閑1分鐘后斷)
Connect_timeout=60(秒) (中斷1分鐘后又重新連接)
Local_max_rate=50000(bite) (本地用戶傳輸率50K)
Anon_max_rate=30000(bite) (匿名用戶傳輸率30K)
Pasv_min_port=50000 (將客戶端的數據連接端口改在
Pasv_max_port=60000 50000—60000之間)
Max_clients=200 (FTP的最大連接數)
Max_per_ip=4 (每IP的最大連接數)
Listen_port=5555 (從5555端口進行數據連接)
h. 查看誰登陸了FTP,并殺死它的進程
ps –xf |grep ftp
kill 進程號
5. 高階部分測試篇:
配置本地組訪問的FTP
首先創(chuàng)建用戶組 test和FTP的主目錄
groupadd test
mkdir /tmp/test
然后創(chuàng)建用戶
useradd -G test –d /tmp/test –M usr1
注:G:用戶所在的組 d:表示創(chuàng)建用戶的自己目錄的位置給予指定
M:不建立默認的自家目錄,也就是說在/home下沒有自己的目錄
useradd –G test –d /tmp/test –M usr2
接著改變文件夾的屬主和權限
chown usr1.test /tmp/test ----這表示把/tmp/test的屬主定為usr1
chmod 750 /tmp/test ----7表示wrx 5表示rx 0表示什么權限都沒有
這個實驗的目的就是usr1有上傳、刪除和下載的權限
而usr2只有下載的權限沒有上傳和刪除的權限
當然啦大家別忘了我們的主配置文件CentOS VSFTP.conf
修改用戶密碼或添加用戶密碼
以用戶name為例,添加用戶:useradd name,設置密碼:passwd name,然后根據提示,輸入兩次密碼即可。
刪除用戶:userdel name,其實并沒有完全刪除,只是該用戶不能登陸,其目錄下的文件還在保留。
如:useradd username
passwd username
userdel username
要確定local_enable=yes、write_enable=yes、chroot_local_usr=yes這三個選項是有的!
6. CentOS VSFTP.conf里面的參數簡要說明:
Anonymous_enable=yes (允許匿名登陸)
Dirmessage_enable=yes (切換目錄時,顯示目錄下.message的內容)
Local_umask=022 (FTP上本地的文件權限,默認是077)
Connect_form_port_20=yes (啟用FTP數據端口的數據連接)*
Xferlog_enable=yes (激活上傳和下傳的日志)
Xferlog_std_format=yes (使用標準的日志格式)
Ftpd_banner=XXXXX (歡迎信息)
Pam_service_name=vsftpd (驗證方式)*
Listen=yes (獨立的CentOS VSFTP服務器)*
Anon_upload_enable=yes (開放上傳權限)
Anon_mkdir_write_enable=yes (可創(chuàng)建目錄的同時可以在此目錄中上傳文件)
Write_enable=yes (開放本地用戶寫的權限)
Anon_other_write_enable=yes (匿名帳號可以有刪除的權限)
Anon_world_readable_only=no (放開匿名用戶瀏覽權限)
Ascii_upload_enable=yes (啟用上傳的ASCII傳輸方式)
Ascii_download_enable=yes (啟用下載的ASCII傳輸方式)
Banner_file=/var/vsftpd_banner_file (用戶連接后歡迎信息使用的是此文件中的相關信息)
Idle_session_timeout=600(秒) (用戶會話空閑后10分鐘)
Data_connection_timeout=120(秒) (將數據連接空閑2分鐘斷)
Accept_timeout=60(秒) (將客戶端空閑1分鐘后斷)
Connect_timeout=60(秒) (中斷1分鐘后又重新連接)
Local_max_rate=50000(bite) (本地用戶傳輸率50K)
Anon_max_rate=30000(bite) (匿名用戶傳輸率30K)
Pasv_min_port=50000 (將客戶端的數據連接端口改在
Pasv_max_port=60000 50000—60000之間)
Max_clients=200 (FTP的最大連接數)
Max_per_ip=4 (每IP的最大連接數)
Listen_port=5555 (從5555端口進行數據連接)
Local_enble=yes (本地帳戶能夠登陸)
Write_enable=no (本地帳戶登陸后無權刪除和修改文件)
這是一組
Chroot_local_user=yes (本地所有帳戶都只能在自家目錄)
Chroot_list_enable=yes (文件中的名單可以調用)
Chroot_list_file=/任意指定的路徑/vsftpd.chroot_list
(前提是chroot_local_user=no)
這又是一組
Userlist_enable=yes (在指定的文件中的用戶不可以訪問)
Userlist_deny=yes
Userlist_file=/指定的路徑/vsftpd.user_list
又開始單的了
Banner_fail=/路徑/文件名 (連接失敗時顯示文件中的內容)
Ls_recurse_enable=no
Async_abor_enable=yes
One_process_model=yes
Listen_address=10.2.2.2 (將虛擬服務綁定到某端口)
Guest_enable=yes (虛擬用戶可以登陸)
Guest_username=所設的用戶名 (將虛擬用戶映射為本地用戶)
User_config_dir=/任意指定的路徑/為用戶策略自己所建的文件夾
(指定不同虛擬用戶配置文件的路徑)
又是一組
Chown_uploads=yes (改變上傳文件的所有者為root)
Chown_username=root
又是一組
Deny_email_enable=yes (是否允許禁止匿名用戶使用某些郵件地址)
Banned_email_file=//任意指定的路徑/xx/
又是單的
Pasv_enable=yes ( 服務器端用被動模式)
User_config_dir=/任意指定的路徑//任意文件目錄 (指定虛擬用戶存放配置文件的路徑)
【編輯推薦】