FTP服務器的搭建

FTP Server

做用:提供文件共享服務linux

1、FTP基礎

FTP: 文件傳輸協議
軟件包: vsftpd
FTP端口: 控制端口 command 21/tcp
數據端口 data 20/tcp (主動模式)
配置文件: /etc/vsftpd/vsftpd.confnginx

2、vsftpd默認配置

FTP Server
==centos7==
[root@CentOS7~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@CentOS7~]# yum -y install vsftpd
[root@CentOS7~]# touch /var/ftp/yang.txt

[root@CentOS7~]# systemctl start vsftpd
[root@CentOS7~]# systemctl enable vsftpd

默認firewalld/SELinux已關閉,若是未關閉:
[root@aliyun ~]# firewall-cmd --permanent --add-service=ftp
[root@aliyun ~]# firewall-cmd --reload
[root@aliyun ~]# sed -ri '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config
[root@aliyun ~]# setenforce 0vim

這裏有幾個問題,CentOS7 安裝好vsftpd以後 配置文件默認開啓了一些校驗, 可能咱們訪問的時候就會出現 500 OOPS: vsftpd: cannot locate user specified in 'guest_username':vsftpd 的錯誤,基於Windows CMD訪問的狀況下,在瀏覽器上,就默認要求登陸centos

關閉訪問登陸(#註釋)瀏覽器

#guest_enable=YES
#guest_username=vftpuser安全

開啓匿名模式:less

anonymous_enable=YEStcp

FTP默認共享目錄:/var/ftp

FTP Clinet:
lftp
[root@CentOS7~]# yum -y install lftp
[root@CentOS7~]# lftp zhufo.top
lftp zhufo.top:~> ls
drwxr-xr-x 2 0 0 4096 Mar 31 2016 pub
-rw-r--r-- 1 0 0 0 Nov 22 03:53 yang.txt
lftp zhufo.top:/> get yang.txt
lftp zhufo.top:/> mirror pub

wget
[root@CentOS7~]# wget --help |less
[root@CentOS7~]# wget ftp://172.16.8.100/kvm-manager-centos
[root@CentOS7~]# wget ftp://172.16.8.100/kvm-manager-centos -P /tmp/
[root@CentOS7~]# wget ftp://172.16.8.100/kvm-manager-centos -O /tmp/a.sh
[root@CentOS7~]# wget http://nginx.org/download/nginx-1.10.2.tar.gz
[root@CentOS7~]# wget -m ftp://zhufo.top/soft

firefox,IE

[root@CentOS7~]# lftp alice@zhufo.top
Password:
lftp alice@zhufo.top:~> ls
-rw-r--r-- 1 0 0 1523 Nov 22 04:25 alice.txt
lftp alice@zhufo.top:~> pwd
ftp://alice@zhufo.top/%2Fhome/alice
lftp alice@zhufo.top:~> put /etc/hosts

默認使用匿名用戶 ftp訪問,HOME爲/var/ftp,默認僅能下載文件
系統用戶: alice,HOME /home/alice,默承認下載及上傳
========================================================

3、基本配置,例如實現訪問控制 [瞭解]
注意: 指令中的空格,指令錯誤,指令重複
[root@CentOS7~]# vim /etc/vsftpd/vsftpd.conf
anonymous_enable=YES //是否容許匿名用戶登陸ftp
local_enable=YES //是否容許本地用戶登陸alice
write_enable=YES //是否容許寫(全局)
local_umask=022 //控制本地用戶上傳文件的默認權限,umask表示要減掉的權限
anon_umask=077 //控制匿名用戶上傳文件的默認權限

chroot: 鎖定本地用戶HOME
方法一:部分用戶chroot
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list
方法二:全部本地用戶chroot
chroot_local_user=YES

anon_max_rate=500000 //匿名用戶限速
local_max_rate=80000 //本地用戶限速
max_clients=500 //ftp最大鏈接數
max_per_ip=2 //單個IP最大鏈接數,線程數

local_root=/ftproot //指定本地用戶訪問的root目錄
anon_root=/anonroot //指定匿名用戶訪問的root目錄oop

使用FTP共享YUM源

Server:
[root@yangs ~]# mkdir /var/ftp/{centos6u6,centos7u2}
[root@yangs ~]# mount -o loop /home/centos7u2.iso /var/ftp/centos7u2
[root@yangs ~]# echo 「mount -o loop /home/centos7u2.iso /var/ftp/centos7u2」 >> /etc/rc.local
[root@yangs ~]# chmod +x /etc/rc.d/rc.local

Client:
[root@CentOS7~]# vim /etc/yum.repos.d/centos7.repo
[centos7u2]
name=centos6u6
baseurl=ftp://172.16.8.100/centos7u2
gpgcheck=0

從2.3.5以後,vsftpd加強了安全檢查,若是用戶被限定在了其主目錄下,則該用戶的主目錄
不能再具備寫權限了!若是檢查發現還有寫權限,就會報該錯誤。 要修復這個錯誤,能夠用
命令chmod a-w /home/user去除用戶主目錄的寫權限,注意把目錄替換成你本身的。或者可
以在vsftpd的配置文件中增長下列兩項中的一項:
allow_writeable_chroot=YES









url

相關文章
相關標籤/搜索