linux下ftp設置允許訪問根目錄
修改vsftpd的配置文件/etc/vsftpd/vsftpd.conf,添加下面三行:
1、local_root=/media/ftp/pub
2、chroot_local_user=YES
3、anon_root=/var/www/html/
local_root表示本地用戶登錄後的根目錄,也就是非匿名,而是輸入用戶名和密碼登錄進入的,這里順便說一下ftp登錄的格式 ftp://username:passwd@localhost
anon_rootanonymous用戶,即匿名用戶訪問的主目錄
但是這時候可能會出現以下報錯:
[root@localhostpub]#lftplocalhost
lftplocalhost:~>ls
ls:Loginfailed:500OOPS:vsftpd:
原因還是許可權設置問題:
是ftp默認主目錄許可權設置不對,我這里報這個錯誤是因為/media/ftp設置許可權為777,/media/ftp/pub設置許可權也為777。
正確的許可權設置是將/media/ftp許可權設置為755,chmod755/media/ftp後重啟ftp服務就可以了。
上面的chroot_list_file是設定鎖定登陸用戶在其home目錄的列表,要在chroot_list_enable=YES情況下才生效,另外,如luo_rc所述,最好不要設置默認目錄為/,使用mount --bind來掛載需要的目錄
(1)linux下ftp設置允許訪問根目錄擴展閱讀:
如果你是默認的ftp目錄出現此問題,那一定是這個/home/ftp的許可權不對所致,這個目錄的許可權是不能打開所有許可權的;是運行了chmod777/home/ftp所致;如果沒有ftp用戶這個家目錄,要自己建一個;
如下FTP用戶的家目錄是不能針對所有用戶、用戶組、其它用戶組完全開放;
[root@localhost~]#ls-ld/home/ftp
drwxrwxrwx3rootroot40962005-03-23/home/ftp
修正這個錯誤,應該用下面的辦法;
[root@localhost~]#chownroot:root/home/ftp
[root@localhost~]#chmod755/home/ftp
2. linux怎麼設置vsftp用戶訪問目錄許可權
vsftp 修改指定ftp用戶目錄許可權的命令:命令行輸入:chmod 777 /srv/111cn 備註: srv目錄是server的簡寫,提供一些特定服務的目錄。
改許可權在linux中會用到chmod 命令的,chmod----改變一個或多個文件的存取模式(mode)
chmod [options] mode files
只能文件屬主或特權用戶才能使用該功能來改變文件存取模式。mode可以是數字形式或以who opcode permission形式表示。who是可選的,默認是a(所有用戶)。只能選擇一個opcode(操作碼)。可指定多個mode,以逗號分開。
vsftp 修改指定ftp用戶目錄許可權的命令:
其實這個很簡單,由於用的比較少所以在我的博客里mark一下方便查找:
命令行輸入:
代碼如下 復制代碼
chmod 777 /srv/111cn
備註: srv目錄是server的簡寫,提供一些特定服務的目錄。
3. linux系統,請問root目錄下的文件夾如何才能允許ftp訪問
許可權問題 系統(當然指的是一開始的)除了默認的home目錄外其他目錄都是不能用tfp訪問的,只要修改許可權即可,例如/lib chmod 777 /lib 就行了
4. linux中ftp的配置管理
vsftpd是UNIX類操作系統上運行的伺服器名稱,它的名字代表「very secure FTP daemon」,安全性是其設計與開發的一個重要目標。它可運行在Linux、Solaris等系統中,支持很多其他的FTP 伺服器不支持的特徵:
非常高的安全性需求
帶寬限制
良好的可伸縮性
創建虛擬用戶的可能性
分配虛擬IP地址的可能性
一、vsftpd的啟動
#service vsftpd start
如果允許用戶匿名訪問,需創建用戶ftp和目錄/var/ftp
# mkdir /var/ftp
# useradd –d /var/ftp ftp
二、vsftpd的配置
Vsftpd的配置文件存放在/etc/vsftpd/vsftpd.conf 我們可根據實際數要對如下信息進行配置:
1. 連接選項
☆監聽地址和控制埠
(1) listen_address=ip address
定義主機在哪個IP 地址上監聽FTP請求。即在哪個IP地址上提供FTP服務。
(2) listen_port=port_value
指定FTP伺服器監聽的埠號。默認值為21。
2. 性能與負載控制
☆超時選項
(1) idle_session_timeout=
空閑用戶會話的超時時間,若是超過這段時間沒有數據的傳送或是指令的輸入,則會被迫斷線。默認值是300s
(2) accept_timeout=numerical value
接受建立聯機的超時設定。默認值為60s
☆負載選項
(1) max_clients= numerical value
定義FTP伺服器最大的兵法連接數。當超過此連接數時,伺服器拒絕客戶端連接。默認值為0,表示不限最大連接數。
(2) max_per_ip= numerical value
定義每個IP地址最大的並發連接數目。超過這個數目將會拒絕連接。此選項的設置將會影響到網際快車、迅雷之類的多線程下載軟體。默認值為0,表示不限制。
(3) anon_max_rate=value
設定匿名用戶的最大數據傳輸速度,以B/s為單位。默認無。
(4) local_max_rate=value
設定用戶的最大數據傳輸速度。以B/s為單位。默認無。此選項對所有的用戶都生效。
3. 用戶選項
vsftpd的用戶分為3類:匿名用戶、本地用戶(local user)及虛擬用戶(guest)
☆ 匿名用戶
(1) anonymous_enable=YES|NO
控制是否允許匿名用戶登錄
(2) ftp_username=
匿名用戶使用的系統用戶名。默認情況下,值為ftp
(3) no_anon_password= YES|NO
控制匿名用戶登錄時是否需要密碼。
(4) anon_root=
設定匿名用戶的根目錄,即匿名用戶登錄後,被定位到此目錄下。主配置文件中默認無此項,默認值為/var/ftp/
(5) anon_world_readable_only= YES|NO
控制是否只允許匿名用戶下載可閱讀的文檔。YES,只允許匿名用戶下載可閱讀的文件。NO,允許匿名用戶瀏覽整個伺服器的文件系統。
(6) anon_upload_enable= YES|NO
控制是否允許匿名用戶上傳文件。除了這個參數外,匿名用戶要能上傳文件,還需要兩個條件,write_enable參數為YES;在文件系統上,FTP匿名用戶對某個目錄有寫許可權。
(7) anon_mkdir_wirte_enable= YES|NO
控制是否允許匿名用戶創建新目錄。在文件系統上,FTP匿名用戶必須對新目錄的上層目錄擁有寫許可權。
(8) anon_other_write_enbale= YES|NO
控制匿名用戶是否擁有除了上傳和新建目錄之外的其他許可權。如刪除、更名等。
(9) chown_uploads= YES|NO
是否修改匿名用戶所上傳文件的所有權。YES,匿名用戶上傳得文件所有權改為另一個不同的用戶所有,用戶由chown_username參數指定。
(10) chown_username=whoever
指定擁有匿名用戶上傳文件所有權的用戶。
☆本地用戶
(1) local_enable= YES|NO
控制vsftpd所在的系統的用戶是否可以登錄vsftpd。
(2) local_root=
定義本地用戶的根目錄。當本地用戶登錄時,將被更換到此目錄下。
☆虛擬用戶
(1) guest_enable= YES|NO
啟動此功能將所有匿名登入者都視為guest
(2) guest_username=
定義vsftpd的guest用戶在系統中的用戶名。
4. 安全措施
☆用戶登錄控制
(1) /etc/vsftpd.ftpusers
Vsftpd禁止列在此文件中的用戶登錄FTP伺服器。此機制是默認設置的。
(2) userlist_enable= YES|NO
此選項激活後,vsftpd將讀取userlist_file參數所指定的文件中的用戶列表。
(3) userlist_file=/etc/vsftpd.user_list
指出userlist_enable選項生效後,被讀取的包含用戶列表的文件。默認值是/etc/vsftpd.user_list
(4) userlist_deny= YES|NO
決定禁止還是只允許由userlist_file指定文件中的用戶登錄FTP伺服器。userlist_enable選項啟動後才能生效。默認值為YES,禁止文中的用戶登錄,同時不向這些用戶發出輸入口令的指令。NO,只允許在文中的用戶登錄FTP伺服器。
☆目錄訪問控制
(1) chroot_list_enable= YES|NO
鎖定某些用戶在自己的目錄中,而不可以轉到系統的其他目錄。
(2) chroot_list_file=/etc/vsftpd/chroot_list
指定被鎖定在主目錄的用戶的列表文件。
(3) chroot_local_users= YES|NO
將本地用戶鎖定在主目中。
三、vsftpd伺服器的配置實例:
基於IP的虛擬FTP伺服器配置
假設伺服器有兩個IP地址,192.168.1.199和192.168.1.200。vsftpd是建立在192.168.1.199上的。現在在192.168.1.200上再提供一個虛擬FTP伺服器。
☆創建虛擬FTP伺服器根目錄
# mkdir –p /var/ftp2/pub
確保/var/ftp2和/var/ftp2/pub目錄的所有者和組均為root,掩碼為755
# chmod 755 /var/ftp2 # chmod 755 /var/ftp2/pub
# chown –R root /var/ftp2 # chown –R : root /var/ftp2
☆ 增加虛擬FTP伺服器的匿名用戶帳號ftp2
# useradd –d /var/ftp2 –M ftp2
☆ 創建虛擬FTP伺服器的配置文件
復制原來的vsftpd.conf作為虛擬FTP伺服器的配置文件,並修改相關參數
# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd2.conf
# vi /etc/vsftpd/vsftpd2.conf
添加或修改參數:
Listen=YES
Listen_address=192.168.1.200
ftp_username=ftp2
anon_root=/var/ftp2
並可參考vsftpd的配置部分的說明做其他配置,如:
•允許匿名用戶上傳文件
Write_enable=YES
Anon_world_readable_only=NO
Anon_upload_enable=YES
Anon_mkdir_write_enable=YES
創建匿名用戶上傳文件的目錄,並設置許可權:
# mkdir /var/ftp/incoming # chmod o+w /var/ftp/incoming
•取消寫許可權
Write_enable=NO
Anon_upload_enable=NO
Anon_mkdir_write_enable=NO
Anon_other_write_enable=NO
•限制下載速度為80KB/s
Anon_max_rate=8000
•控制並發數,以及每個IP地址的並發數
Max_clients=100
Max_per_ip=3
☆啟動虛擬FTP伺服器
# /usr/sbin/vsftpd /etc/vsftpd/vsftpd2.comf &
5. Linux架FTP伺服器文件夾許可權設置問題
需求1: 我記得在VSFTPD中,當你使用了ftp用戶登陸默認的就是/var/ftp,因為ftp用戶是vsftpd中的匿名用戶,默認站點就是這個,而且已經禁錮在了這個目錄中,也就是說即使你在vsftpd中使用了cd /這個命令,依然還是在/var/ftp目錄中。
需求2和3可以通過以下方式完成。
隨便在什麼位置建立一個目錄,比如你建立了/ftpuser這個目錄。
在vsftpd的主配置文件中添加下面的配置語句 user_config_dir=/ftpuser (=後面就是步驟1中的目錄名)
在這個目錄中建立兩個和本地用戶同名的文件,比如user1和user2 (用vi建立最好)
分別編輯這兩個文件,裡面主要是設置許可權,配置項有以下幾種
4.1 local_root= (用來配置訪問站點,比如local_root=/home/ftp/user1)
4.2 writable_enable=yes (或者no,用來配置是否有上傳,刪除許可權)
4.3 download_enable=yes (或者no,用來配置是否有下載許可權)
保存退出,重啟服務就可以了。
不過,遺憾的是,上面的配置無法滿足你說的user2用戶登陸後,可以上傳,不能刪除這個要求。上面的配置項只能實現本地用戶要麼能上傳就能刪除,要麼都不能。
當然,如果你要做虛擬用戶的話,那麼這些要求都是可以實現的。虛擬用戶許可權如下
1. local_root=
2. anon_world_readable_only=NO 可以瀏覽目錄並下載
3. anon_mkdir_write_enable=YES 可以建立目錄
4. anon_upload_enable=YES 可以上傳
5. anon_other_write_enable=YES 可以刪除,重命名
敬候高人解答。
6. linux下設置用戶登錄FTP伺服器時,所在的目錄
在vsftpd.conf這個文件裡面的,local_enable=yes,首先要開啟這個,然後用user add命令新建本地用戶,然後把自家目錄由/home,改為其他,要修改這個文件,/etc/passwd:
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
desktop:x:80:80:desktop:/var/lib/menu/kde:/sbin/nologin
mengqc:x:500:500:mengqc:/home/mengqc:/bin/bash
如上所顯示,找到你的本地用戶,然後把/home後面的路徑改了就可以,記得保存這個文件。這樣FTP用戶就可以用本地用戶登錄了,不改路徑的話需要另外開啟/home的訪問許可權,由於這個是敏感目錄,所以個人並不推薦開啟。
7. linux里ftp伺服器怎麼配置根目錄
1、deepin linux默認沒有安裝命令行的ftp客戶端,在終端執行ftp命令會提示未找到命令。
8. linux里ftp伺服器怎麼配置根目錄
在linux的vsftp配置文件下添加
本地的根目錄是添加
local
root
=
/tmp/ftp/pub
就把local的目錄改變了成
/tmp/ftp/pub
匿名的根目錄是添加
anon
root
=
/tmp/ftp/pub
就把匿名的目錄改變了成
/tmp/ftp/pub
順便的目錄都行