當前位置:首頁 » 文件管理 » linuxftp二進制傳輸

linuxftp二進制傳輸

發布時間: 2022-07-08 17:20:37

『壹』 linux下怎麼修改ftp的默認傳輸方式

可以用help命令查看幫助 binary——二進制模式 ascii——文本模式 passive——被動傳輸 prompt——切換交互模式

『貳』 如何在linux 伺服器上做FTP。請指教。

linux 下FTP安裝及配置
一、FTP的安裝
1、檢測是否安裝了FTP :[root@localhost ~]# rpm -q vsftpd

如果安裝了會顯示版本信息:
[root@localhost ~]# vsftpd-2.0.5-16.el5_5.1

否則顯示:[root@localhost ~]# package vsftpd is not installed

2、如果沒安裝FTP,運行yum install vsftpd命令

具體的細節如下:(如果無法更新,你先配置能訪問互聯網,我有文檔叫 CentOS 在 VMware下,如何聯網到Internet的解決辦法 可以解決無法上網的問題)

[root@localhost ~]# yum install vsftpd

[root@localhost ~]#

3、完成ftp安裝後,將 /etc/vsftpd/user_list文件和/etc/vsftpd/ftpusers文件中的root這一行注釋掉

# root

4、執行以下命令

# setsebool -P ftpd_disable_trans=1

修改/etc/vsftpd/vsftpd.conf,在最後一行處添加local_root=/

5、重啟ftp進程 #service vsftpd restart

註:每次修改過ftp相關的配置文件,都需要重啟ftp進程來生效。

ftp伺服器就可以使用了。

*********************************************************************

二、vsftpd的配置文件說明:

vsftpd.ftpusers:位於/etc目錄下。它指定了哪些用戶賬戶不能訪問FTP伺服器,例如root等。

vsftpd.user_list:位於/etc目錄下。該文件里的用戶賬戶在默認情況下也不能訪問FTP伺服器,僅當vsftpd .conf配置文件里啟用userlist_enable=NO選項時才允許訪問。

vsftpd.conf:位於/etc/vsftpd目錄下。來自定義用戶登錄控制、用戶許可權控制、超時設置、伺服器功能選項、伺服器性能選項、伺服器響應消息等FTP伺服器的配置。

(1)用戶登錄控制

anonymous_enable=YES,允許匿名用戶登錄。

no_anon_password=YES,匿名用戶登錄時不需要輸入密碼。

local_enable=YES,允許本地用戶登錄。

deny_email_enable=YES,可以創建一個文件保存某些匿名電子郵件的黑名單,以防止這些人使用Dos攻擊。

banned_email_file=/etc/vsftpd.banned_emails,當啟用deny_email_enable功能時,所需的電子郵件黑名單保存路徑(默認為/etc/vsftpd.banned_emails)。

(2)用戶許可權控制

write_enable=YES,開啟全局上傳許可權。

local_umask=022,本地用戶的上傳文件的umask設為022(系統默認是077,一般都可以改為022)。

anon_upload_enable=YES,允許匿名用戶具有上傳許可權,很明顯,必須啟用write_enable=YES,才可以使用此項。同時我們還必須建立一個允許ftp用戶可以讀寫的目錄(前面說過,ftp是匿名用戶的映射用戶賬號)。

anon_mkdir_write_enable=YES,允許匿名用戶有創建目錄的權利。

chown_uploads=YES,啟用此項,匿名上傳文件的屬主用戶將改為別的用戶賬戶,注意,這里建議不要指定root賬號為匿名上傳文件的屬主用戶!

chown_username=whoever,當啟用chown_uploads=YES時,所指定的屬主用戶賬號,此處的whoever自然要用合適的用戶賬號來代替。

chroot_list_enable=YES,可以用一個列表限定哪些本地用戶只能在自己目錄下活動,如果chroot_local_user=YES,那麼這個列表裡指定的用戶是不受限制的。

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)用戶連接和超時選項

idle_session_timeout=600,可以設定默認的空閑超時時間,用戶超過這段時間不動作將被伺服器踢出。

data_connection_timeout=120,設定默認的數據連接超時時間。

(4)伺服器日誌和歡迎信息

dirmessage_enable=YES,允許為目錄配置顯示信息,顯示每個目錄下面的message_file文件的內容。

ftpd_banner=Welcome to blah FTP service,可以自定義FTP用戶登錄到伺服器所看到的歡迎信息。

xferlog_enable=YES,啟用記錄上傳/下載活動日誌功能。

xferlog_file=/var/log/vsftpd.log,可以自定義日誌文件的保存路徑和文件名,默認是/var/log/vsftpd.log。

