更改vsftpd默认的/var/ftp/pub目录


看到论坛中有类似的帖子,自己也算是学习,搞了测试。希望对使用到的朋友有所帮助
环境:rhel4-5或者Centos4至5的系统
首先确保vsftpd已经默认安装service vsftpd start可以正常且ftp://ip可以看到pub目录

现在要实现更改默认访问的目录为其他目录例如/home/ftp我直接在/home目录下mkdir ftp
注意改完配置后都service vsftpd restart
测试步骤如下

vi /etc/vsftpd/vsftpd.conf
直接在配置文件中添加如下:
anon_root=/home/ftp
anon_upload_enable=NO

服务重启

通过ftp://ip访问到/home/ftp这个目录(证明已经将默认目录更改)。但是不运行上传文件,即使我将

anon_upload_enable=设置为YES那么同样的ftp://ip仍然无法访问上传文件

搜资料搞定

办法是在/home/ftp下建立一个新目录,使得该目录对ftp匿名用户可写。才能上传
所以我在/home/ftp目录下,建立了一个newftp目录。默认权限是:755
drwxr-xr-x 2 root root   4096 06-20 16:55 newftp
我测试还是无法上传,按照提示 使得该目录对ftp匿名用户可写,由于匿名用户(ftp)上传文件,需要对

newftp目录进行操作,而newftp为root所有,匿名用户(ftp)对于newftp来说是其他用户,所以要加入

其他用户(o)的写权限。
[root@centos5h ftp]# chmod o+w /home/ftp/newftp
现在权限变为:
drwxr-xrwx 2 root root   4096 06-20 16:55 newftp
其实就是757的权限,顺便说明下:
读出 r 4
写入 w 2
执行 X 1

现在当访问ftp://ip/newftp目录时就可以给该目录上传文件了

说明:当新建这个newftp的目录后,除了要注意文件权限之外,还必须打开配置文件中

anon_upload_enable=YES支持,才可以保证正常上传文件到这个目录

还有些补充参数可以根据个人需求来添加:


设置是否运允许匿名建立目录:
# Permission for anonymus users to make new directories? YES/NO
anon_mkdir_write_enable=NO

设置是否允许匿名用户进行删除或者改名等操作:
# Permission for anonymus users to do other write operations - like renaming or deleting?

YES/NO
anon_other_write_enable=NO


第二种办法就是如果不是匿名用户访问的话
如果 直接改为WWW/HTML目录里
可以useradd username -d www/html
然后给个passwd直接通过
ftp://useradd:passwd@ip就可以了注意目录权限就可以了


还有就是映射办法
比如ftp的默认目录是/var/ftp 想把/mnt/WinSoft文件夹,映射到/var/ftp目录中
先在/var/ftp目录中建一个目录
#mkdir /var/ftp/WinSoft
然后执行mount命令
#mount --bind /mnt/WinSoft /var/ftp/WinSoft
这样就OK了

听说也可以通过ln来处理,我想道理是一样的,可以测试的看看

你可以按照以下步骤来配置Linux2为FTP服务器,安装vsftpd,以及创建本地用户和虚拟用户的配置: 1. 安装vsftpd: 使用以下命令安装vsftpd: ``` sudo apt-get update sudo apt-get install vsftpd ``` 2. 配置vsftpd: 打开vsftpd的配置文件 `/etc/vsftpd.conf`: ``` sudo nano /etc/vsftpd.conf ``` 3. 允许本地用户登录并设置默认目录: 在配置文件中找到以下行并确保其值如下: ``` local_enable=YES chroot_local_user=YES local_root=/var/ftp/pub ``` 4. 启用虚拟用户: 在配置文件的末尾添加以下内容: ``` guest_enable=YES guest_username=ftp user_sub_token=$USER local_root=/var/ftp/vdir/$USER virtual_use_local_privs=YES user_config_dir=/etc/vsftpd/vsftpd_user_conf ``` 5. 创建虚拟用户配置目录: 使用以下命令创建虚拟用户配置目录: ``` sudo mkdir /etc/vsftpd/vsftpd_user_conf ``` 6. 配置虚拟用户的权限和目录: 创建并打开 `/etc/vsftpd/vsftpd_user_conf/ftp1` 文件,并添加以下内容: ``` write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES deny_file=*.docx ``` 创建并打开 `/etc/vsftpd/vsftpd_user_conf/ftp2` 文件,并添加以下内容: ``` write_enable=NO anon_upload_enable=NO anon_mkdir_write_enable=NO ``` 7. 重启vsftpd服务: 使用以下命令重启vsftpd服务使配置生效: ``` sudo systemctl restart vsftpd ``` 现在,你已经成功配置了Linux2作为FTP服务器,并创建了本地用户和虚拟用户。本地用户登录时的目录为`/var/ftp/pub`,而虚拟用户ftp1的目录为`/var/ftp/vdir/ftp1`,虚拟用户ftp2的目录为`/var/ftp/vdir/ftp2`。同时,ftp1被禁止上传.docx后缀名的文件,而ftp2仅具有下载权限。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值