日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > centos >内容正文

centos

Centos搭建FTP服务

發布時間:2024/9/30 centos 76 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Centos搭建FTP服务 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

前言:

Centos 搭建FTP服務學習記錄

FTP簡介

FTP簡稱“文件傳輸協議”,用于Internet上的控制文件的雙向傳輸。
在FTP中常遇到兩個概念:
下載和上傳

“下載”文件就是從遠程主機拷貝文件至自己的計算機上
“上傳”文件就是將文件從自己的計算機拷貝到遠程主機上。

FTP連接及傳輸模式

控制連接 TCP 21 ,用于發送FTP命令信息
數據連接 TCP 20,用于上傳、下載數據

數據連接的建立類型:

主動模式:服務端從20端口主動向客戶端發起連接 被動模式:服務端在指定范圍內某個端口被動等待客戶端連接

被動模式相較于主動模式好,因為主動連接的話會涉及到開放服務器端防護墻的20、21端口,而且主動模式服務器無法控制客戶端所開啟的端口,也容易被客戶端的防火墻攔截。

FTP用戶的類型:
匿名賬戶:

anonymous
ftp

本地用戶

搭建過程

服務器端:

這里實驗使用的是vsftpd,所以要先下載

$ yum install vsftpd

但是下載的過程遇到了點問題,如下:

這個問題是yum命令被鎖

Existing lock /var/run/yum.pid

解決方法:等待一會或者強制結束

rm -f /var/run/yum.pid

下載好之后,先來了解一下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 ---- 匿名用戶的下載目錄

查看配置文件

vi /etc/vsftpd/vsftpd.conf #PS:以root權限去看,因為下載的時候便是用的root用戶


這里就解釋其中重要的一些配置:

參數作用
download_enable是否允許下載文件
anonymous_enable是否允許匿名用戶訪問
anon_upload_enable是否允許匿名用戶上傳文件
anon_mkdir_write_enable是否允許匿名用戶創建目錄
anon_other_write_enable是否開放匿名用戶的其他寫入權限
local_enable是否允許本地用戶登錄 FTP


其他的如果用到查詢即可

安裝完成后,啟動 FTP 服務: systemctl restart vsftpd.service 啟動后,可以看到系統已經監聽了 21 端口: netstat -nltp | grep 21

客戶端:

客戶機需要安裝一下ftp包,這樣才能使用連接命令ftp ip,下載命令:

yum install ftp

匿名用戶測試

對于vsftpd默認配置是開啟了本地用戶和匿名用戶,可以直接登錄的,所以這里沒有對配置文件進行修改

服務器端先開啟一下服務

客戶端使用匿名用戶連接,注意需要在同一個網段(兩個網絡都選為僅主機模式即可或自己手動配置),如果不在一個網段則會出現下面的問題

但是還有一種情況,就是客戶端和服務器端都在一個網段,還是出現這個情況,那就應該是服務器端的防火墻將請求給攔截了,所以就需要關閉服務器端的防火墻

解決方法:

1.查看防火墻:iptables -L 2.清空防火墻:iptables -F #注:這個設置只是暫時的,一旦關機再開機還需要重新進行輸入,如果想永久更改就需要下載iptables-services,然后進行更改,這里不詳細敘述

客戶端再次連接,連接成功(匿名用戶ftp沒有密碼,空格即可)

配置文件中匿名用戶登錄 vsftpd 服務后的根目錄是 /var/ftp/,進入/var/ftp/pub上傳一個自己創建的文件看一下,發現無法創建

查看一下配置文件,匿名用戶上傳功能開了,但為什么還是不行

看了老師的講解,才知道目錄也需要進行設置權限,但如果直接使用chmod命令是不行的,會有一小bug,最好的方法是更改目錄的屬主

$ chown ftp /var/ftp/pub


重啟一下,客戶端再次連接,但發現還是不行,之前忘記在配置文件加上一段代碼,這段代碼寫哪里都可以,只要是在配置文件中

write_enable=YES #enable any form of FTP write command

但。。。。還是不行,我要吐了,什么情況,查了半天發現:是selinux限制了,把selinux關掉就可以了

先查看下selinux里有哪些關于ftp的

getsebool -a | grep ftp


如果是寫權限和全部權限是off的話就使用命令打開

setsebool -P allow_ftpd_anon_write on setsebool -P allow_ftpd_full_access on

再在客戶端進行上傳測試,成功。

下載測試,成功

最后這里提一點常用的Linux ftp 命令

ftp中用lcd切換本地路徑,用cd切換遠程服務器的路徑。如:cd目錄名(進入服務器目錄) lcd目錄名(進入本機目錄) !命令是執行本地shell命令

具體的看大師傅的博客
Linux ftp 命令

本地用戶測試

上面使用了匿名用戶進行登陸,并上傳下載,這次通過本地用戶來實現一下

我的本地用戶是shy,第一步就設置配置文件(其實不用改就可以)

local_enable=YES write_enable=YES local_umask=022 userlist_deny=YES userlist_enable=YES

為了安全默認禁止以root身份登入,如果你實在想改的話就可以編輯一下文件

vi /vsftpd/user_list


不過不建議,自己可以設置一個新的用戶進行測試,這里我就使用本地用戶shy

登陸成功,進行上傳下載測試,注意創建的文件位于shy賬戶家目錄

上傳成功

除本地用戶以為,還有一個虛擬用戶,虛擬用戶不是系統中存在的,因此比本地用戶安全。這里就先不學習,待到有需要時再進行學習。

總結

以上是生活随笔為你收集整理的Centos搭建FTP服务的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。