anonymous_enable=YES 允許匿名登錄local_enable=YES 允許本地用戶登錄

write_enable=YES 開放本地用戶寫許可權

local_umask=022 設置本地用戶生成文件的掩碼為022

#anon_upload_enable=YES 此項設置允許匿名用戶上傳文件

#anon_mkdir_write_enable=YES 開啟匿名用戶的寫和創建目錄的許可權

dirmessage_enable=YES 當切換到目錄時,顯示該目錄下的.message隱藏文件的內容

xferlog_enable=YES 激活上傳和下載日誌

connect_from_port_20=YES 啟用FTP數據埠的連接請求

#chown_uploads=YES 是否具有上傳許可權. 用戶由chown_username參數指定。

#chown_username=whoever 指定擁有上傳文件許可權的用戶。此參數與chown_uploads聯用。

#xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES 使用標準的ftpd xferlog日誌格式

#idle_session_timeout=600 此設置將在用戶會話空閑10分鍾後被中斷

#data_connection_timeout=120 將在數據連接空閑2分鍾後被中斷

#ascii_upload_enable=YES 啟用上傳的ASCII傳輸方式

#ascii_download_enable=YES 啟用下載的ASCII傳輸方式

#ftpd_banner=Welcome to blah FTP service 設置用戶連接伺服器後顯示消息

#deny_email_enable=NO 此參數默認值為NO。當值為YES時,拒絕使用banned_email_file參數指定文件中所列出的e-mail地址用戶登錄。

#banned_email_file=/etc/vsftpd.banned_emails 指定包含拒絕的e-mail地址的文件.

#chroot_list_enable=YES 設置本地用戶登錄後不能切換到自家目錄以外的別的目錄

#chroot_list_file=/etc/vsftpd.chroot_list

#ls_recurse_enable=YES

pam_service_name=vsftpd 設置PAM認證服務的配置文件名稱,該文件存放在/etc/pam.d/

userlist_enable=YES 此項配置/etc/vsftpd.user_list中指定的用戶也不能訪問伺服器,若添加userlist_deny=No,則僅僅/etc/vsftpd.user_list文件中的用戶可以訪問,其他用戶都不可以訪問伺服器。如過userlist_enable=NO,userlist_deny=YES,則指定使文件/etc/vsftpd.user_list中指定的用戶不可以訪問伺服器,其他本地用戶可以訪問伺服器。
listen=YES 指明VSFTPD以獨立運行方式啟動

tcp_wrappers=YES 在VSFTPD中使用TCP_Wrappers遠程訪問控制機制,默認值為YES

三、舉例建立一個名為test的賬戶並進行配置
根據實際情況對FTP進行配置後,下面舉例介紹建立一個FTP賬戶並進行簡單的配置:

1、創建一個賬號為test的賬戶:
#mkdir /tmp/test //首先創建好目錄
#adser -d /tmp/test -g ftp -s /sbin/nologin test //-s /sbin/nologin是讓其不能登陸系統,-d 是指定用戶目錄為/opt/srsman ,即該賬戶只能登陸ftp,卻不能用做登陸系統用。
#passwd test
Changing password for user beinan.//接下來會出現讓你設置新的密碼
New password:
Retype new password:
passwd: all authentication tokens updated successfully
創建賬戶成功!

2、限制用戶目錄,不得改變目錄到上級
修改/etc/vsftpd/vsftpd.conf
將這兩行
#chroot_list_enable=YES
#chroot_list_file=/etc/vsftpd.chroot_list
注釋去掉
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
新增一個文件: /etc/vsftpd/chroot_list
內容寫需要限制的用戶名:
test
重新啟動vsftpd
# service vsftpd restart

3、最後為了防止伺服器由於斷電、重啟等現象發生,導致ftp進程在開機後未啟動,將其添加到開機啟動文件中:
(1)找到/etc/rc.local文件
(2)打開該文件,在最後一行添加:service vsftpd start
(3)保存,退出

4、通過在「我的電腦」中輸入ftp://192.168.179.30(填該ftp伺服器ip地址)進入ftp伺服器,輸入設置好的賬戶登陸即可。

5、CMD-》ftp 192.168.1.2
Cd /soft
Put c:\sss.log //這樣可以成功上傳, VSFTP不支持絕對目錄上傳,只能夠到當前目錄下上傳

『叄』 Linux ftp傳輸文件後文件內容亂碼,怎麼解決

ftp服務目錄下的文件出現亂碼,多數是因為中文編碼不統一導致的,多見於第三方的ftp服務軟體,比如server-u,另外跨平台訪問也會出現這種情況,比如通過Linux訪問windows上的ftp伺服器。解決的方法可以參考如下解決方法。

