目录

前言

一、检查vsftpd是否安装

二、建立vsftpd虚拟用户

2.1、添加虚拟用户口令文件

2.2、生成虚拟用户口令认证文件

2.3、编辑vsftpd的PAM认证文件

2.4、建立本地映射用户

三、配置vsftpd

3.1、配置vsftpd.conf

3.2、创建虚拟用户权限目录

3.3、对虚拟用户设置上传下载根目录

3.4、重启vsftp服务

四、测试虚拟用户登录FTP

4.1、虚拟用户登陆FTP测试

4.2、测试上传或下载


前言

在日常的工作中经常会遇到这样的情况,为了ftp的用户的登录安全,需要创建一些FTP账户来连接或登录FTP服务,而又不想让用户拥有系统级别的账号。

尽管也可以在FTP服务器设置让一些用户无法登陆系统,如果需要创建很多ftp用户的需求的话,那和创建这么多的用户也是不友好的,对系统而言也是不安全的。

为了解决以上这种问题,在日常的工作中可以采取配置FTP的虚拟用户来连接或是登录FTP服务,这些账户还不是系统上的帐号,在维护方便的前提下,还保证了系统的安全性。

如下是以FTP虚拟用户来连接或是登陆FTP服务的操作方法,供大家学习和使用。

一、检查vsftpd是否安装

先要检查要做FTP服务器的主机上有没有安装vsftpd,如果没有安装的话,需要先进行vsftpd服务的安装。

[root@localhost ~]# yum -y install vsftpd。

注:如果是yum安装的话,首先要把操作系统的系统盘挂载到系统中,并且配置好yum源才可以使用。挂载和配置yum的方法如下:

[root@localhost ~]# monut /dev/sr0 /mnt

注:sr0也可以写成cdrom,sr0是cdrom的一个连接。

[root@localhost ~]# vi /etc/yum.repos.d/rhel.repo

[iso]
        name=centos-iso
        baseurl=file:///mnt
        enabled=0
        gpcheck=1

二、建立vsftpd虚拟用户

2.1、添加虚拟用户口令文件

[root@localhost ~]# vi /etc/vsftpd/vftpuser.txt

ftpuser #用户名

123456 #密码

注:添加虚拟用户名和密码,一行用户名,一行密码,以此类推。

2.2、生成虚拟用户口令认证文件

将刚添加的vftpuser.txt虚拟用户口令文件转换成系统识别的口令认证文件,首先查看系统有没有安装生成口令认证文件所需的软件db4-utils,如果没有安装进行安装之后再生成口令认证文件。

[root@localhost ~]# db_load -T -t hash -f /etc/vsftpd/vftpuser.txt /etc/vsftpd/vftpuser.db

2.3、编辑vsftpd的PAM认证文件

[root@localhost ~]# cd /etc/pam.d

[root@localhost ~]# cp vsftpd vsftpd.YYYYMMDD

YYYYMMDD代表年月日

[root@localhost ~]# vi vsftpd

可以把原文件里面的内容都注释掉,添加以下2行内容:

auth required  /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

account required /lib64/security/pam_userdb.so db=/etc/vsftpd/vftpuser

2.4、建立本地映射用户

所有的FTP虚拟用户需要使用一个系统用户,但这个系统用户不需要密码和登录权限

[root@localhost ~]# useradd -d /home/ftpuser -s /sbin/nologin ftpuser

三、配置vsftpd

3.1、配置vsftpd.conf

[root@localhost ~]# cd /etc/vsftpd

[root@localhost ~]# cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.YYYYMMDD

YYYYMMDD代表年月日

[root@localhost ~]# vi vsftpd.conf

找到如下内容进行修改:

anonymous_enable=NO

local_enable=YES

local_umask=022

#dirmessage_enable=YES

xferlog_enable=YES

connect_from_port_20=YES

#xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

#chroot_list_file=/etc/vsftpd/chroot_list

listen=YES

write_enable=YES

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

chroot_local_user=YES

ftpd_banner=Welcome to FTP service.        #此参数可用可不用,就是一个登录ftp服务时的一句欢迎语。

anon_world_readable_only=NO

guest_enable=YES

guest_username=vftpuser

pam_service_name=vsftpd

user_config_dir=/etc/vsftpd/userconf         #代表对虚拟用户分配不能根目录的配置目录,需要在vsftpd目录创建此目录。

3.2、创建虚拟用户权限目录

[root@localhost ~]# cd /etc/vsftpd

[root@localhost ~]# mkdir userconf

3.3、对虚拟用户设置上传下载根目录

[root@localhost ~]# cd /etc/vsftpd/userconf

[root@localhost ~]# vi ftpuser         #此文件一定要和你的虚拟用户名保持一致。

write_enable=YES

anon_world_readable_only=NO

anon_upload_enable=YES

anon_mkdir_write_enable=YES

anon_other_write_enable=YES

local_root=/home/ftpuser/ftpdir         #此目录是虚拟用户设置的根目录,上传下载的文件都会锁定到此目录下。

[root@localhost ~]# chown -R ftpuser.ftpuser /home/ftpuser/ftpdir         #设置目录权限为虚拟用户,防止没有权限上传或下载。

3.4、重启vsftp服务

[root@localhost ~]# service vsftpd restart

四、测试虚拟用户登录FTP

4.1、虚拟用户登陆FTP测试

[root@localhost ~]# ftp 192.168.10.2

Connected to 192.168.10.2.

220 Welcome to FTP service.

Name (192.168.10.2:root):ftpuser

331 Please specify the password.

Password:        #输入虚拟账号的密码。

