centos6.5安裝FTP


一、vsftp安裝

yum -y install vsftpd   # 安裝vsftpd
chkconfig vsftpd on   # 開啟啟動

二、vsftp相關命令

service vsftpd start    # 啟動ftp服務
service vsftpd status   # 查看ftp服務狀態
service vsftpd restart   # 重啟ftp服務
service vsftpd stop     # 關閉ftp服務

三、vsftp配置

vim /etc/vsftpd/vsftpd.conf   #進入vsftpd配置文件
anonymous_enable=NO   # 禁止匿名用戶anonymous登錄
local_enable=YES   # 允許本地用戶登錄
write_enable=YES   # 讓登錄的用戶有寫權限(上傳,刪除)
local_umask=022   # 默認umask
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=NO      # 把傳輸記錄的日志保存到/var/log/vsftpd.log
ascii_upload_enable=YES    # 允許ASCII模式上傳
ascii_download_enable=YES   # 允許ASCII模式下載
connect_from_port_20=YES   # 使用20號端口傳輸數據
ftpd_banner=Welcome to use my test ftp server.   # 歡迎標語
# chroot_local_user設置了YES,那么所有的用戶默認將被chroot, 也就用戶目錄被限制在了自己的home下,無法向上改變目錄。
# chroot_list_enable設置了YES,即讓chroot用戶列表有效。


# ★超重要:如果chroot_local_user設置了YES,那么chroot_list_file 設置的文件里,是不被chroot的用戶(可以向上改變目錄)


# ★超重要:如果chroot_local_user設置了NO,那么chroot_list_file 設置的文件里,是被chroot的用戶(無法向上改變目錄)


# touch /etc/vsftpd/chroot_list 新建
chroot_list_file=/etc/vsftpd/chroot_list
use_localtime=YES
listen=YES   # 以standalone模式在ipv4上運行
# PAM認證服務名,這里默認是vsftpd,在安裝vsftpd的時候已經創建了這個pam文件,
# 在/etc/pam.d/vsftpd,根據這個pam文件里的設置,/etc/vsftpd/ftpusers
# 文件里的用戶將禁止登錄ftp服務器,比如root這樣敏感的用戶,所以你要禁止別的用戶
# 登錄的時候,也可以把該用戶追加到/etc/vsftpd/ftpusers里。
pam_service_name=vsftpd
service vsftpd restart   # 重啟 vsftpd

四、vsftp用戶

sudo useradd -d /home/ftp ysj     # 創建用戶
chown -R username /home/ftp     # 設置用戶到文件夾
usermod –s /sbin/nologin ysj    /禁止用戶登錄系統

chown -R 777  /home/ftp        /設置該文件的權限

passwd ysj -> 密碼 -> 確認密碼    # 添加密碼

 

訪問ftp時字符亂碼問題:

1.修改LANG環境變量 [root@centos ~]vim /etc/sysconfig/i18n

LANG =“zh_CN.UTF-8”

查看相關字符集命令[root@centos ~]# locale

瀏覽器默認為Unicode(UTF-8)

 

 

 

 

 

 

 

 

 

 

 

配置vsftpd使不同的虛擬用戶使用不同的目錄

需求:

t1     只能上傳文件

t2     只能下載文件

t3     上傳下載文件,同時可以創建文件夾,修改文件的名稱

1創建文本文件loguser.txt

格式如下:

user_id

password

創建建3個虛擬用戶,密碼是與用戶名相同,創建虛擬用戶數據庫

於是,我們/etc/vsftpd/login.txt文件的內容為

t1

111

t2

222

t3

333

2 生成數據庫

如果你以前沒裝過libdb4.7-util 或者你不清楚裝沒裝,需先執行下面的命令

rpm-qa |grep db4

然后,我們執行

db_load -T -t hash -f /etc/vsftpd/login.txt /etc/vsftpd/vsftpd_login.db

最后設置一下數據庫文件的訪問權限

chmod 600 /etc/vsftpd/vsftpd_login.db

3 配置PAM文件

新建/etc/pam.d/vsftpd 內容如下:

auth required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

account required /lib/security/pam_userdb.so db=/etc/vsftpd/vsftpd_login

我們上一步建立的數據庫 vsftpd_login 在此處被使用

我們建立的虛擬用戶將采用PAM進行驗證,這是通過/etc/vsftpd.conf文件中的 語句pam_service_name=vsftpd來啟用的,稍后你將發現。

4為虛擬用戶創建本地系統用戶

新建一個系統用戶ftp,用戶家目錄為/home/ftp, 用戶登錄終端設為/bin/false(即使之不能登錄系統)

useradd ftp -d /home/ftp -s /sbin/nologin

chown ftp:ftp /home/ftp

5根據需要創建/etc/vsftpd.conf,一般要確保含有以下設置:

listen=YES

anonymous_enable=NO

dirmessage_enable=YES

xferlog_enable=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

chroot_local_user=YES

guest_enable=YES

guest_username=ftp

user_config_dir=/etc/vsftpd_user_conf

pam_service_name=vsftpd

local_enable=YES

secure_chroot_dir=/var/run/vsftpd

現在為止,我們的3個用戶都可以工作了,可是它們的根目錄現在都是/home/ftp,權限也都一樣。 那么怎么才能完成我們預定的目標呢?

 

在上面的配置中,有這么一行

user_config_dir=/etc/vsftpd_user_conf

現在,我們要把各個用戶的配置文件放到目錄/etc/vsftpd_user_conf中

mkdir /etc/vsftpd_user_conf

cd /etc/vsftpd_user_conf

touch t1 t2 t3

t1文件中的內容如下

anon_world_readable_only=no

local_root=/home/ftp/t1

write_enable=yes

anon_upload_enable=yes

download_enable=no

anon_mkdir_write_enable=no

anon_other_write_enable=no

同樣,t2文件中的內容

anon_world_readable_only=no

local_root=/home/ftp/t2

write_enable=no

anon_upload_enable=no

anon_mkdir_write_enable=no

anon_other_write_enable=no

那么,t3的內容呢? 其實也很簡單

anon_world_readable_only=no

write_enable=yes

anon_upload_enable=yes

anon_mkdir_write_enable=yes

anon_other_write_enable=yes

local_root=/home/ftp/t3

這里要注意不能有空格,不然登錄的時候會提示出錯。

重啟vsftpd我們就可以看到效果了

/etc/init.d/vsftpd restart

PS:千萬別忘了修改文件夾t1,t2,t3的訪問權限。

chown ftp:ftp /home/ftp/t1

chown ftp:ftp /home/ftp/t2

chown ftp:ftp /home/ftp/t3

或者使用命令

chown -R ftp:ftp /home/ftp

修改ftp下的所有文件夾的訪問屬性。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM