當前位置:首頁 » 文件管理 » ftp帶用戶訪問linux

ftp帶用戶訪問linux

發布時間: 2025-09-20 14:22:41

linux系統ftp共享文件怎麼設置

linux系統也是很常見的一種,應用十分廣泛,而且linux系統下的ftp共享文件讓很多人所青睞,確實很實用,那麼linux系統ftp共享文件怎麼設置?
在linux中添加ftp用戶,並設置相應的許可權,操作步驟如下面綠色字體所示(一個機器上只要裝了ftp服務,可以任意創建一個用戶去訪問本伺服器上的任意一個目錄,這個目錄只要按下面的步驟進行配置即可,然後重啟ftp服務即可):
1、環境:ftp為vsftp。被限制用戶名為test。被限制路徑為/home/ftp
2、建用戶:在root用戶下:
useradd -d /home/ftp test //增加用戶test,並制定test用戶的主目錄為/home/ftp
passwd test //為test設置密碼
3、更改用戶相應的許可權設置:(對於一般情況,簡單添加一個用戶的話,這一步,可以不要!!一般情況下,配置ftp也不需要這一步)
usermod -s /sbin/nologin test //限定用戶test不能telnet,只能ftp
usermod -s /bin/bash test //用戶test恢復正常
usermod -d /test test //更改用戶test的主目錄為/test
4,修改/etc/vsftpd/vsftpd.conf文件如下:
anonymous_enable=NO
#
# Uncomment this to allow local users to log in.
local_enable=YES
#
# Uncomment this to enable any form of FTP write command.
write_enable=YES
最後在該文件的最後面添加如下行:
userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/vsftpd.user_list
最後保存/etc/vsftpd/vsftpd.conf文件。
5、限制用戶只能訪問/home/test,不能訪問其他路徑
修改/etc/vsftpd/vsftpd.conf如下:
chroot_list_enable=YES //限制訪問自身目錄
# (default follows)
chroot_list_file=/etc/vsftpd/vsftpd.chroot_list
編輯/etc/vsftpd/vsftpd.chroot_list文件,將受限制的用戶添加進去,每個用戶名一行
添加後如下:
test /home/ftp
編輯 /etc/vsftpd/vsftpd.user_list文件,將受限制的用戶添加進去,每個用戶名一行
添加後如下:
test
改完配置文件,不要忘記重啟vsFTPd伺服器
[root@linuxsir001 root]# /etc/init.d/vsftpd restart
啟動後,在進行測試,使用本地用戶test及其密碼登錄,成功。
如果此時還不能執行寫操作或登錄時出現其它錯誤,則要查看test用戶對應的文件夾/home/ftp,test用戶是否有對此文件夾的寫許可權。
6、如果需要允許用戶修改密碼,但是又沒有telnet登錄系統的許可權:(對於一般情況,簡單添加一個用戶的話,這一步,可以不要!!一般情況下,配置ftp也不需要這一步)
usermod -s /usr/bin/passwd test //用戶telnet後將直接進入改密界面
至此,我們就可以用新添加的用戶test,登錄ftp了。
以上就是對其linux系統ftp共享文件怎麼設置的詳細介紹,如果你對這些信息泄露安全小知識不了解,那麼可以關注倍領安全網,多了解文件共享有哪些方式方法等知識。

② 紅旗Linux上配置FTP 允許root用戶登錄

在紅旗Linux上配置FTP以允許root用戶登錄,可以按照以下步驟進行:

1. 修改/etc/ftpusers文件 打開/etc/ftpusers文件。 在文件中找到root這一行,並在其前插入#符號以注釋掉該行。這樣,root用戶就被允許登錄FTP服務了。

2. 設置proftpd服務自動啟動 進入控制面板的服務管理部分。 找到proftpd服務,並將其啟動類別設置為自動啟動。這確保了在系統重啟後,FTP服務會自動運行。

3. 啟動proftpd服務 可以通過控制面板的服務管理部分啟動proftpd服務。 或者,在終端中執行命令service proftpd start來啟動FTP服務。

備注: 停止FTP服務:可以使用命令service proftpd stop。 啟動FTP服務:可以使用命令service proftpd start。

按照以上步驟操作後,root用戶應該就能夠成功登錄到紅旗Linux上的FTP服務了。

③ 如何配置linux ftp伺服器只有指定的用戶可以訪問

以Vsftpd為例:
第一類以本地Linux帳號來驗證,指定的用戶訪問,
控制用戶可以用user_list and ftpuser
如果vsftpd.conf配置文件中
userlist_deny yes,則User_list用戶無法訪問Ftp
反之,僅User_list可以訪問
Ftpusers有高於上面設置的許可權,能拒絕用戶訪問。

