A. Linux下用戶登入ftp就是該用戶目錄
你用的是vsftpd吧,預設設置就是用戶登錄後,進入自己的home目錄。
如果想限制用戶只能在其home目錄下,不能改變路徑,修改/etc/vsftpd/vsftpd.conf文件,去掉下面幾行的注釋:
chroot_list_enable=YES
(default follows)
chroot_list_file=/etc/vsftpd.chroot_list
並建立/etc/vsftpd.chroot_list文件,將你想限制的用戶名加入這個文件就行了。
B. 如何給VSFTP增加用戶,只能訪問指定目錄
1、修改/etc/vsftpd/vsftpd.conf
將下面三行
#chroot_list_enable=YES
# (default follows)
#chroot_list_file=/etc/vsftpd.chroot_list
改為
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd/chroot_list
2、增加用戶 useradd -d /home -g ftp -s /sbin/nologin 用戶名1 -p password,這樣只增加ftp用戶,不能SSH登錄
3、設置用戶口令 passwd ftpuser
4、編輯文件: /etc/vsftpd/chroot_list
內容為ftp用戶名,每個用戶佔一行,如:
用戶名1
peter
john
5、編輯文件: /etc/vsftpd/user_list
內容為ftp用戶名,每個用戶佔一行,如:
用戶名1
6 重新啟動vsftpd
#service vsftp restart
默認FTP新上傳的文件的初始許可權為rw,修改為-rw-r--r--
把配置文件中的這一行注釋去掉:local_umask=022
C. 關於FTP指定目錄問題(C#)
伺服器的根目錄與FTP的根目錄沒有任何關系,所以具體的你就要檢查你的FTP的根目錄是在哪,如果FTP的根目錄對應的實際目錄是在/home/root,那你是沒有許可權上退一級的,你需要把FTP的根目錄設定到/home才行(當然也可以用虛擬目錄來指定)
D. 如何將SFTP用戶限制在某個目錄下
通常SFTP的任何用戶登錄之後能看到整個系統的文件目錄,這樣很不安全。
通過chroot可以將某個用戶登錄SFTP後只能在某個限定的目錄下操作,這樣可以更安全。
將SFTP用戶限制在某個目錄下的方法與操作步驟:
1、創建一個用於SFTP登錄的用戶:
useradd sftpuser1
給該用戶設置一個密碼:
passwd sftpuser1
2、設置sshd_config:
vi /etc/ssh/sshd_config
找到 Subsystem sftp這一行,修改成:
代碼示例:
Subsystemsftpinternal-sftp
UsePAMyes
Matchusersftpuser1
ForceCommandinternal-sftp
ChrootDirectory/home/ftpdir
把以上 /home/ftpdir 目錄替換成需要限定的實際目錄。
注意,該目錄的用戶屬主必須是root,並且該目錄的上級的每一級目錄的屬主也必須是root。
如果上級目錄不可以設置成root,那可以通過建立符號鏈接 ln -s 來變相實現。
多個用戶請重復配置這三行:
代碼示例:
Matchusersftpuser2
ForceCommandinternal-sftp
ChrootDirectory/home/ftpdir
這樣可以為不同的用戶設置不同的限制目錄。
3、重新啟動sshd:
代碼示例:
servicesshrestart
4、現在用SFTP軟體使用sftpuser1用戶登錄,會發現目錄已被限定在了 /home/ftpdir 了。
以上通過實例介紹了將SFTP用戶限制在指定目錄中的方法,希望對大家有所幫助。
E. vsftp 設置賬號和密碼,並且指定其訪問目錄(為系統原有目錄比如/root/)
伺服器:
1.先把FTP包裝上.
2.配置文件在/etc/vsftpd/vsftpd.conf.
3.重啟服務.
客戶端:分為三種
1.匿名用戶:默認進入/var/ftp目錄而且不能切換目錄(也就是/var/沖蘆ftp默認是它的根目錄,pwd的時候顯示的是/),而且默認無法上傳,需要修改配置文件並重啟服務.
2.伺服器本地用戶.默認進入用戶的宿主目錄下塌森,比如a用戶,FTP登陸上之後默認進入/home/a下,可以進入別的目錄,但默認只能在自己的宿主目錄下上傳文件,可以修改讓它只在自己的宿主目錄下.而不能去別的目錄(就是把宿主目錄變為它的/)
3.虛擬用戶:更加安全,即使想做一些什麼攻擊破壞性也沒那麼強,因為不是用的真實的用戶.
這個可以做你說的那個,在虛擬用戶訪問文件映射那裡可以指散衫帶定.
ok.
F. CentOs ftp 設置用戶訪問指定目錄
使用root賬號登錄centos系統
檢查是否已安裝vsftp
rpm -qa |grep vsftpd #未輸出信息,表示未安裝vsftp通過yum安裝vsftp
yum -y install vsftpdftp啟動、重啟、停止、狀態查詢命令
service vsftpd start #啟動ftpservice vsftpd stop #停止ftpservice vsftpd restart #重啟ftpservice vsftpd status #查詢ftp狀態設置為開機啟動(可設置)
chkconfig vsftpd on設置配置文件
vi /etc/vsftpd/vsftpd.conf修改如下內容:
anonymous_enable=NO #設置不允許匿名賬戶登錄chroot_local_user=YES #所有用戶限制在主目錄中chroot_list_enable=NO #不啟動限制用戶名單,直接限制所有用戶userlist_enable=NO #當為YES時只有userlist_file文件中指定的用戶才能登錄allow_writeable_chroot=YES #(在文件尾部新增)防止用戶有寫入許可權時報錯local_root=/home/www #(在文件尾部新增)設置用戶的根目錄重啟ftp
service vsftpd restart創建ftp用戶
創建用戶組
groupadd ftpgroups創建用戶
# useradd 添加用戶命令 -d /home/www 指定用戶根目錄 -g ftpgroups 加入用戶組 ftptest用戶名useradd -d /home/www -g ftpgroups ftptest設置用戶密碼
passwd ftptest # passwd(命令) ftptest(用戶名,根據你實際情況寫)設置不允許用於系統登錄
usermod -s /sbin/nologin ftptest #ftptest(用戶名,根據你實際情況寫)設置文件許可權
chmod 755 /home/www設置目錄擁有者
chown -R ftptest:root /home/www #ftptest:ftp用戶名 ; /home/www:文件目錄設置防火牆
systemctl status firewalld
查看防火牆狀態,如果未啟動,直接跳過本步驟開放20、21埠(阿里雲伺服器還需配置安全組開放防火牆)
firewall-cmd --permanent --zone=public --add-port=20/tcpfirewall-cmd --permanent --zone=public --add-port=20/udpfirewall-cmd --permanent --zone=public --add-port=21/tcpfirewall-cmd --permanent --zone=public --add-port=21/udpfirewall-cmd --reload #重新載入至此ftp服務安裝成功,如果出現不能訪問或不能寫入的情況,就還需要設置SELinux(關閉)
sestatus -v #查看SELinux狀態,如果SELinux status參數為enabled即為開啟狀態setenforce 0 #臨時關閉(不用重啟機器)
G. 如何讓某用戶通過FTP直接訪問某個目錄
FTP伺服器里,設定某個域為匿名(或具體用戶),同時鎖定目錄。
H. 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的訪問許可權,由於這個是敏感目錄,所以個人並不推薦開啟。
I. FTP伺服器 怎麼根據用戶登入名,跳轉到相應目錄下呢
那你就用vsftp,為什麼偏要用leapftp 2.7.6 ?
是在linux上的vsfpt配置文件設置的。
目錄是/etc/vsftpd/vsftpd.conf
把其中的chroor_local_user=YES 前面的*好去掉,然後重啟vsftpd看看
J. ftp怎麼上傳文件至指定的目錄
用ftp命令登錄伺服器,使用cd命令將指定目錄改變當前目錄,上傳文件就存放指定目錄了。