linux私有ftp搭建与创建新用户

一、私有ftp搭建

1. 安装ftp

对于可以联网的机器:

1)我们首先检查一下是否安装vsftp ,通过命令rpm -qa | grep vsftpd,如果出现版本号就说明安装好了,什么都没有出现说明是没有安装

2)我们来看一下vsftpd的安装资源yum  list vsftpd*

3)通过yum -y install vsftpd,回车进行安装,稍微等一会就会安装好

对于不能联网的机器:我们事先下载好对应版本的vsftpd

http://www.rpmfind.net/linux/rpm2html/search.php?query=vsftpd

1)搭建

 使用以下命令安装: rpm -ivh vsftpd-3.0.2-25.el7.x86_64.rpm

2.  测试是否安装成功

 service vsftpd start/stop/status/restart

systemctl start/stop/status/restart vsftpd.service 

3. 查看

whereis vsftpd

vsftpd:  /usr/sbin/vsftpd    /etc/vsftpd    /usr/share/man/man8/vsftpd.8.gz

  yum安装的主要目录为上述的3个目录,其中配置文件vsftpd.conf在/etc/vsftpd中,下面看下怎么配置vsftpd.conf

3. 修改配置文件

执行 cd /etc/vsftpd  命令,进入FTP文件夹中查看文件,会看有四个文件,如下:

-rw------- 1 root root  125 Mar 22  2017 ftpusers  黑名单文件,此文件里的用户不允许访问 FTP 服务器
-rw------- 1 root root  361 Mar 22  2017 user_list  白名单文件,是允许访问 FTP 服务器的用户列表
-rw------- 1 root root 4599 Mar 22  2017 vsftpd.conf  核心配置文件
-rwxr--r-- 1 root root  338 Mar 22  2017 vsftpd_conf_migrate.sh  FTP服务

# 默认配置文件: /etc/vsftpd/vsftpd.conf
  cd /etc/vsftpd
  备份: cp vsftpd.conf vsftpd.conf_bak
  编辑: vi vsftpd.conf

       关于 vsftpd.conf 的选项及说明

#(将yes修改为no,不允许匿名用户访问)
anonymous_enable=NO 

# 前的井号注释去掉 
chroot_local_user=YES

二、添加ftp防火墙规则

Centos7

开放端口(--permanent永久生效,没有此参数重启后失效) firewall-cmd --zone=public --add-port=21/tcp --permanent 重新载入 firewall-cmd --reload 查看 firewall-cmd --zone= public --query-port=21/tcp

如果不愿意关闭防火墙,需要防火墙添加FTP服务:
firewall-cmd --permanent --zone=public --add-service=ftp
firewall-cmd --reload

三、创建新用户

在linux搭建好私有ftp后,默认存放目录是 /var/ftp/

我们有时候需要给外部公司之类的用,但又不想让他们直接在 /var/ftp/ 中上传下载文件,所以我们只能创建新用户,并指定目录,在这里面进行操作,具体操作如下:

参考: ftp用户权限的限制配置方法

方法一:

其实这时候只要给ftp创建个密码就可以登陆了,不需要以下步骤

passwd ftp  #之后是输入密码
之后就可以用ftp连接了,他对应的服务器的地址是 /var/ftp/pub

方法二:

1. 需要先创建ftp用户(linux用户),并指定只能访问该路径的权限

 创建用于ftp的用户

mkdir /home/ftp      #创建ftp根目录
useradd -d /home/ftp -s /etc/nologin ftpuser   # 创建ftpuser用户(非登陆的)
或者 useradd -d /home/ftp ftpuser
passwd ftpuser #密码 chown -R ftpuser /home/ftp #改变ftp根目录属主 chmod 755 -R /home/ftp #改变ftp根目录权限

2. 把该账户加入到ftp的user_list中

echo "ftpuser" >> /etc/vsftpd/user_list   #把ftpuser加入到允许访问的队伍
chgrp ftpuser /home/ftp

四、访问方式,测试

ftp://ip , 这里ip指服务器的ip地址

1. 通过浏览器,输入ftp://ip

2. 通过文件,

打开计算机, windows7选择 工具--》映射网络驱动器--》连接到可用与存储文档和图片的网站--》下一步--》选择自定义网络位置--》在Internet地址或网络地址输入ftp://ip --》

问题:

参考 解决vsftpd 530 Permission denied

如果无法连接, 参考 windows无法访问此文件夹

原文地址:https://www.cnblogs.com/zhangchao0515/p/10444169.html