userlist_enable=YES
userlist_deny=NO
userlist_file=/etc/vsftpd/user_list

第二類使用虛擬用戶,結合上面的。然後根據所建立的虛擬用戶,或者資料庫用戶來訪問。不建立用戶,祥磨不建立相應的配置文件,都不可以訪問。
此外。畢殲下面要點就是Vsftpd使用過程中的節點。
1,盡量添加ssl認證,否則密碼是明文傳輸。

2,Chroot對相應的目錄,使用戶不可以切換其他目錄。

3,建立用戶不需要登陸Bash,

4,建立虛擬用戶時,Required和Sufficient的區別,前者是完全虛擬,後者,虛擬+實際用戶,並且虛擬用戶資料庫時,不要帶後面的 .db。

5,配置文件不要留空格。和SVN的配置一樣。

6,定位虛擬用戶目錄後,許可權的分配可以通過相應的配置文件,進行細分。

達到的目標有:許可權謹數斗的上傳下載,定位目錄,匿名操作。

當然對目錄的chmod也會與上面許可權設置的交集。

7,無法訪問的用戶,除了密碼, chmod許可權之外,還要檢查/etc/vsftpd目錄下面的各個配置文件。

特別是 user_list,ftpusers,這些許可權於Vsftpd.conf設置相關,上面有詳細說明。

8,Iptables,Selinux,及/etc/host.{allow|deny}.影響登陸許可權

④ 怎麼通過linux訪問伺服器上的ftp

這個直接推薦你看看這里:http://www.linuxprobe.com/chapter-11.html

文件傳輸協議(FTP,File Transfer Protocol),即能夠讓用戶在互聯網中上傳、下載文件的文件協議,而FTP伺服器就是支持FTP傳輸協議的主機,要想完成文件傳輸則需要FTP服務端和FTP客戶端的配合才行。
通常用戶使用FTP客戶端軟體向FTP伺服器發起連接並發送FTP指令,伺服器收到用戶指令後將執行結果返回客戶端。

FTP協議佔用兩個埠號:
21埠:命令控制,用於接收客戶端執行的FTP命令。
20埠:數據傳輸,用於上傳、下載文件數據。
FTP數據傳輸的類型:
主動模式:FTP服務端主動向FTP客戶端發起連接請求。
被動模式:FTP服務端等待FTP客戶端的連接請求。
11.2 安裝vsftpd服務程序
Vsftpd即「Very Secure FTP Daemon」是一款運行在類Unix操作系統的FTP服務端程序,Vsftpd主打的是安全性、完全開源及免費、速率高、支持IPv6、虛擬用戶功能等等其他FTP服務端軟體不具備的功能。

安裝vsftpd服務程序包:
[root@linuxprobe ~]# yum install vsftpd -y
Loaded plugins: langpacks, proct-id, subscription-manager
…………………省略部分安裝過程………………
---> Package vsftpd.x86_64 0:3.0.2-9.el7 will be installed
--> Finished Dependency Resolution
…………………省略部分安裝過程…………………
Installed:
vsftpd.x86_64 0:3.0.2-9.el7
Complete!

清空默認的防火牆默認規則:
[root@linuxprobe ~]# iptables -F

保存清空後的防火牆規則表:
[root@linuxprobe ~]# service iptables save

Vsftpd的程序與配置文件:
主程序 /usr/sbin/vsftpd
用戶禁止登陸列表 /etc/vsftpd/ftpusers
/etc/vsftpd/user_list
主配置文件 /etc/vsftpd/vsftpd.conf

先來分析下vsftpd程序的主配置文件吧:
[root@linuxprobe ~]# cat /etc/vsftpd/vsftpd.conf
主配置文件長達123行,但大部分是以#號開始的,這些都是注釋信息,我們可以過濾掉它們。
備份vsftpd的主配置文件:
[root@linuxprobe ~]# mv /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf_bak

過濾掉所有包含#號的行,並將過濾結果寫回到vsftpd.conf文件中:
[root@linuxprobe ~]# grep -v "#" /etc/vsftpd/vsftpd.conf_bak > /etc/vsftpd/vsftpd.conf

此時再分析下vsftpd程序的主配置文件吧:
[root@linuxprobe ~]# cat /etc/vsftpd/vsftpd.conf
anonymous_enable=YES
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

