ubuntu linux 搭建ftp虚拟目录

本文涉及的产品
运维安全中心(堡垒机),免费版 6个月
简介: ubuntu linux 搭建ftp虚拟目录

安装生成虚拟帐号数据库工具db

包可以私聊我要

dpkg -i db5.3-util_5.3.28-11kord0.1_amd64.deb libdb5.3_5.3.28-11kord0.1_amd64.deb 

或者 自己下载

apt-get install db5.3-util -y

启动服务

service vsftpd restart

修改配置之前,先备份当前配置

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

现在下面见建一个vsftp的目录

mkdir /etc/vsftpd

在目录中新建密码箱文件

vim /etc/vsftpd/loginuser.txt

注意不要多空格和空行,其中奇数行为用户名,偶数行为密码。最后一行需要回车(否则建立数据库文件时无法识别最后一行,导致报奇数行错误)。

新建↑的用户test1和test2
adduser test1
adduser test2
在/etc/vsftpd目录下新建↓用户文件
touch /etc/vsftpd/test1 /etc/vsftpd/test2 
test1个人用户权限
anon_world_readable_only=NO
local_root=/home/test1
guest_username=test1
anon_world_readable_only=NO
local_root=/home/test1
write_enable=YES
anon_upload_enable=YES
guest_username=test1

test2 超级管理员权限
anon_world_readable_only=NO
write_enable=YES
anon_mkdir_write_enable=YES
anon_upload_enable=YES
anon_other_write_enable=YES
guest_username=root
local_root=/

然后执行(用db5对目标文件加密,生成.db)

为了安全:生成之后可以吧.txt删除掉,因为里面是明文密码,如果用户要更改密码,则需要重新生成文件↓命令
db5.3_load -T -t hash -f /etc/vsftpd/loginuser.txt /etc/vsftpd/vsftpd_login.db
给生成的密码文件权限
chmod 600 /etc/vsftpd/vsftpd_login.db
下面在/etc目录下新建vsftpd.chroot_list文件
touch /etc/vsftpd.chroot_list
在/etc/pam.d目录下新建vsftpd.vu
vi /etc/pam.d/vsftpd.vu
root@test2:/etc/pam.d# cat vsftpd.vu   !!注意下面的非空格为TAB
auth sufficient /lib/x86_64-linux-gnu/security/pam_userdb.so  db=/etc/vsftpd/vsftpd_login
account sufficient  /lib/x86_64-linux-gnu/security/pam_userdb.so  db=/etc/vsftpd/vsftpd_login

下面修改ftp的配置文件/etc/vsftpd.conf

vim /etc/vsftpd.conf

listen=YES
listen_ipv6=NO
anonymous_enable=YES
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
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd.chroot_list
allow_writeable_chroot=YES
pam_service_name=vsftpd.vu
user_config_dir=/etc/vsftpd
secure_chroot_dir=/var/run/vsftpd/empty
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
guest_enable=YES

测试:

在/home/test1(普通用户)下新建目录和文件

重启服务service vsftpd restart

目录
相关文章
|
23天前
|
Ubuntu Linux
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
查看Linux系统架构的命令,查看linux系统是哪种架构:AMD、ARM、x86、x86_64、pcc 或 查看Ubuntu的版本号
144 3
|
24天前
|
Linux 数据安全/隐私保护 Windows
Linux共享Windows目录
Linux共享Windows目录
|
17天前
|
Linux 应用服务中间件 nginx
|
25天前
|
Ubuntu 开发者 Python
|
23天前
|
Linux
linux如何去掉目录背景颜色
linux如何去掉目录背景颜色
25 1
|
27天前
|
JSON Linux 网络安全
【Azure 应用服务】如何从App Service for Linux 的环境中下载Container中非Home目录下的文件呢?
【Azure 应用服务】如何从App Service for Linux 的环境中下载Container中非Home目录下的文件呢?
|
29天前
|
Shell Linux 开发工具
在Linux中,如何编写shell脚本将当前目录下大于10K的文件转移到/tmp目录下?
在Linux中,如何编写shell脚本将当前目录下大于10K的文件转移到/tmp目录下?
|
29天前
|
Linux Shell 网络安全
在Linux中,rsync同步时,如何删除目标数据多出来的数据,即源上不存在,但目标却存在的文件或者目录?
在Linux中,rsync同步时,如何删除目标数据多出来的数据,即源上不存在,但目标却存在的文件或者目录?
|
29天前
|
Linux
在Linux中,如何使用xargs和exec实现把当前目录下所有后缀名为.txt的⽂件的权限修改为777。
在Linux中,如何使用xargs和exec实现把当前目录下所有后缀名为.txt的⽂件的权限修改为777。
|
29天前
|
Linux
在Linux中,Rsync 同步时,如果要同步的源中有软连接,如何把软连接的目标文件或者目录同步?
在Linux中,Rsync 同步时,如果要同步的源中有软连接,如何把软连接的目标文件或者目录同步?