230 Login sucessful.         #代表虚拟用户已经成功的登录到了FTP服务器上。

4.2、测试上传或下载

[root@localhost ~]# ftp 192.168.10.2

Connected to 192.168.10.2.

220 Welcome to FTP service.

Name (192.168.10.2:root):ftpuser

331 Please specify the password.

Password:         #输入虚拟账号的密码。

230 Login sucessful.

Remote system type is UNIX.

Using binary mode to transfer files.

ftp>put 1.txt

local:1.txt remote:1.txt

150 Ok to send data.

226 Transfer complete.         #上传成功。

ftp>get 2.txt

local:2.txt remote:2.txt

150 Opening BINARY mode data connection for t (1140 bytes).

226 Transfer complete.         #上传成功。

Linux下创建FTP虚拟用户的配置过程--非系统账户登陆FTP相关推荐

  1. Linux下创建和删除用户

    Linux下创建和删除用户 目录 Linux下创建和删除用户 1 创建新用户 2 配置新用户 3 进入新用户 4 删除用户 1 创建新用户 在普通root用户下可能没有权限操作,因此直接在root下操 ...

  2. linux下面的j2sdk的安装和配置过程

    linux下面的j2sdk的安装和配置过程! 1.下载一个Linux Platform的JDK,建议下载RPM自解压格式的 (RPM in self-extracting file,j2sdk-1_4 ...

  3. Linux下如何使用虚拟用户增加FTP的安全性

    实验背景: Dreamfire公司由于业务需求,需要架设一台FTP服务器,出于系统稳定和安全等多方面考虑,决定使用RHEL 4作为服务器平台,架设vsftp服务器.其次为了最大限度地保证公司内部RHE ...

  4. linux下创建nginx虚拟目录详解,通过Samba映射Linux磁盘作为Windows IIS的虚拟目录--梦飞翔的地方(梦翔天空)...

    对于Windows和Linux共存的网站,头疼的问题之一是数据共享.例如,网站有大量静态网页,这些页面由WINDOWS动态站点生成,由LINUX的NGINX(或APACHE.LIGHTHTTP)展示, ...

  5. linux环境下配置虚拟主机域名,Linux下三种虚拟主机的配置方法

    1:基于相同IP不同Port的虚拟主机 vim /etc/httpd/conf/httpd.conf 更改Listen字段(此设置表示使用80以及8888端口) 更改虚拟主机部分为: 保存以上设置 创 ...

  6. FTP虚拟用户及ssl加密配置

    FTP虚拟用户及ssl加密配置 注意:配置FTP服务时,最好关闭防火墙和selinux 1.虚拟用户和真实用户区别 真实用户:是在服务器上登录的用户,比如安装系统时的用户. 虚拟用户:是创立的用户,只 ...

  7. linux虚拟用户的配置

    1. 建立虚拟用户口令库文件logins.txt<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:of ...

  8. linux sftp创建多用户,Linux 下创建 sftp 用户并限定目录

    Linux 下创建 sftp 用户并限定目录 1.创建 sftpUser 用户组 [root@XXX ~]# groupadd sftpUser 2.创建 sftpUser 用户并指定目录 [root ...

  9. Linux虚拟用户怎么建立,linux下ftp虚拟用户的创建方法

    本文介绍下,在linux系统中,为ftp创建虚拟用户的方法,这里使用vsftpd作为服务器软件,有需要的朋友参考学习下. vsftpd虚拟用户创建示例 Linux的FTP服务支持3种用户: 1.匿名帐 ...

最新文章

  1. 30个实用的Python脚本(请收藏)
  2. python nltk 入门demo
  3. 什么相片可以两张弄成一张_手机修图教程 | 如何不着痕迹地给相片添加优雅手写字体?...
  4. IPC介绍——10个ipcs例子
  5. 一位台湾校长的讲话。学习!!!
  6. 基于SpringBoot的CodeGenerator
  7. python四舍五入保留小数点后三位_Python中的“正确”四舍五入到小数点后3位
  8. Linux socket can例程python版本
  9. “元宇宙”是个啥?都有哪些大招?
  10. J2Cache的学习
  11. 基4fft matlab,快速傅里叶变换基4时间抽取FFT算法
  12. 瑞数系列_商标局公告采集
  13. ue4 android 插件,基于ijkplayer封装的UE4安卓播放器插件
  14. 【云计算】1_云计算基础介绍
  15. vue中provide和inject 用法
  16. 推荐一款搜索开源代码的神器 :Kooder!
  17. android判断app前后台状态
  18. 喜讯 安超云正式成为“同心生态联盟”会员单
  19. FreeBSD + Win7 挂载Windows文件夹报 mount_smbfs unable to open connection: syserr = Authentication 的解决方法
  20. 总结38 Ajax WEB异步技术和JSON的应用

热门文章

  1. 计算机与信息工程学院简称计信院,2017年计算机与信息工程学院“计信之星”...
  2. 中国互联网+数字经济峰会今日举办:马化腾出席,2017数字经济指数发布
  3. 【机器学习】人与机器学习
  4. viber免费打电话,发短信。五个月用户超千万:简单、免费爆炸式传播
  5. Python如何打包exe文件?如何换成喜欢的图标?
  6. Java开发技术总结!南京华泰证券java开发
  7. 关于usb host和device 相关内容网址
  8. LinuxGUI自动化测试框架搭建(十五)-截图功能screenShort.py封装和调用
  9. 海兰一体计算机配置,打造年轻人的第一台吃鸡设备:海兰A700一体机
  10. agp c语言课程,AGP赛制改变丨2018亚洲国际芭蕾舞大赛报名开始!