1、ftp服務目錄下的文件,統一使用英文名稱 ,不要使用中文名稱。
2、設置好編碼,以server-u為例說明:
1)、打開Serv-U控制台,點擊「限制和設置」--「為域配置高級FTP命令設置和行為」。
2)、在FTP設置中找到OPTS UTF8命令,右擊禁用此命令。
3)、點擊下面的「全局屬性」。
4)、在出來的FTP命令屬性選項卡中,「高級選項」里,把「對所有收發的路徑和文件名使用UFT-8編碼」前面的鉤去掉!

『肆』 linux 壓縮 上傳到ftp後下載回來文件損壞

解決方法:在終端下登錄ftp,首先輸入bin,會提示已轉換到BIN模式。然後進行你的put和get操作。該方法是將傳輸形式改為二進制傳輸(binary)。你的問題應該會得到解決。
延伸:因為在ftp傳輸過程中,默認是使用ASCII模式而非BIN模式,這樣會導致壓縮文件在傳輸過程中由於編碼或解碼錯誤而導致損壞。
望採納~

『伍』 Linux系統怎麼安裝FTP和登陸使用

在安裝好的Linux,當我輸入ftp的時候,提示我沒有找到ftp的指令,在網上查看,說是要去安裝一個vsftpd。先將許可權設置為root,或者指令前加sudo。指令如下:
yum install vsftpd
或者
sudo yum install vsftpd

2
然後安裝好後,輸入/sbin/service vsftpd restart去重啟vsftpd.

3
然後安裝ftp。
yum install vsftpd

4
然後輸入ftp後,盡可以進入ftp的控制界面。

5
現在如果你想登陸一個FTP,就可以通過open指令去進入該FTP。
例如:open 127.0.0.0
如果FTP設置許可權,可能在輸入後需要輸入用戶名和密碼。
這樣就可以直接進入FTP去操作了。

END
操作指令

