centos修改ftp目錄
① 求助CentOS高手:為/data/www/ 目錄 配置ftp
你是不是把ftp根目錄指向到新建的ftpwww用戶的宿主目錄下了?創建新用戶後用戶宿主目錄下是有隱藏的幾個配置文件的
② 如何對CentOS FTP服務配置
vsftpd作為FTP伺服器,在linux系統中是非常常用的。下面我們介紹如何在centos系統上安裝vsftp。
什麼是vsftpd
vsftpd是一款在Linux發行版中最受推崇的FTP伺服器程序。特點是小巧輕快,安全易用。
vsftpd 的名字代表」very secure FTP daemon」, 安全是它的開發者 Chris Evans 考慮的首要問題之一。在這個 FTP 伺服器設計開發的最開始的時候,高安全性就是一個目標。
安裝vsftpd
1、以管理員(root)身份執行以下命令
yum install vsftpd
2、設置開機啟動vsftpd ftp服務
chkconfig vsftpd on
3、啟動vsftpd服務
service vsftpd start
管理vsftpd相關命令:
停止vsftpd: service vsftpd stop
重啟vsftpd: service vsftpd restart
配置防火牆
打開/etc/sysconfig/iptables文件
vi /etc/sysconfig/iptables
在REJECT行之前添加如下代碼
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 21 -j ACCEPT
保存和關閉文件,重啟防火牆
service iptables start
配置vsftpd伺服器
默認的配置文件是/etc/vsftpd/vsftpd.conf,你可以用文本編輯器打開。
vi /etc/vsftpd/vsftpd.conf
添加ftp用戶
下面是添加ftpuser用戶,設置根目錄為/home/wwwroot/ftpuser,禁止此用戶登錄SSH的許可權,並限制其訪問其它目錄。
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
3、增加用戶ftpuser,指向目錄/home/wwwroot/ftpuser,禁止登錄SSH許可權。
useradd -d /home/wwwroot/ftpuser -g ftp -s /sbin/nologin ftpuser
4、設置用戶口令
passwd ftpuser
5、編輯文件chroot_list:
vi /etc/vsftpd/chroot_list
內容為ftp用戶名,每個用戶佔一行,如:
peter
john
6、重新啟動vsftpd
service vsftpd restart
另外,如果覺得以後管理ftp用戶名嫌麻煩,可以使用centos官方發布的腳本管理。地址如下:
http://wiki.centos.org/HowTos/Chroot_Vsftpd_with_non-system_users
出現的錯誤
1、500 OOPS: cannot change directory
解決方法:
在終端輸入命令:
setsebool -P ftpd_disable_trans 1
service vsftpd restart
就OK了!
原因:這是因為伺服器開啟了selinux,這限制了FTP的登錄。
③ CentOS系統下如何配置FTP
啟動命令:/etc/rc.d/init.d/vsftpd start 這時候可以使用ftp客戶端連接。 vsftpd的許可權貌似和系統許可權有掛鉤。 下面是抄來的配置解釋vsftpd的配置 ,例如root等。 vsftpd.user_list:位於/etc目錄下。該文件里的用戶賬戶在默認情況下也不能訪問FTP伺服器,僅當vsftpd .conf配置文件里啟用userlist_enable=NO選項時才允許訪問。 vsftpd.conf:位於/etc/vsftpd目錄下。來自定義用戶登錄控制、用戶許可權控制、超時設置、伺服器功能選項、伺服器性能選項、伺服器響應消息等FTP伺服器的配置。 (1)CentOS系統用戶登錄控制 local_enable=YES,允許本地用戶登錄。 banned_email_file=/etc/vsftpd.banned_emails,當啟用deny_email_enable功能時,所需的電子郵件黑名單保存路徑(默認為/etc/vsftpd.banned_emails)。 (2)CentOS系統用戶許可權控制 write_enable=YES,開啟全局上傳許可權。 local_umask=022,本地用戶的上傳文件的umask設為022(系統默認是077,一般都可以改為022)。 chown_username=whoever,當啟用chown_uploads=YES時,所指定的屬主用戶賬號,此處的whoever自然要用合適的用戶賬號來代替。 chroot_list_file=/etc/vsftpd.chroot_list,如果chroot_local_user=YES,則指定該列表(chroot_local_user)的保存路徑(默認是/etc/vsftpd.chroot_list)。 nopriv_user=ftpsecure,指定一個安全用戶賬號,讓FTP伺服器用作完全隔離和沒有特權的獨立用戶。這是vsftpd系統推薦選項。 async_abor_enable=YES,強烈建議不要啟用該選項,否則將可能導致出錯! ascii_upload_enable=YES;ascii_download_enable=YES,默認情況下伺服器會假裝接受ASCⅡ模式請求但實際上是忽略這樣的請求,啟用上述的兩個選項可以讓伺服器真正實現ASCⅡ模式的傳輸。 注意:啟用ascii_download_enable選項會讓惡意遠程用戶們在ASCⅡ模式下用「SIZE/big/file」這樣的指令大量消耗FTP伺服器的I/O資源。 這些ASCⅡ模式的設置選項分成上傳和下載兩個,這樣我們就可以允許ASCⅡ模式的上傳(可以防止上傳腳本等惡意文件而導致崩潰),而不會遭受拒絕服務攻擊的危險。 (3)CentOS系統用戶連接和超時選項 idle_session_timeout=600,可以設定默認的空閑超時時間,用戶超過這段時間不動作將被伺服器踢出。 data_connection_timeout=120,設定默認的數據連接超時時間。 dirmessage_enable=YES,允許為目錄配置顯示信息,顯示每個目錄下面的message_file文件的內容。 xferlog_enable=YES,啟用記錄上傳/下載活動日誌功能。 xferlog_file=/var/log/vsftpd.log,可以自定義日誌文件的保存路徑和文件名,默認是/var/log/vsftpd.log。 以上,我們就完成了CentOS系統中FTP的配置工作。
④ CentOS系統下如何配置FTP(一)
啟動命令:/etc/rc.d/init.d/vsftpd start
這時候可以使用ftp客戶端連接.
vsftpd的許可權貌似和系統許可權有掛鉤.
下面是抄來的配置解釋vsftpd的配置
vsftpd.user_list:位於/etc目錄下.該文件里的用戶賬戶在默認情況下也不能訪問FTP伺服器,僅當vsftpd .conf配置文件里啟用userlist_enable=NO選項時才允許訪問.
vsftpd.conf:位於/etc/vsftpd目錄下.來自定義用戶登錄控制、用戶許可權控制、超時設置、伺服器功能選項、伺服器性能選項、伺服器響應消息等FTP伺服器的配置.
(1)CentOS系統用戶登錄控制
⑤ 怎麼修改centos ftp匿名登錄的路徑
如果是默認安裝vsftpd的話,以下是一些文件的位置約定:
/usr/sbin/vsftpd ---- VSFTPD的主程序
/etc/rc.d/init.d/vsftpd ---- 啟動腳本
/etc/vsftpd/vsftpd.conf ---- 主配置文件
/etc/pam.d/vsftpd ---- PAM認證文件
/etc/vsftpd.ftpusers ---- 禁止使用VSFTPD的用戶列表文件
/etc/vsftpd.user_list ---- 禁止或允許使用VSFTPD的用戶列表文件
/var/ftp ---- 匿名用戶主目錄
/var/ftp/pub ---- 匿名用戶的下載目錄
如果要更改默認下載目錄,修改/etc/vsftpd/vsftpd.conf,加入如下三行:
local_root=/
chroot_local_user=YES
anon_root=/
local_root表示使用本地用戶登錄到ftp時的默認目錄
anon_root表示匿名用戶登錄到ftp時的默認目錄
你上面的chroot_list_file是設定鎖定登陸用戶在其home目錄的列表,要在chroot_list_enable=YES情況下才生效。
另外,如luo_rc所述,最好不要設置默認目錄為/,使用建議使用mount --bind來掛載需要的目錄。
⑥ centos linux FTP 怎麼改變匿名用戶的默認路徑 急急急 在線等
修改配置文件/etc/vsftpd/vsftpd.conf中的 「anon root = 」 ,把等號後改為 /var/ftp/A 就OK了!
⑦ centos里怎樣設置同一個用戶登陸不同的ftp站點時,主目錄分別為/var/ftp,/var/f
將用戶的家目錄設置為你指定的目錄。
⑧ 關於Linux(CentOS) ftp的小疑問。。。
不知道你用的什麼服務,如果是vsftp的話,需要修改配置里需要開啟所有用戶創建目錄和寫的開關:
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_upload_enable=YES
write_enable=YES
anon_world_readable_only=NO
anon_upload_enable=YES
⑨ CentOS如何配置ftp server
首先安裝proftp,# yum install proftp
之後配置
1、配置Ftp允許Root登錄
修改/etc/ftpusers,去掉root
2、如果希望實現Root用戶Ftp後可以切換到/目錄
一般用戶只能切換到自己的主目錄,修改/etc/proftpd.conf文件,在DefaultRoot
一行前面增加一行
DefaultRoot / root
重新啟動proftpd服務即可。
改變匿名登錄的不想登錄到默認的 /var/ftp目錄
就要把/etc/passwd文件中的
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
中的默認目錄改變了即可。
3、Ftp具有寫入功能請在/etc/proftpd.conf文件中的<Global>段中改為如下:
<Limit STOR>
AllowAll
</Limit>
才可以。
4、Ftp改為PASV模式
在我們紅旗dc 5.0中的設置是在proftpd.conf中添加如下兩條語句即可。
MasqueradeAddress ip地址
#該參數設置在client發pasv指令時,server返回給client的pasv地址串中應該包含的連接地址,
#該地址通常是防火牆的外部地址(作rdr的地址)
PassivePorts 埠號
設置好之後重啟一下ftp服務。
FTP的連接一般是有兩個連接的,一個是客戶程和伺服器傳輸命令的,另一個是數據傳送的連接。FTP服務程序一般會支持兩種不同的模式,一種是Port模式,一種是
Passive模式(PasvMode),我先說說這兩種不同模式連接方式的分別。
先假設客戶端為C,服務端為S.
*Port模式:*
當客戶端C向服務端S連接後,使用的是Port模式,那麼客戶端C會發送一條命令告訴服務端S(客戶端C在本地打開了一個埠N在等著你進行數據連接),當服務端S收
到這個Port命令後
就會向客戶端打開的那個埠N進行連接,這種數據連接就生成了。
*Pasv模式:*
當客戶端C向服務端S連接後,服務端S會發信息給客戶端C,這個信息是(服務端S在本地打開了一個埠M,你現在去連接我吧),當客戶端C收到這個信息後,就可以向服
務端S的M埠進行連接,連接成功後,數據連接也建立了。
從上面的解釋中,兩種模式主要的不同是數據連接建立的不同,對於Port模式,是客戶端C在本地打開一個埠等服務端S去連接建立數據連接;而Pasv模式就是服務端
S打開一個埠等待客戶端C去建立一個數據連接。
關於ftp的pasv模式,有一種情況:
如果是通過iptables轉發到內網的一台伺服器,默認只能用port模式,此時,可以增加兩個iptables模塊,以實現pasv模式:
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
放入/etc/rc.local即可。(網關伺服器上設置,或在配置了iptables的機器上設置)
當然,通過修改proftpd.conf,指定允許的埠也可以,但這個會有限制,就是pasv port埠是固定的,假設數量是51000-510011,則只能提供給最多11個用戶,否則就沒有埠可以分配了。但載入模塊則沒有這個問題。