vsftpd程序配置文件參數的作用:
參數 作用
listen=[YES|NO] 是否以獨立運行的方式監聽服務。
listen_address=IP地址 設置要監聽的IP地址。
listen_port=21 設置FTP服務的監聽埠。
download_enable=[YES|NO] 是否允許下載文件。
userlist_enable=[YES|NO]
userlist_deny=[YES|NO] 是否啟用「禁止登陸用戶名單」。
max_clients=0 最大客戶端連接數,0為不限制。
max_per_ip=0 同一IP地址最大連接數,0位不限制。
anonymous_enable=[YES|NO] 是否允許匿名用戶訪問。
anon_upload_enable=[YES|NO] 是否允許匿名用戶上傳文件。
anon_umask=022 匿名用戶上傳文件的umask值。
anon_root=/var/ftp 匿名用戶的FTP根目錄。
anon_mkdir_write_enable=[YES|NO] 是否允許匿名用戶創建目錄。
anon_other_write_enable=[YES|NO] 是否開放匿名用戶其他寫入許可權。
anon_max_rate=0 匿名用戶最大傳輸速率(位元組),0為不限制。
local_enable=[YES|NO] 是否允許本地用戶登陸FTP。
local_umask=022 本地用戶上傳文件的umask值。
local_root=/var/ftp 本地用戶的FTP根目錄。
chroot_local_user=[YES|NO] 是否將用戶許可權禁錮在FTP目錄,更加的安全。
local_max_rate=0 本地用戶最大傳輸速率(位元組),0為不限制。

11.3 Vsftpd的驗證方式
vsftpd程序提供的FTP服務可選認證方式,分別為匿名訪問、本地用戶和虛擬用戶:
匿名訪問:任何人無需驗證口令即可登入FTP服務端。
本地用戶:使用FTP伺服器中的用戶、密碼信息。
虛擬用戶:創建獨立的FTP帳號資料。
顧名思義匿名訪問就是所有人均可隨意登入FTP服務,這樣自然會產生安全問題,一般用於存放公開的數據。
而本地用戶與虛擬用戶則需要用戶提供帳號及口令後才能登入FTP服務,更加的安全,而虛擬用戶則是最安全的。
下面的實驗環節將使用兩台紅帽RHEL7系統的主機,讀者需要提前配置網卡的IP地址等信息:
主機名稱 操作系統 IP地址
FTP服務端 紅帽RHEL7操作系統 192.168.10.10
FTP客戶端 紅帽RHEL7操作系統 192.168.10.20

11.3.1 匿名訪問模式
FTP匿名訪問模式是比較不安全的服務模式,尤其在真實的工作環境中千萬不要存放敏感的數據,以免泄露。
vsftpd程序默認已經允許匿名訪問模式,我們要做的就是開啟匿名用戶的上傳和寫入許可權,寫入下面的參數:
[root@linuxprobe ~]# vim /etc/vsftpd/vsftpd.conf

參數 作用
anonymous_enable=YES 允許匿名訪問模式。
anon_umask=022 匿名用戶上傳文件的umask值。
anon_upload_enable=YES 允許匿名用戶上傳文件
anon_mkdir_write_enable=YES 允許匿名用戶創建目錄
anon_other_write_enable=YES 允許匿名用戶修改目錄名或刪除目錄

確認填寫正確後保存並退出vsftpd.conf文件,然後重啟vsftpd服務程序並設置為開機自啟動。
[root@linuxprobe ~]# systemctl restart vsftpd
[root@linuxprobe ~]# systemctl enable vsftpd
ln -s '/usr/lib/systemd/system/vsftpd.service' '/etc/systemd/system/multi-user.target.wants/vsftpd.service
因為在紅帽RHCSA、RHCE或RHCA考試後都要重啟您的實驗機再執行判分腳本
所以請讀者在日常工作中也要記得將需要的服務加入到開機啟動項中:"systemctl enable vsftpd"。
如果重啟vsftpd服務程序時沒有報錯,此時便可以使用FTP客戶機(192.168.10.20)嘗試登入FTP服務了。
ftp命令用於使用FTP服務,格式為:「ftp [參數] [FTP主機]」。
紅帽RHEL7系統中ftp命令默認沒有安裝,請執行"yum install ftp -y"即可安裝完畢。
在客戶端嘗試登入FTP服務:
[root@linuxprobe ~]# ftp 192.168.10.10
Connected to 192.168.10.10 (192.168.10.10).
220 (vsFTPd 3.0.2)
Name (192.168.10.10:root): anonymous
331 Please specify the password.
Password:敲擊回車
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd pub
250 Directory successfully changed.
ftp> mkdir files
550 Permission denied.

