前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >linux系统搭建ftp服务器及创建用户——centos7.3「建议收藏」

linux系统搭建ftp服务器及创建用户——centos7.3「建议收藏」

作者头像
全栈程序员站长
发布2022-09-14 11:29:42
4K0
发布2022-09-14 11:29:42
举报
文章被收录于专栏:全栈程序员必看

大家好,又见面了,我是你们的朋友全栈君。

linux 系统下搭建ftp服务器

linux 系统下搭建ftp服务器一点都不难,初次进行配置的时候花了很多时间进行linux命令扫盲,故写下这篇博客。

环境: window操作系统中安装SecureCRT 和 FlashFXP 软件 服务器端的操作系统为centos7.3 在客户端 使用SecureCRT 软件 root 帐号远程登录服务器端

重点记录:

  • 相关用户的创建、修改
  • 文件的权限控制
  • ftp登录用户白名单
  • 根目录切换

##ftp是什么

FTP是 File Transfer Protocol 文件传输协议的英文名称,用于在Internet上控制文件的双向传输. 同时它也是一个应用程序.一般的Linux系统默认带有ftp软件或者是vsftpd

##搭建ftp服务器目的 从window系统上传程序文件到linux系统的服务器里

##检查安装vsftpd软件

要使用到的linux命令:

  • “|”: 管道,把前一个命令的结果当成后一个命令的输入
  • rpm: RPM Package Manager RPM软件包管理器 ,和 RedHat有关,
  • grep: Globally search a Regular Expression and Print 全局匹配正则搜索并打印
  • yum: Yellow dog Updater,Modified,大黄更新与修改,基于rpm 的软件包管理器

查看所有的安装的软件包 并在结果中查找包含vsftp 的文件

代码语言:javascript
复制
rpm -qa | grep vsftpd

如果没有装则使用yum命令安装

代码语言:javascript
复制
yum -y install vsftpd 

##创建用户 使用useradd命令: useradd username ,默认在/home文件夹下创建一个和username一样名称的文件作为该用户所拥有的文件

代码语言:javascript
复制
useradd xiao   
passwd xiao   #(回车)给用户xiao设置登录密码

##创建用户并指定用户目录

在/var 目录下创建一个 www 文件夹,www文件夹中创建一个site文件夹一个da文件夹

代码语言:javascript
复制
cd /var
mkdir www
cd www
mkdir site
mkdir da

创建用户da并指定用户目录为/var/www/da

代码语言:javascript
复制
useradd -d /var/www/da da
passwd da

修改xiao用户的用户目录为/var/www/site

代码语言:javascript
复制
usermod -d /var/www/site xiao

备注:如果修改xiao的操作失败提示有相关进程在使用这个用户,则先杀死这些进程后再修改

代码语言:javascript
复制
  ps -u xiao | awk '{print $1}' | grep -vi pid | xargs kill -9

查看新创建的用户的信息

**tail:**默认显示指定文件的末尾10行

代码语言:javascript
复制
tail /etc/passwd
这里写图片描述
这里写图片描述

/etc/passwd文件存放的是用户的信息,由6个分号组成的7个信息,解释如下 (1):用户名。 (2):密码(已经加密) (3):UID(用户标识),操作系统自己用的 (4):GID组标识。 (5):用户全名或本地帐号 (6):开始目录 (7):登录使用的Shell,就是对登录命令进行解析的工具。

##配置/etc/vsftpd/vsftpd.conf文件

查看下该文件里有些啥

代码语言:javascript
复制
cat /etc/vsftpd/vsftpd.conf

切换当前工作目录到/etc/vsftpd

代码语言:javascript
复制
cd /etc/vsftpd

启用可以登录ftp的用户白名单配置

代码语言:javascript
复制
vi vsftpd.conf

输入:/userlist 在vsftpd.conf文件中查找userlist 相关配置 . 按下i键进入insert模式, 将按下图配置 三个选项,则user_list文件为ftp用户白名单 按下esc键退出输入模式进入命令模式 输入:wq 保存并退出

