FTP服务器搭建

FTP安装前置步骤

安装ftp软件(已安装的话就不用再安装了,可以使用rpm -qa | grep vsftpd命令检测)

  • rpm -ivh /media/cdrom/Packages/vsftpd-3.0.2-28.el7.x86_64.rpm
  • 注意: 上述版本号会根据ISO文件的版本不同有所区别,Tab补全就行了。

启动vsftpd服务,并设为开机自启

  • systemctl start vsftpd

查看21端口:

  • netstat -ntl | grep 21

设为开机自启:

  • systemctl enable vsftpd

浏览器访问ftp://ip_or_hostname

如果连接超时,说明开启了防火墙,需要关闭防火墙服务并关闭开机自启:

  • systemctl stop firewalld

  • systwmctl disable firewalld

  • 如果连接需要账号密码:

    • vim /etc/vsftpd/vsftpd.conf

    descript

FTP设置用户名密码

一、创建新的Linux系统用户

在添加FTP用户之前,需要先在Linux系统中创建一个新的系统用户。可以使用以下命令来创建一个新的系统用户:

1
2
3
4
useradd username

# 也可以使用如下命令,直接创建用户的同时直接加入到ftp用户组中
useradd -g ftp username

其中linux如何添加ftp用户,username为你想要创建的用户名。接下来,需要为该用户设置密码:

1
passwd username

输入以上命令后,按照提示输入两遍密码即可。

二、安装FTP

1
yum install vsftpd

三、创建FTP用户并设置目录权限

1.创建FTP用户

使用以下命令来创建一个新的FTP用户linux 输入法,并指定该用户所属的组:

1
sudo useradd -g ftp username

其中,username为你想要创建的用户名。

2.设置目录权限

接下来,需要设置该FTP用户所能够访问的目录以及目录权限。可以使用以下命令来设置目录权限:

1
2
3
4
5
sudo chown root:root /home/ftpuser/
sudo chmod 755 /home/ftpuser/
sudo mkdir /home/ftpuser/files/
sudo chown ftp:ftp /home/ftpuser/files/
sudo chmod 777 /home/ftpuser/files/以上命令中,/home/ftpuser为FTP用户的根目录,/home/ftpuser/files为FTP用户所能够访问的目录。

四、配置FTP服务(这一步可以按照上图的来配置,我当时是只改了一个anonymous_enable=NO

1.修改VSFTPD配置文件

使用以下命令来编辑VSFTPD配置文件:

1
sudo vi /etc/vsftpd/vsftpd.conf

在文件末尾添加以下内容:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
listen=YES
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
use_localtime=YES
xferlog_enable=YES
connect_from_port_20=YES
chroot_local_user=YES
secure_chroot_dir=/var/run/vsftpd/empty
pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
pasv_enable=YES
pasv_min_port=40000
pasv_max_port=50000
user_sub_token=$USER
local_root=/home/$USER/files/

其中adobe air linux,pasv_min_port和pasv_max_port是被动模式下数据传输所使用的端口范围,可以根据需要进行修改。

2.重启VSFTPD服务

使用以下命令来重启VSFTPD服务:

1
sudo service vsftpd restart

五、测试FTP连接和上传文件操作

Tips

  • 最好在shell里面测试FTP
  • 如果FTP不能访问,大概率是由于权限的问题
    • chown ftp:ftp /home/ftpuser/files/