Linux下SFTP用户权限设置条件及实现命令

众所周知SFTP账号是基于SSH账号的,所以在默认情况下访问服务器的权限是非常大的,今天的教程就是教大家进行SFTP用户权限设置。

必要条件:

你的openssh-server版本至少得失4.8p1, 因为配置权限需要版本添加的新配置项ChrootDirectory来完成。

如何查看自己服务器上的ssh版本?大家可以尝试以下命令:

$ ssh -V

具体实施步骤:

1. 我们需要创建一个用户组,专门用于sftp用户

$ groupadd sftpusers

2. 我们创建一个用户test

$ useradd -s /bin/false -G sftpuser test

注意这里我们将test用户的shell设置为/bin/false使他没有登陆shell的权限

3. 编辑 /etc/ssh/sshd_config

找到Subsystem这个配置项,将其修改为

Subsystem sftp internal-sftp

然后再到文件最尾处增加配置设定属于用户组sftpusers的用户都只能访问他们自己的home文件夹

Match Group sftpusers

ChrootDirectory %h

ForceCommand internal-sftp

AllowTcpForwarding no

保存并关闭文件

4. 修改test用户home文件夹的权限,让其属于root用户

chown root ~test

5. 重启sshd服务

$ service sshd restart

6. 测试用户账号

$ ssh test@localhost

连接会被拒绝或者无法登陆

$ sftp tesst@localhost

登陆后你会发现你的账号无法切换到除自己home目录之外的地方的

常见问题:

如果你链接服务器的时候出现下面的提示:

Write failed: Broken pipe

Couldn't read packet: Connection reset by peer

这个问题的原因是ChrootDirectory的权限问题,你设定的目录必须是root用户所有,否则就会出现问题。所以请确保sftp用户根目录的所有人是root, 权限是 750 或者 755。

时间: 2013-02-26

linux命令scp和sftp详细介绍 1. 使用 scp 命令传输文件: 使用 scp 命令可以用来通过安全.加密的连接在不同主机之间传输文件. (1)把本地文件传输到远程主机: 一般语法:scp [本地文件] [用户名@远程主机IP地址:/目标文件夹] (2) 把远程文件传输到本地主机: 一般语法:scp [用户名@远程主机IP地址:/源文件] [本地目录] Note: scp后加 -r 选项可以传输文件夹. 2.使用sftp命令建立FTP会话: 使用sftp命令可以用来打开安全互动的.加密

FtpWebRequest类实现ftp功能的一般过程 1.创建一个FtpWebRequest对象,指向ftp服务器的uri 2.设置ftp的执行方法(上传,下载等) 3.给FtpWebRequest对象设置属性(是否支持ssl,是否使用二进制传输等) 4.设置登录验证(用户名,密码) 5.执行请求 6.接收相应流(如果需要的话) 7.如果没有打开的流,则关闭ftp请求 其中一些重要的属性如下: ·Credentials - 指定登录ftp服务器的用户名和密码. ·KeepAlive - 指定连接

FTP的命令行格式为:ftp -v -d -i -n -g [主机名],其中 -v显示远程服务器的所有响应信息: -n限制ftp的自动登录,即不使用: .n etrc文件: -d使用调试方式: -g取消全局文件名. ftp使用的内部命令如下(中括号表示可选项): 1.![cmd[args]]:在本地机中执行交互shell,exit回到ftp环境,如:!ls*.zip. 2.$ macro-ame[args]:执行宏定义macro-name. 3.account[password]:提供登录远程系

