标签:chroot ftpuser server vsftpd vsftp Linux YES root 搭建
操作系统:centos7.9
server:192.168.2.239
client:192.168.2.17
server操作:
卸载原有的vsftpd服务
[root@server ~]# yum remove vsftpd
Loaded plugins: fastestmirror, langpacks
No Match for argument: vsftpd
No Packages marked for removal
安装vsftpd和ftp
[root@server ~]# yum -y instll vsftpd
[root@server ~]# yum -y instll ftp
创建一个文件夹用来当作ftp得仓库(并给777权限为了便于创建目录)
[root@server ~]# mkdir /ftpfile
[root@server ~]# chmod 777 /ftpfile
[root@server ~]# ls /
bin boot dev etc ftpfile home lib lib64 media mnt opt proc root run sbin srv sys tmp usr var
创建一个用户,仅对文件夹有上传权限,又没有登陆权限
[root@server ~]# useradd ftpuser
//赋值权限
[root@server ~]# chown ftpuser:ftpuser /ftpfile/
//重置改用户的密码
[root@server ~]# passwd ftpuser
Changing password for user ftpuser.
New password:
BAD PASSWORD: The password is a palindrome
Retype new password:
passwd: all authentication tokens updated successfully.
配置文件vsftpd.conf
#进入vsftpd配置文件
vim /etc/vsftpd/vsftpd.conf
# 禁止匿名用户anonymous登录
anonymous_enable=NO
# 允许本地用户登录
local_enable=YES
# 让登录的用户有写权限(上传,删除)
write_enable=YES
# 默认umask
local_umask=022
# 把传输记录的日志保存到/var/log/vsftpd.log
xferlog_enable=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=NO
# 允许ASCII模式上传
ascii_upload_enable=YES
# 允许ASCII模式下载
ascii_download_enable=YES
# 使用20号端口传输数据
connect_from_port_20=YES
# 欢迎标语
ftpd_banner=Welcome to use my test ftp server.
接下来的三条配置很重要
# chroot_local_user设置了YES,那么所有的用户默认将被chroot,
# 也就用户目录被限制在了自己的home下,无法向上改变目录。
# chroot_list_enable设置了YES,即让chroot用户列表有效。
# ★超重要:如果chroot_local_user设置了YES,那么chroot_list_file
# 设置的文件里,是不被chroot的用户(可以向上改变目录)
# ★超重要:如果chroot_local_user设置了NO,那么chroot_list_file
# 设置的文件里,是被chroot的用户(无法向上改变目录)
chroot_list_enable=YES
# touch /etc/vsftpd/chroot_list 新建
chroot_list_file=/etc/vsftpd/chroot_list
use_localtime=YES
# 以standalone模式在ipv4上运行
listen=YES
#禁用ipv6
listen_ipv6=NO
pam_service_name=vsftpd
# 重启 vsftpd
systemctl restart vsftpd
本地用户写在vi /etc/vsftpd/chroot_list下,当前创建的用户是ftpuser
client端操作:
[root@client ~]# yum -y instll vsftpd
[root@client ~]# yum -y instll ftp
验证测试:
登录到ftp
[root@client ~]# ftp 192.168.2.239
Connected to 192.168.2.239 (192.168.2.239).
220 Welcome to blah FTP service.
Name (192.168.2.239:root): ftpuser
331 Please specify the password.
Password:
230 Login successful.
Remote system type is UNIX.
Using binary mode to transfer files.
ftp>
创建目录验证
ftp> mkdir aa
257 "/ftpfile/aa" created
ftp> ls
227 Entering Passive Mode (192,168,2,239,143,33).
150 Here comes the directory listing.
drwxr-xr-x 2 1005 1005 6 Mar 16 22:21 aa
226 Directory send OK.
到server端查看验证是否创建成功目录
[ftpuser@server ~]$ cd /ftpfile/
[ftpuser@server ftpfile]$ ll
在server端创建一个文件image.jpg(测试文件的下载)
[ftpuser@server ftpfile]$ touch image.jpg
[ftpuser@server ftpfile]$ ll
到client下验证下载到client本地
将client下的ccc.jpg文件上传到server上
在server端查看
常用FTP命令
许多FTP命令与您在Linux shell提示符中键入的命令类似或相同。以下是一些最常见的FTP命令:
help或? - 列出所有可用的FTP命令。
cd - 切换远程计算机上的目录。
lcd - 切换本地计算机上的目录。
ls - 列出当前远程目录中的文件和目录的名称。
mkdir - 在当前远程目录中创建一个新目录。
pwd - 打印远程计算机上的当前工作目录。
delete - 删除当前远程目录中的文件。
rmdir - 删除当前远程目录中的目录。
get - 将一个文件从远程复制到本地计算机。
mget - 将多个文件从远程复制到本地计算机。
put - 将一个文件从本地上传到远程计算机。
mput - 将多个文件从本地上传到远程计算机。
标签:chroot,ftpuser,server,vsftpd,vsftp,Linux,YES,root,搭建 来源: https://blog.csdn.net/dacming/article/details/123630518
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。