一, 设置相关用户,用户组,ssh配置文件

mkdir -pv /opt/ftpsite/{admin,user1,user2}
groupadd sftpadmins
groupadd sftpusers useradd -g sftpadmins -s /sbin/nologin -d /opt/ftpsite/ admin
passwd admin
123456 useradd -g sftpusers -s /sbin/nologin -d /opt/ftpsite/ user1
passwd user1
111111 useradd -g sftpusers -s /sbin/nologin -d /opt/ftpsite/ user2
passwd user2
222222 [注意:不要使用 echo "PASSWORD" | passwd --stdin USERNAME 这种方式设定密码,经测试有bug] vim /etc/ssh/sshd_config
Port 35021
Subsystem sftp internal-sftp
Match Group sftpadmins,sftpusers
ChrootDirectory %h
ForceCommand internal-sftp
AllowTcpForwarding no
X11Forwarding no 说明1: ChrootDirectory %h ,表示用户通过sftp登录后就把根目录切换到它自己的家目录
说明2: 以上为经过修改的配置 sftp -oPort=35021 admin@192.168.56.23
输入密码进行登录

  

二. 设置权限

三个用户先测试登录成功,但因为目录都是root用户的,所以没有写入权限

接下来修改用户权限如下
[root]# ll -d /opt/ftpsite
drwxr-xr-x 5 root root 4096 5月 11 10:59 /opt/ftpsite
说明:用户的家目录属主必须是root,且权限最高755 [root]# cd ftpsite/
[root]# ll
drwxrwx--- 2 admin sftpadmins 4096 5月 12 15:10 admin
dr-xrwx--- 2 user1 sftpadmins 4096 5月 12 12:15 user1
dr-xrwx--- 2 user2 sftpadmins 4096 5月 12 15:11 user2

  

sftp目录结构 /opt/ftpsite/{admin,user1,user2},

注意目录admin, user1, user2的所属和权限设置,非常重要!!!

三. 测试

用户名: admin   密码: 123456
sftp -oPort=35021 admin@192.168.56.23
可以在{admin,user1,user2}目录读写

用户名: user1    密码: 111111
sftp -oPort=35021 user1@192.168.56.23
可以列出所有目录,但只能进入bmcoop1目录读取,其他目录拒绝查看/进入

用户名: user2    密码: 222222
sftp -oPort=35021 user2@192.168.56.23
可以列出所有目录,但只能进入bmcoop2目录读取,其他目录拒绝查看/进入

使用FileZilla连接时,格式如下
主机: sftp://192.168.56.23
用户名: user2
密码:  222222
端口: 35021

搭建sftp并设置不同权限的多个用户的更多相关文章

  1. 搭建SFTP服务器,允许一个或多个用户拥有一个或多个目录的rwx权限

    1.引言 sftp可以为传输文件提供一种安全的网络的加密方法.sftp 与 ftp 有着几乎一样的语法和功能.SFTP 为 SSH的其中一部分,是一种传输档案至 Blogger 伺服器的安全方式.其实 ...

  2. Linux Centos 6.6搭建SFTP服务器

    Linux Centos 6.6搭建SFTP服务器 在Centos 6.6环境使用系统自带的internal-sftp搭建SFTP服务器. 打开命令终端窗口,按以下步骤操作. 0.查看openssh的 ...

  3. CentOS7.5 下搭建SFTP

    CentOS7.5 下搭建SFTP Linux 创建用户组 groupadd sftp 创建用户test useradd -G sftp -s /sbin/nologin test -s 禁止用户ss ...

  4. linux搭建sftp服务器

    转自:http://blog.csdn.net/superswordsman/article/details/49331539 最近工作需要用到sftp服务器,被网上各种方法尤其是权限设置问题搞得晕头 ...

  5. centos6和ubuntu14搭建sftp

    参考 http://blog.csdn.net/xinxin19881112/article/details/46831311 一. 在Centos 6.6环境使用系统自带的internal-sftp ...

  6. 搭建sftp服务+nginx代理

    在公司,经常会用到sftp服务,比如两个公司对接生产项目,其中一方,要在sftp上上传pdf文件,另一方公司要在sftp服务器上用nginx代理直接下载pdf文件.下面就说说我在实际中应用到的sftp ...

  7. linux 上搭建sftp服务

    原文链接:https://www.cnblogs.com/yanduanduan/p/9046723.html sftp和ftp的区别 FTP是一种文件传输协议,一般是为了方便数据共享的.包括一个FT ...

  8. Linux ---搭建SFTP服务器

    在Centos 6.6环境使用系统自带的internal-sftp搭建SFTP服务器. 打开命令终端窗口,按以下步骤操作. 0.查看openssh的版本 ssh -V 使用ssh -V 命令来查看op ...

  9. windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)

    文章标题: windows 上搭建 sftp 服务器 - freesshd全过程 关键字 : freesshd 文章分类: 教程 创建时间: 2020年3月23日 缘由 动手 第一步:添加用户 第二步 ...

随机推荐

  1. ios规格证明

    解决的方法是在Info.plist文件中添加:ITSAppUsesNonExemptEncryption 设置为NO

  2. Linux的作业管理

    一.作业管理的场景 作业管理(job control)是在bash环境下使用的,主要使用在同一个bash中管理多个作业的场景,譬如登录bash之后想同时复制文件.数据搜索,编译. 但是bash的作业管 ...

  3. 多视几何——三角化求解3D空间点坐标

    VINS-Mono / VINS-Fusion中triangulatePoint()函数通过三角化求解空间点坐标,代码所体现的数学描述不是很直观,查找资料,发现参考文献[1]对这个问题进行详细解释,记 ...

  4. 解决VirtualBox 上的XP 关机时重启 , 启动时蓝屏 ,点击电源选项蓝屏

    三个问题一次性解决. 启动时的蓝屏显示错误信息是: STOP 0x000000CE (...) DRIVER_UNLOADED_WITHOUT_CANCELLING_PENDING_OPERATION ...

  5. [SoapUI] 在Test Step 下加Script Assertion,用 messageExchange 获取当前步骤的response content

    //Get response content of the current request def response = messageExchange.getResponseContent() // ...

  6. redis集群部署及常用的操作命令(上)

    简单说下自己测试搭建简单的redis集群的大体步骤: 1.首先你的有6个redis(官方说最少6个,3master,3slave),可以先在一台机器上搭建,搭建到多台上应该只需要改变启动命令即可(可能 ...

  7. chrome crx下载路径

    chrome crx下载后会被删除,可在检查时粘贴出来,下载路径在: %localappdata%\Google\Chrome\User Data\Webstore Downloads 参考:http ...

  8. python 中面向对象编程简单总结1

    1.类的定义方式 class ClassName(object): #object 表示继承的类,默认为object pass 类的使用类似函数的调用,也可以认为是调用了一次模板来创建一个实例. 2. ...

  9. CBV加装饰器解决登录注册问题和 <<中间件>>

    文本目录 CBV加装饰器解决登录注册问题 一:什么是中间件 二:中间件有什么用 三:自定义中间件 四:中间件应用场景 五:SCRF TOKEN跨站请求伪造 六: 其他操作 CBV加装饰器解决登录注册问 ...

  10. 4.4.4 无锁的对象引用:AtomicReference和AtomicStampedReference

    AtomicReference 这个类和AtomicInteger非常类似,只是AtomicReference对应普通的对象引用,而AtomicInteger 它是对整数的封装,它的方法如下 对wea ...