这里写图片描述
这里写图片描述
代码语言:javascript
复制
userlist_enable=YES     #启动用户列表
userlist_deny=NO        #决定是否对用户列表的用户拒绝访问ftp 
                       
userlist_file=/etc/vsftpd/user_list

##在user_list中写入 da和xiao这个两个用户

代码语言:javascript
复制
vi user_list

按下i键进入insert模式, 一行一个用户名,输入 da 和xiao 按下esc键退出输入模式进入命令模式 输入:wq 保存并退出

##查看vsftpd 服务的运行状态

代码语言:javascript
复制
systemctl status vsftpd

如果最后一条状态是stoped则启动vsftpd

代码语言:javascript
复制
systemctl start vsftpd 

如果最后一条状态是started则重启vsftpd

代码语言:javascript
复制
systemctl restart vsftpd 

##在window系统中使用FlashFXP 客户端登录 使用da 和xiao 用户分别登录,发现在客户端可以浏览整个linux系统的文件夹 继续配置vsftpd.conf 文件, ##配置vsftpd.conf 锁定根目录

代码语言:javascript
复制
local_root= /var/www        #本地用户登录后自动转到的ftp根目录
chroot_local_user=YES       #将所有用户限定在指定的主目录内
chroot_list_enable=NO       #不启用列外的用户列表
chroot_list_file=/etc/vsftpd/chroot_list  #指定列外的用户列表文件

配置完之后重启vsftpd服务

##使用FlashFXP 客户端登录并创建文件夹 使用da用户名登录,在da文件夹中创建一个新的文件夹test

这里写图片描述
这里写图片描述

结果失败 ##配置文件夹权限 切换工作目录到/var/www

代码语言:javascript
复制
cd /var/www

查看www文件夹中所包含的文件的信息

代码语言:javascript
复制
ll
这里写图片描述
这里写图片描述

上图显示的信息为,

  1. da和site文件夹属于root用户,属于root用户组, 因为是root用户创建的文件夹
  2. root用户可以对da和site文件夹进行r(读),w(写),x(执行)等操作
  3. root用户组内的用户可以对da和site文件夹进行r(读),x(执行)等操作
  4. 其他用户可以对da和site文件夹进行r(读),x(执行)等操作.

da 和 xiao 这两个用户属于其他用户 故不能执行创建文件夹(写)的操作

改文件的权限,将da的拥有者改为da,site的拥有者改为xiao

代码语言:javascript
复制
chown da:da da
这里写图片描述
这里写图片描述
代码语言:javascript
复制
chown xiao:xiao site
这里写图片描述
这里写图片描述

这个时候 他们可以在各自拥有的文件夹这创建文件 ,但不可以到对方的文件夹中创建文件

修改da用户的所属用户组,并修改site文件夹的权限 把da用户纳入 xiao的用户组

代码语言:javascript
复制
usermod -g xiao da
这里写图片描述
这里写图片描述

如图所示:da用户的用户组id值和xiao的用户组id值变得一样了

修改site文件夹的权限,允许同一个用户组的用户拥有rwx权限

代码语言:javascript
复制
chmod 775 site
这里写图片描述
这里写图片描述

此时da 用户可以在site文件夹中创建新的文件夹

##权限值的解读 文件夹权限: r==>可读 w==>可写 x==>可执行 r=4 w=2 x=1 777 代表 rwx-rwx-rwx 所有用户都可读可写可执行。


发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/158713.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年7月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • linux 系统下搭建ftp服务器
相关产品与服务
访问管理
访问管理(Cloud Access Management,CAM)可以帮助您安全、便捷地管理对腾讯云服务和资源的访问。您可以使用CAM创建子用户、用户组和角色,并通过策略控制其访问范围。CAM支持用户和角色SSO能力,您可以根据具体管理场景针对性设置企业内用户和腾讯云的互通能力。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档