上面操作中已經將防火牆規則清空,在vsftpd.conf文件中也已經允許匿名用戶創建目錄與寫入許可權,那怎麼會被拒絕了呢?
這里建議讀者先不要往下看,思考後用自己的方法解決下這個問題,長期這樣你的Linux的排錯能力一定會練出來的。
回想前面的參數細節,匿名訪問模式的FTP根目錄為/var/ftp:
[root@linuxprobe ~]# ls -ld /var/ftp/pub
drwxr-xr-x. 3 root root 16 Jul 13 14:38 /var/ftp/pub

原來匿名用戶的FTP根目錄所有者/組都是root,所以匿名用戶沒有寫入許可權,那我們將所有者修改為ftp試試吧。
[root@linuxprobe ~]# chown ftp /var/ftp/pub

此時再用ftp命令嘗試登入FTP服務並創建文件:
ftp> mkdir files
550 Create directory operation failed.

可惡!又報錯了!!雖然這次報錯代碼還是550,但前面提示許可權拒絕,這次是操作失敗,馬上想到是SELinux服務在搗鬼。
查看所有與ftp相關的SELinux規則:
[root@linuxprobe ~]# getsebool -a | grep ftp
ftp_home_dir --> off
ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> off
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
sftpd_anon_write --> off
sftpd_enable_homedirs --> off
sftpd_full_access --> off
sftpd_write_ssh_home --> off
tftp_anon_write --> off
tftp_home_dir --> off

設置SELinux服務對ftp服務的訪問規則策略為允許。
[root@linuxprobe ~]# setsebool -P ftpd_full_access=on

此時再來創建文件或目錄就沒有問題了:
[root@linuxprobe ~]# ftp 192.168.10.10
Connected to 192.168.10.10 (192.168.10.10).
220 (vsFTPd 3.0.2)
Name (192.168.10.10:root): anonymous
331 Please specify the password.
Password:敲擊回車
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> cd pub
250 Directory successfully changed.
ftp> mkdir files
257 "/pub/files" created
ftp> rename files database
350 Ready for RNTO.
250 Rename successful.
ftp> rmdir database
250 Remove directory operation successful.
ftp> exit
221 Goodbye.

請注意:當您完成本實驗後請還原虛擬機快照再進行下一個實驗,否則可能導致配置文件沖突而報錯。
11.3.2 本地用戶模式
既然要使用本地用戶模式,而本地用戶模式確實要比匿名訪問模式更加的安全,所以本實驗中會關閉匿名訪問模式。
vsftpd服務程序默認已經允許本地用戶模式,我們要做的是添加設置本地用戶模式許可權的參數:
[root@linuxprobe ~]# vim /etc/vsftpd/vsftpd.conf

參數 作用
anonymous_enable=NO 禁止匿名訪問模式。
local_enable=YES 允許本地用戶模式。
write_enable=YES 設置可寫入許可權。
local_umask=022 本地用戶模式創建文件的umask值。
userlist_deny=YES 參數值為YES即禁止名單中的用戶,參數值為NO則代表僅允許名單中的用戶。
userlist_enable=YES 允許「禁止登陸名單」,名單文件為ftpusers與user_list。

確認填寫正確後保存並退出vsftpd.conf文件,然後重啟vsftpd服務程序並設置為開機自啟動。
[root@linuxprobe ~]# systemctl restart vsftpd
[root@linuxprobe ~]# systemctl enable vsftpd
ln -s '/usr/lib/systemd/system/vsftpd.service' '/etc/systemd/system/multi-user.target.wants/vsftpd.service
因為在紅帽RHCSA、RHCE或RHCA考試後都要重啟您的實驗機再執行判分腳本。
所以請讀者在日常工作中也要記得將需要的服務加入到開機啟動項中:」systemctl enable vsftpd「。
如果重啟vsftpd服務程序時沒有報錯,此時便可以使用FTP客戶機(192.168.10.20)嘗試登入FTP服務了~
我們先來看下ftpusers或user_list文件中禁止登陸用戶名單:
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
news
uucp
operator
games
nobody
vsftpd服務為了讓FTP服務更加的安全,默認禁止以root身份登入,那麼創建個普通用戶吧:
[root@linuxprobe ~]# useradd linuxprobe

為linuxprobe用戶設置密碼:
[root@linuxprobe ~]# passwd linuxprobe
Changing password for user linuxprobe.
New password:
Retype new password:
passwd: all authentication tokens updated successfully.

在客戶端嘗試登入FTP服務:
[root@linuxprobe ~]# ftp 192.168.10.10
Connected to 192.168.10.10 (192.168.10.10).
220 (vsFTPd 3.0.2)
Name (192.168.10.10:root): linuxprobe
331 Please specify the password.
Password:輸入用戶的本地密碼
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> mkdir files
550 Create directory operation failed.