FTP的操作指令其實和Linux很相似,如下:
1、ls
列出遠程機的當前目錄2、cd 在遠程機上改變工作目錄3、lcd 在本地機上改變工作目錄4、ascii
設置文件傳輸方式為ASCII模式5、binary 設置文件傳輸方式為二進制模式6、close 終止當前的ftp會話7、hash
每次傳輸完數據緩沖區中的數據後就顯示一個#號8、get(mget) 從遠程機傳送指定文件到本地機9、put(mput)
從本地機傳送指定文件到遠程機10、open 連接遠程ftp站點11、exit退出ftp。
例如:下載文件
下載文件之前要先設置好本地的目錄,用來存放下載的文件
lcd /home/123/web ##設置本地存放目錄 默認為 /home/usr
get 123.txt ##下載123.txt文件到 /home/123/web 中
get -c 123.txt ##斷點續傳下載
mget *.txt ##批量下載所有txt文件
mget -c *.txt ##斷點續傳
mget -c ./123/aaa/*.txt ##斷點續傳、批量下載ftp端aaa目錄下的所有txt文件
pget -c -n 10 file.dat
##以最多10個線程以允許斷點續傳的方式下載file.dat
##可以通過設置 set pget:default-n 5 的值而使用默認值。
mirror aaa/
##將aaa目錄整個的下載下來,子目錄也會自動復制 本地自動建立目錄
例如:上傳文件
put 123.txt ##同下載
mput *.txt ##同下載
mirror -R aaa/ ##同下載
例如:查看ftp端文件
ls *.txt ##查找當前目錄下的所有txt文件
ls ./123/ ##列出123目錄下所有文件
find . -name "*.txt" ##遞歸查找站點上所有的txt文件
find ./xx -name "*.txt" ##查找xx目錄下所有的txt文件
附1: ls第二次讀取的是本地緩存,可以用 rels 代替 ls 或者catch off / catch on 來開關catch,catch flush清空本地catch
附2: 瀏覽本地目錄的命令可用!ls, 如 !ls /usr/local/bin/

『陸』 急求兩台linux機器間的文件傳輸方法

可以使用scp命令。
具體方法:
scp 本地用戶名@IP地址:文件名 1 遠程用戶名 @IP 地址 : 文件名 2
[ 本地用戶名 @IP 地址:] 可以不輸入 , 可能需要輸入遠程用戶名所對應的密碼 。

可能有用的幾個參數 :
-v 和大多數 linux 命令中的 -v 意思一樣 , 用來顯示進度 . 可以用來查看連接 , 認證 , 或是配置錯誤 .
-C 使能壓縮選項 .
-P 選擇埠 . 注意 -p 已經被 rcp 使用 .
-4 強行使用 IPV4 地址 .
-6 強行使用 IPV6 地址 .
-r Recursively entire directories.
如——
本地的檔案到遠程的機器上
scp /etc/lilo.conf
會將本地的 /etc/lilo.conf 這個檔案 到使用者my 的家目錄下。

舉例:
本地的檔案到遠程的機器上
scp /etc/lilo.conf
會將本地的 /etc/lilo.conf 這個檔案 到 net67使用者 k 的家目錄下。
遠程機器上的檔案到本地來
scp .etc/lilo.conf /etc
會將 中 /etc/lilo.conf 檔案 到本地的 /etc 目錄下。
保持從來源 host 檔案的屬性
scp –p k@net67.:/etc/lilo.conf /etc
在此必須注意使用者的許可權是否可讀取遠程上的檔案,若想知道更多關於 scp 的使用方法,可去看看 scp 的使用手冊。

『柒』 linux ftp 怎麼設置 模式

可以用help命令查看幫助
binary——二進制模式
ascii——文本模式
passive——被動傳輸
prompt——切換交互模式

『捌』 請教,如何用linux FTP命令,上傳文件到windows指定目錄

通過windows cmd窗口命令

C:\Documents and Settings\Administrator>d:

D:\>e:

step1:ftp登錄

E:\>ftp 128.8.28.212

Connected to 128.8.28.212.
220 (vsFTPd 2.2.2)
User (128.8.28.212:(none)): oracle
331 Please specify the password.
Password:
230 Login successful.

step2:查看目錄中的文件列表

ftp> cd wangxj
250 Directory successfully changed.
ftp> ls
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
enfo_ods.dmp
enfo_ods.log
tsubject.dmp
tsubject.log
226 Directory send OK.
ftp: 收到 56 位元組,用時 0.00Seconds 56000.00Kbytes

step3:從linux當前目錄下載文

ftp> get enfo_ods.dmp200 PORT command successful. Consider using PASV150 Opening BINARY mode data connection for enfo_ods.dmp (325029888 bytes)226 Transfer complete.ftp: 收到 325029888 位元組,用時 27.39Seconds 11866.74Kbytes/sec.

ftp> get enfo_ods.log
200 PORT command successful. Consider using PASV.
150 Opening BINARY mode data connection for enfo_ods.log (13704 bytes).
226 Transfer complete.
ftp: 收到 13704 位元組,用時 0.00Seconds 13704000.00Kbytes/sec.
step4:從windows上傳文件到linux
ftp> put test.ktr;
test.ktr;: File not found
//退出ftp 或者用bye
ftp> quit

E:\>ftp 128.8.28.212

Connected to 128.8.28.212.
220 (vsFTPd 2.2.2)
User (128.8.28.212:(none)): oracle
331 Please specify the password.
Password:
230 Login successful.
ftp> put E:\test.ktr
200 PORT command successful. Consider using PASV.
150 Ok to send data.
226 Transfer complete.
ftp: 發送 23410 位元組,用時 0.00Seconds 23410000.00Kbytes/sec.
ftp>
備註:

ftp是通用協議,不區分系統的。

知道linux機器的IP即可。開始 -> 運行,輸入cmd並回車,鍵入以下命令(前面的>為命令提示符,不用輸入):> ftp Linux機器的IP地址> binary> put windows系統本地文件全路徑 /linux系統上的目標路徑> bye 其中,如果是文本文件,可以不用binary設置為二進制傳輸模式(默認文本模式,會自動轉換文本格式)。如果是非文本文件(例如可執行文件),建議一定要設置為 binary 模式。

建議樓主系統學習下Linux的ftp服務搭建等知識點。《Linux就該這么學》這本書很不錯,裡面有很系統、很全面的圖文介紹!
希望可以幫到您!

熱點內容
subprocesspython 發布:2025-01-25 02:40:26 瀏覽:489
php模擬登錄qq 發布:2025-01-25 02:38:44 瀏覽:594
c語言stu 發布:2025-01-25 02:26:56 瀏覽:317
打疫苗的地方wifi密碼是多少 發布:2025-01-25 02:22:35 瀏覽:468
小學不編程 發布:2025-01-25 02:21:07 瀏覽:150
編程班的名稱 發布:2025-01-25 02:15:57 瀏覽:148
root鎖機序列號演算法 發布:2025-01-25 02:14:26 瀏覽:153
廣州萬科海上傳奇 發布:2025-01-25 02:13:48 瀏覽:563
空調壓縮機結霜了 發布:2025-01-25 02:01:20 瀏覽:131
怎麼給路由器設置代理伺服器 發布:2025-01-25 01:54:49 瀏覽:210