介绍:从本地以用户anok登录的机器192.168.0.16上通过ftp远程登录到192.168.0.6的ftp服务器上,登录用户名是peo.以下为使用该连接做的实验. 查看远程ftp服务器上用户peo相应目录下的文件所使用的命令为:ls,登录到ftp后在ftp命令提示符下查看本地机器用户anok相应目录下文件的命令是:!ls.查询ftp命令可在提示符下输入:?,然后回车. 1.从远程ftp服务器下载文件的命令格式: get  远程ftp服务器上当前目录下要下载的文件名  [下载到本地机器上当前

0 ajaxFileUpload简介 ajaxFileUpload插件是一个非常简单的基于Jquery的异步上传文件的插件,使用过程中发现很多与这个同名的,基于原始版本基础之上修改过的插件,文件版本比较多,我把我自己使用的ajaxFileUpload文件上传到博客园上了,想要使用的朋友可以下载:http://xiazai.jb51.net/201611/yuanma/ajaxfileupload(jb51.net).rar. 整个插件源码不到200行,实现非常简单,大致原理就是通过js动态创建隐

asp.net是没有直接选取文件夹的控件的,我也不知道,如果大家有的话可以一起交流下.后来我想着应该有三种方法: ①先将文件夹压缩后上传服务器,然后再服务器上解压: ②获得文件夹名及目录,然后遍历文件夹下面的文件以及子文件夹,循环上传: ③是使用AcitiveX控件. 那我果断就先通过上传对话框获得文件夹名和文件夹所在的系统文件路径,可是接下来就错愕了,一开始是想使用javascript遍历文件夹的 1  var fso = new ActiveXObject("Scripting.FileSy

hdfs文件操作操作示例,包括上传文件到HDFS上.从HDFS上下载文件和删除HDFS上的文件,大家参考使用吧 复制代码 代码如下: import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.*; import java.io.File;import java.io.IOException;public class HadoopFile {    private Configuration conf =null

复制代码 代码如下: <?session_start ();if($_SESSION['Company']==''){ //exit();}?><?php //上传图片 $uptypes=array('image/jpg','image/jpeg','image/png','image/pjpeg','image/gif','image/bmp','application/x-shockwave-flash','image/x-png'); $max_file_size=5000000;

FTP 是File Transfer Protocol(文件传输协议)的英文简称,而中文简称为"文传协议".用于Internet上的控制文件的双向传输.同时,它也是一个应用程序(Application).基于不同的操作系统有不同的FTP应用程序,而所有这些应用程序都遵守同一种协议以传输文件.在FTP的使用当中,用户经常遇到两个概念:"下载"(Download)和"上传"(Upload)."下载"文件就是从远程主机拷贝文件至自己

导言: 到目前为止,我们的教程围绕的是text数据.然而,很多应用程序既需要处理text数据,也需要处理二进制数据.比如招聘网站可能需要用户上传Word或PDF格式的简历. 使用二进制数据面临一项挑战:在应用程序中如何存储二进制数据.我们必须更新添加记录的界面以支持用户上传本地电脑中的文件,并添加额外的功能以下载某条记录的相关二进制数据.本章以及接下来的3章,我们探讨如何处理这些问题.在本系列教程结束时,我们将创建一个功能完善的应用程序,它为每种类型的记录提供相关的图片和PDF小册子. 在本系列

本文实例为大家分享了linux下php上传文件注意事项,供大家参考,具体内容如下 1.修改上传目录权限 linux 修改某目录下所有所有子目录权限 chmod -R 777 html 修改某目录为任何用户都用写读执行权限 chmod a+rwx html 2.设置上传文件的根目录 //取得项目根目录 $siteRoot = dirname(__file__); 3.修改配置文件的上传大小 php.ini post_max_size = 200M upload_max_filesize = 200

1.先做个最简单的上传文件 复制代码 代码如下:

把php上传文件时经常碰到的几个问题总结一下吧,以后用到时不用再去找了. 1.先做个最简单的上传文件 复制代码 代码如下:

linux sftp没有读写权限,Linux下SFTP用户权限设置条件及实现命令相关推荐

  1. linux mysql安装 读写分离_linux下安装mysql-proxy 配置读写分离

    一.软件列表 ncurses-5.7.tar.gz wget http://ftp.gnu.org/pub/gnu/ncurses/ncurses-5.7.tar.gz mysql-proxy-0.8 ...

  2. Linux学习总结(57)——生产环境用户权限管理规范

    一.问题现状 公司生产服务器通常上百台,甚至上千台上万台,操作人员很多(开发+运维+架构+DBA).大家使用Linux服务器时,不同职能的员工水平不同,老手和新手员工熟知度不同,如果权限控制不当(如r ...

  3. linux移动文件 rf参数_linux下文件的复制、移动与删除命令为:cp,mv,rm

    查看centOS 版本     cat /etc/redhat-release 1,复制粘贴文件 cp  [选项]  源文件或目录  目标文件或目录 2,剪切粘贴文件 mv [选项]  源文件或目录 ...

  4. 怎么给mysql用户添加权限_MySQL下添加用户以及给予权限的实现

    在mysql中添加用户的方法如下: 1 使用root用户登录 mysql -u root -p 2  选择mysql数据库 use mysql 3  添加用户 insert into user(Hos ...

  5. centos系统ftp服务器的目录权限,CentOS7 添加FTP用户并设置权限

    step 1 安装配置Vsftp服务器 一.配置防火墙,开启FTP服务器需要的端口 CentOS 7.0默认使用的是firewall作为防火墙,这里改为iptables防火墙. 1.关闭firewal ...

  6. mysql管理员权限哪个表_Mysql 用户权限管理(权限列表)

    1. MySQL 权限介绍 mysql中存在4个控制权限的表,分别为user表,db表,tables_priv表,columns_priv表,我当前的版本mysql 5.7.22 . mysql权限表 ...

  7. mysql用户权限管理:查看用户权限、授予用户权限、收回用户权限

    查看用户权限.授予用户权限.收回用户权限命令总结: 项 命令示例 查看用户权限 show grants; show grants for chushiyan@localhost; 授予用户权限 gra ...

  8. oracle 权限控制表,Oracle 用户权限管理与常用权限数据字典列表

    用户权限管理 Oracle 权限 权限允许用户访问属于其它用户的对象或执行程序,ORACLE系统提供三种权限:Object 对象级.System 系统级.Role 角色级.这些权限可以授予给用户.特殊 ...

  9. 会员权限 表设计mysql_用户权限管理数据库设计

    RBAC(Role-Based Access Control,基于角色的访问控制),就是用户通过角色与权限进行关联.简单地说,一个用户拥有若干角色,每一个角色拥有若干权限.这样,就构造成"用 ...

最新文章

  1. 新款笔记本写代码贼爽,包邮送一台!
  2. setTimeout 定时器的使用
  3. .net webservice studio调用方法传参_Oracle触发器调用webservice说明
  4. 下拉加载 实现 java_[Java教程]iscroll5实现一个下拉刷新上拉加载的效果
  5. euv光刻机有什么用_台积电又买了13台EUV光刻机?
  6. 先序、中序确定二叉树
  7. 缩放手势 ScaleGestureDetector 源码解析,这一篇就够了
  8. 吐槽 Twitter 后,马斯克用 30 亿美元入股 Twitter,成为最大股东
  9. MaxCompute Studio使用心得系列3——可视化分析作业运行
  10. AngularJS JetBrains WebStorm简介
  11. Python是Python的web框架
  12. 十三种常用的数据挖掘的技术
  13. Codeforces Round #512 (Div. 2) - D. Vasya and Triangle (皮克公式)
  14. 大数据时代的教育宏观治理体制现代化变革
  15. php大写数字转换,php如何实现数字金额转换大写金额(代码示例)
  16. html5 按钮效果,7款外观迷人的HTML5/CSS3 3D按钮特效
  17. 神马不是浮云,有未来就能改变世界
  18. 反理学的义利(理欲)统一观
  19. Word Embedding与Word2Vec
  20. VScode 直接运行ts文件

热门文章

  1. iOS开发——定位 获取经纬度
  2. ubuntu的鼠标倒置解决步骤
  3. Java设计模式(代理模式)
  4. 制作带关闭按钮的固定广告
  5. 小白系统盘安装ubuntu系统详细教程
  6. 金字塔 matlab,图像的金字塔表示(MATLAB)
  7. CSS制作的导航菜单向上箭头
  8. 学会这10款AI绘画工具,你也可以成为插画师
  9. Telnet 远程登录
  10. iex : 使用“3”个参数调用“SetEnvironmentVariable”时发生异常:“尝试执行未经授权的操作。”