有了上面配置匿名訪問模式的經驗,這次再遇到了「操作被拒絕」,應該馬上想到SELinux了吧。
查看所有與ftp相關的SELinux規則:
[root@linuxprobe ~]# getsebool -a | grep ftp
ftp_home_dir --> off
ftpd_anon_write --> off
ftpd_connect_all_unreserved --> off
ftpd_connect_db --> off
ftpd_full_access --> off
ftpd_use_cifs --> off
ftpd_use_fusefs --> off
ftpd_use_nfs --> off
ftpd_use_passive_mode --> off
httpd_can_connect_ftp --> off
httpd_enable_ftp_server --> off
sftpd_anon_write --> off
sftpd_enable_homedirs --> off
sftpd_full_access --> off
sftpd_write_ssh_home --> off
tftp_anon_write --> off
tftp_home_dir --> off

設置SELinux對FTP服務的規則為允許:
[root@linuxprobe ~]# setsebool -P ftpd_full_access=on

此時再來創建文件或目錄就沒有問題了:
[root@linuxprobe ~]# ftp 192.168.10.10
Connected to 192.168.10.10 (192.168.10.10).
220 (vsFTPd 3.0.2)
Name (192.168.10.10:root): linuxprobe
331 Please specify the password.
Password:輸入用戶本地密碼
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp> mkdir files
257 "/home/linuxprobe/files" created
ftp> rename files database
350 Ready for RNTO.
250 Rename successful.
ftp> rmdir database
250 Remove directory operation successful.
ftp> exit
221 Goodbye.

⑤ linux ftp伺服器如何讓多個用戶訪問同一目錄

默認在/home下就有不同用戶的目錄(root在/root下)ftp訪問默認只會訪問自己的目錄,當然可以跳轉到其他目錄,加上chroot就能限定每個用戶只能訪問自己的home目錄,而不能跳轉到其他目錄

⑥ linux 伺服器 centos5.5 FTP如何建立用戶配置許可權 A用戶能夠下載 B用戶能夠訪問 C用戶能夠上傳下載。急

1、ftp伺服器只要你啟用了匿名用戶訪問ftp伺服器,就有訪問的許可權,許可權只有查看,不能上傳下載修改,所以你的B用戶匿名登錄就行了;本地用戶只要在配置文件增加本地用戶能下載,就有查看、下載的許可權,但不能寫入,即不能上傳、修改文件目錄之類,所以A用戶以自己名字登錄就行了;C用戶能上傳下載,就要在前面的基礎上,給他單獨設立許可權了,用訪問控制列表設許可權。步驟如下:

2、修改配置文件

#vim/etc/vsftpd/vsftpd.conf#下面沒有的就添加,注意匿名用戶許可權不要太大
anonymouse_enable=YES#啟用匿名用戶
download_enable=YES#本地用戶可下載
local_root=/var/ftp#修改本地用戶ftp根目錄,默認本地用戶只能訪問自己的家目,你可以根據自己情況修改


3、給C用戶單獨設立許可權,用setfacl命令設訪問控制

#setfacl-mu:C:rwx/var/ftp/

-m 增加一條策略

u 表示是給用戶設立許可權,另外一個是 g ,給組;

C C用戶

rwx 表示所有許可權,一定是這個,才能有下載上傳許可權

後面那個是ftp目錄



4、登錄

B用戶以匿名登錄;

A和C以自己的系統賬戶密碼登錄,會有相應的許可權的。。

你應該對vsftpd的配置文件不熟,去網上找份詳解,自己慢慢研究


祝你好運~~~

⑦ linux下怎樣登錄ftp伺服器

1、首先,連接相應linux主機衡冊,進入到linux命令行狀態下,等待輸入shell指令。

熱點內容
代數式編譯 發布:2025-09-20 16:08:38 瀏覽:19
如何配置6摩爾的醋酸 發布:2025-09-20 15:48:48 瀏覽:711
暴風文件夾 發布:2025-09-20 15:39:31 瀏覽:817
文件夾自動生成exe 發布:2025-09-20 15:11:45 瀏覽:876
水密碼去角質啫喱如何使用 發布:2025-09-20 15:10:38 瀏覽:474
貪吃蛇代碼java 發布:2025-09-20 15:04:45 瀏覽:817
kindle壓縮 發布:2025-09-20 15:01:16 瀏覽:764
新浪java 發布:2025-09-20 14:54:46 瀏覽:708
好前綴演算法 發布:2025-09-20 14:43:43 瀏覽:624
狀態連接地址伺服器失敗 發布:2025-09-20 14:28:24 瀏覽:210