国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 服務器 > Ftp服務器 > 正文

VSFTPD配置(匿名——本地用戶——虛擬用戶)

2024-09-09 20:58:58
字體:
來源:轉載
供稿:網友
1,下載VSFTPD.TAR.GZ
程序下載地址:ftp://vsftpd.beasts.org/users/cevans/
2,檢查和建立相應賬戶和目錄
1,nobody用戶
[root@main vsftpd-2.1.0]# cat /etc/passwd |grep nobody
nobody:x:99:99:Nobody:/:/sbin/nologin
如不存在請建立相關賬戶。
2,/usr/share/empty 目錄, 如不存在請創建
3,如允許匿名訪問,需創建Ftp用戶,家目錄為/var/ftp(一般ftp用戶存在而家目錄不存在)
[root@main vsftpd-2.1.0]# mkdir /var/ftp/
[root@main vsftpd-2.1.0]# chown root.root /var/ftp
[root@main vsftpd-2.1.0]# chmod 755 /var/ftp

3,解壓、編譯、安裝程序(其實vsftpd用rpm和用源碼安裝差不多,編譯安裝反而不方便,推薦各位RPM安裝,呵呵)
[root@main ~]# tar xzfv vsftpd-2.1.0.tar.gz
[root@main ~]# cd vsftpd-2.1.0
[root@main vsftpd-2.1.0]# make && make install
4,復制相關文件
如果是用RPM安裝,可能會和源碼安裝的文件路徑略有不同,如/etc/vsftpd.conf變成了/etc/vsftpd/vsftpd.conf,這類變動請自行 find相關文件。
主配置文件
[root@main vsftpd-2.1.0]# cp vsftpd.conf /etc/vsftpd.conf
PAM身份驗證用文件
[root@main vsftpd-2.1.0]# cp RedHat/vsftpd.pam /etc/pam.d/ftp
5,配置vsftpd.conf
啟用/禁止匿名用戶訪問。
anonymous_enable=YES/NO
允許本地用戶登錄并允許其上傳文件。
local_enable=YES
write_enable=YES
將本地用戶鎖定在主目錄中,不允許切換到上一級目錄中
chroot_local_user=YES
匿名和本地用戶限速(單位byte)
anon_max_rate=數字
local_max_rate=數字
禁止某些用戶通過ftp登錄服務器。如果設置了local_enable=YES,那么所有的用戶包括root也能通過ftp登錄服務器,出于安全考慮,需要對某些用戶進行限制。在vsftpd.conf中有三個選項控制:
userlist_deny=YES/NO
userlist_enalbe=YES
userlist_file=/etc/vsftpd.user_list
如果userlist_deny=YES,/etc/vsftpd.user_list中列出的用戶名就不允許登錄ftp服務器;如果userlist_deny=NO,/etc/vsftpd.user_list中列出的用戶名允許登錄ftp服務器。我們只要在/etc目錄下創建vsftpd.user_list文件,文件內容為允許登錄或禁止登錄的用戶名,每個用戶一行。
禁止用戶通過FTP修改文件或文件夾的權限。
chmod_enable=NO(
設置本地用戶上傳的文件或文件夾的umask值(默認為077)
local_umask=022
最多同時允許100個客戶連接
max_clients=100
每個ip地址最多允許開3個線程
max_per_ip=3
只監聽來訪問192.168.0.2(適用本機多網卡、多IP的情況)的FTP服務請求
listen_address=192.168.0.2
6,安裝完成后使用vsftpd命令即可啟動vsftpd服務。保證防火墻開放相關端口后嘗試下匿名登陸吧,注意所有匿名用戶都登錄到相同的目錄中/var/ftp。
我們可以通過pgrep vsftpd 來查看vsftpd是否運行起來,可以用pkill vsftpd 來殺死vsftpd進程,把vsFTPd關閉。所以上文說更推薦用rpm安裝,那樣就可以用service vsftpd start|stop|restart來控制了。
[root@main ~]# pgrep vsftpd
2745
[root@main ~]# pkill vsftpd
7,設置pub目錄,允許匿名用戶上傳、下載文件。
更改配置文件,確保有這幾項:
anonymous_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_umask=022
新建文件夾,并更改權限。
[root@main ~]# mkdir /var/ftp/pub
[root@main ~]# chmod 777 /var/ftp/pub
嘗試一下匿名上傳下載吧,應該沒問題。
8,設置使用本地用戶登陸FTP服務器,并進行權限設置。
添加一個只能從ftp登錄服務器,而不能從本地shell登錄的用戶。以下創建一個用戶ftpuser,不允許從本地登錄
[root@localhost root]# useradd -g ftp -s /sbin/nologin ftpuser
創建賬戶和密碼后改一下配置文件vsftpd.conf ,以確保本地虛擬用戶能有讀寫權限:
local_enable=YES
write_enable=YES
local_umask=022
嘗試用本地用戶上傳和下載文件。(PS,我不知道為什么我無法進行上傳下載操作,但我重啟系統后可以應用了)
還可以用userlist_deny=YES/NO
userlist_enalbe=YES
userlist_file=/etc/vsftpd.user_list
這些選項對用戶進行控制。
9,嘗試使用虛擬用戶訪問FTP服務。
創建一個口令源文件,文件格式是第一行用戶名、第二行密碼、第三行用戶名、第四行密碼……
[root@main ~]# cat temp_pass.txt
caocao
caomengde
xiaocaocao
xiaocaomengde
使用db_load命令生成認證文件。我遇到的情況就是本機沒有db_load這個命令,網上搜到的答案是缺少DB4的rpm包,應該是把光盤中DB4開頭的rpm包都裝全,我嫌麻煩,采用的yum -y install db4*,裝了以后就有db_load命令了。
[root@main ~]# db_load -T -t hash -f temp_pass.txt /etc/vuser.db
設置db文件的權限,同時刪除口令文件。
[root@main ~]# chmod 600 /etc/vuser.db
[root@main ~]# rm temp_pass.txt
建立虛擬用戶所需的PAM配置文件
[root@main ~]# vi /etc/pam.d/ftpuser.vu
#添加如下內容
auth required /lib/security/pam_userdb.so db=/etc/vuser
account required /lib/security/pam_userdb.so db=/etc/vuser
添加新用戶,可以考慮設置該用戶nologin
[root@main home]# useradd vuserftp
修改vsftpd.conf配置文件,有則改,無則添加。
guest_enable=YES
guest_username=vuserftp
pam_service_name=ftpuser.vu
重啟一下,現在訪問ftp://caocao@ftp是否可以用caomengde做密碼訪問?如果期間有小問題,可以考慮以下目錄權限問題。
10,嘗試給虛擬用戶分配權限
修改VSFTPD的配置文件,有則改,無則加。創建并進入這個文件夾。
user_config_dir=/etc/vuserftp/
[root@main vuserftp]# mkdir /etc/vuserftp/
[root@main vuserftp]# cd /etc/vuserftp/
創建虛擬用戶權限的配置文件
[root@main vuserftp]# vi caocao
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
local_root=/home/vuserftp/caocao
創建虛擬用戶的目錄,并配置權限。
[root@localhost ~]# mkdir /home/vuserftp/caocao
[root@localhost ~]# chown vuserftp /home/vuserftp/caocao/
11,我又照著這個教程復核了一下虛用戶登錄FTP的相關過程。show 相關配置文件和權限,因僅僅是實驗用的,所以配置比較粗糙。大家可以自己優化和精簡。
[root@localhost ~]# ll /home/vuserftp/
total 4
drwxr-xr-x 2 root root 4096 Mar 30 09:47 caocao
[root@localhost ~]# grep -v '#' /etc/vsftpd.conf
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
listen=YES
guest_enable=YES
guest_username=vuserftp
pam_service_name=ftpuser.vu
user_config_dir=/etc/vuserftp/
[root@localhost ~]# rpm -qa |grep db4-
db4-java-4.3.29-9.fc6
db4-devel-4.3.29-9.fc6
db4-tcl-4.3.29-9.fc6
db4-4.3.29-9.fc6
db4-utils-4.3.29-9.fc6

[root@localhost ~]# cat /etc/passwd |grep vuserftp
vuserftp:x:500:500::/home/vuserftp:/bin/bash(可以改成nologin)
[root@localhost ~]# cat /etc/pam.d/ftpuser.vu
auth required /lib/security/pam_userdb.so db=/etc/vuser
account required /lib/security/pam_userdb.so db=/etc/vuser
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 甘南县| 吉水县| 桐柏县| 崇阳县| 夏河县| 镶黄旗| 大同县| 五指山市| 汾阳市| 闽侯县| 武邑县| 涪陵区| 昌都县| 太保市| 开平市| SHOW| 新丰县| 广东省| 交口县| 昂仁县| 新乡市| 象山县| 沁水县| 广东省| 泽普县| 泸溪县| 侯马市| 乌什县| 周口市| 博野县| 荆门市| 平南县| 广西| 海盐县| 聊城市| 广水市| 碌曲县| 宜兴市| 深泽县| 远安县| 边坝县|