CentOS7種搭建FTP伺服器

2021-09-14 06:57:39 字數 3465 閱讀 6776

首先要檢視你是否安裝vsftp

[root@localhost /]# rpm -q vsftpd

vsftpd-3.0.2-10.el7.x86_64 #顯示也就安裝成功了!

如果沒有則安裝vsftpd

[root@localhost/]# yum  install -y  vsftpd
完成後再檢查一遍

[root@localhost /]# whereis vsftpd

vsftpd:/usr/sbin/vsftpd /etc/vsftpd/usr/share/man/man8/vsftpd

檢視vsftpd服務的狀態

[root@localhost /]# systemctl status vsftpd.service

#如果是啟用狀態的話會有active綠色的標記

啟用vsftpd服務

[root@localhost /]# systemctl start vsftpd.service
設定vsftpd服務開機自啟

[root@localhost /]# systemctl enable vsftpd.service
首先備份配置檔案(必須要備份,以免出現意外時恢復)

cp /etc/vsftpd/vsftpd.conf  /etc/vsftpd/vsftpd.conf.bak

vim /etc/vsftpd/vsftpd.conf

anonymous_enable=no  # 禁用匿名登入

ascii_upload_enable=yes

ascii_download_enable=yes

chroot_local_user=yes # 啟用限定使用者在其主目錄下

allow_writeable_chroot=yes # 加上這行解決了無法登陸的問題(重點,不然可能會出現530問題)

之後在配置檔案末尾新增

use_localtime=yes

listen_port=21

chroot_local_user=yes

idle_session_timeout=300

guest_enable=yes

guest_username=vsftpd

user_config_dir=/etc/vsftpd/vconf

data_connection_timeout=5

virtual_use_local_privs=yes

pasv_min_port=10060

pasv_max_port=10090

accept_timeout=5

connect_timeout=5

allow_writeable_chroot=yes

第一行使用者名稱,第二行密碼,不能使用root為使用者名稱

vim /etc/vsftpd/virtusers
新增內容

charles

123456

首先你需要確定你是否有db_load這個命令

rpm –q  db
安裝之前先查詢一下

yum  search db4
安裝

yum install-y  compat-db47.x86_64  (以你的機器為準)
生成db檔案

db_load -t -t hash-f /etc/vsftpd/virtusers /etc/vsftpd/virtusers.db
設定pam驗證檔案,並指定對虛擬使用者資料庫檔案進行讀取

chmod 600 /etc/vsftpd/virtusers.db   (許可權r,w即可)
修改前先備份

cp /etc/pam.d/vsftpd /etc/pam.d/vsftpd.bak
將auth及account的所有配置行均注釋掉

vim /etc/pam.d/vsftpd
在裡面新增這兩句話

auth    sufficient  /lib64/security/pam_userdb.so  db=/etc/vsftpd/virtusers

account sufficient /lib64/security/pam_userdb.so db=/etc/vsftpd/virtusers

如果系統為32位,上面lib64改為lib

useradd vsftpd -d/home/vsftpd -s /bin/false
程式會自動建立vsftpd家目錄

mkdir /etc/vsftpd/vconf

cd /etc/vsftpd/vconf

這裡建立兩個虛擬使用者配合檔案

touch charles
建立使用者根目錄

mkdir -p /home/vsftpd/charles/
編輯使用者配置檔案,內容如下,其他使用者類似

vim charles

local_root=/home/vsftpd/charles/

write_enable=yes

anon_world_readable_only=no

anon_upload_enable=yes

anon_mkdir_write_enable=yes

anon_other_write_enable=yes

如果系統啟用了防火牆和selinux,那麼還要做以下配置(預設情況下centos7是使用firewall和selinux的,不在使用iptables)

防火牆新增ftp服務

[root@localhost vsftpd]#firewall-cmd --permanent --zone=public --add-service=ftp

[root@localhost vsftpd]#firewall-cmd --reload

設定selinux:

[root@localhost vsftpd]#getsebool -a | grep ftp

[root@localhost vsftpd]#setsebool -p ftpd_full_access on

完成以上步驟就可以了!

開啟ftp客戶端,輸入伺服器ip(虛擬機器ip),填寫虛擬使用者名稱和密碼即可

Centos7搭建FTP服務

yum y install vsftpd yum install ftp y vi etc vsftpd vsftpd.conf 部分介紹 anonymous enable yes 允許登入 anon upload enable yes 允許上傳 write enable yes 賦予寫許可權 an...

CentOS7搭建FTP服務

centos部署ftp yum install y vsftpd vi etc vsftpd vsftpd.conf anonymous enable no data connection timeout 300 chroot local user no allow writeable chroot...

centos7搭建ftp服務

vsftpd是linux下的一款小巧輕快,安全易用的ftp伺服器軟體,是一款在各個linux發行版中最受推崇的ftp伺服器軟體。yum y install vsftpduseradd ftpuserpasswd ftpuser因為ftp預設的埠為21,而centos預設是沒有開啟的,所以要修改ipt...