ubuntu FTP

第一步:安装VSFTPD

sudo apt-get install vsftpd


   
安装完成后启动VSFTPD服务:

service vsftpd start

第二步:新建目录/home/uftp作为用户主目录

sudo mkdir /home/uftp


   
第三步:新建用户uftp,制定用户主目录和所用shell,并设置密码

sudo useradd -d /home/uftp -s /bin/bash uftp


   
然后将目录/home/uftp的所属者和所属组都改为uftp:

sudo chown uftp:uftp /home/uftp

第四步:新建文件/etc/vsftpd.user_list,用于存放允许访问ftp的用户:

sudo vi /etc/vsftpd.user_list

在其中添加用户uftp,并且保存退出:


   
第五步:编辑VSFTPD配置文件 
   
VSFTPD配置文件为/etc/vsftpd.conf,执行命令:

sudo vi /etc/vsftpd.conf

  做如下修改: 
  打开注释 write_enable=YES 
  添加信息 userlist_file=/etc/vsftpd.user_list 
  添加信息 userlist_enable=YES 
  添加信息 userlist_deny=NO 
  修改完成后保存退出。

第六步:测试 
  现在在Windows下打开cmd窗口,执行命令:

ftp [你的linux机器的ip地址]

  Linux下查看ip地址的命令为:

ifconfig

  执行完ftp命令后,如果连接成功,会让你输入用户名和密码,输入我们刚刚添加的用户uftp的用户名和密码即可:

  命令pwd和lcd分别可以查看远程Linux下和本地Windows下的当前目录: 
   

   
  现在在Linux下的目录/home/uftp下新建文件test_ftp_download.txt,在windows下的家目录(我的为C:\Users\40696)下新建文件test_ftp_upload.txt,分别用来测试下载和上传功能:

下载文件使用命令:get [文件名]
上传文件使用命令:put [文件名]

要点总结:

第一步:安装vsftpd
sudo apt-get install vsftpd
第二步:配置
sudo vi /etc/vsftpd.conf
注销掉,关闭匿名访问
#anonymous_enable=YES
去掉注销,#让本地账号可以访问,比如root,等系统登录账号
local_enable=YES
write_enable=YES
第三步:如果你需要让root可以访问需要执行第三步
sudo vi /etc/ftpusers
把root去掉
第四步:增加一个访问账号
增加一个ftpgroup用户组
sudo groupadd ftpgroup
增加用户ftpuser并设置其目录为/ftp/ftpuser(可以修改,但是必须创建该文件夹)
sudo useradd -g ftpgroup -d /ftp/ftpuser -M ftpuser
如果上面的/ftp/ftpuser没有被创建,即需要创建该文件夹
sudo mkdir /ftp
sudo mkdir /ftp/ftpuser
用户必须拥有权限才可以访问,赋予访问/ftp/ftpuser的权限
sudo chmod 777 /ftp/ftpuser
第五步:设置ftpuser密码
sudo passwd ftpuser
第六步:重启vsftpd
sudo restart vsftpd

 

查看端口

netstat -tnl

ftp文件权限

local_umask=02

 

 

 

锁定目录:
**1.修改文件 /etc/vsftpd.conf**
chroot_list_enable=YES
# (default follows)
chroot_list_file=/etc/vsftpd.chroot_list
local_root=/home/uftp

**2.修改文件/etc/vsftpd.chroot_list**
加入uftp

**3.设置目录权限**
chmod a-w /home/uftp

posted on   刘顺利  阅读(426)  评论(1编辑  收藏  举报

编辑推荐:
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示