近期要给服务器设置一个SFTP用户,可以上传删除修改的SFTP,但是禁止该用户SSH登录。这里记录下来

先升级

yum update
2
 
1
yum update

fox.风

创建用户组 sftp

用户组名为sftp

groupadd sftp
x
 
1
groupadd sftp

创建用户 test

例如这个用户名为 test

useradd -G sftp -s /sbin/nologin test 
2
 
1
useradd -G sftp -s /sbin/nologin test 

-s 禁止用户ssh登陆 
-G 加入sftp 用户组

创建密码

passwd test 
2
 
1
passwd test 

修改配置文件sshd_config

vim /etc/ssh/sshd_config
2
 
1
vim /etc/ssh/sshd_config

修改为如下

....
##下面这行注释掉
#Subsystem sftp /usr/libexec/openssh/sftp-server
##后面加入
Subsystem sftp internal-sftp
#注意,以下要 放在 本文件的最后行,否则 root用户无法登陆
Match Group sftp
X11Forwarding no
AllowTcpForwarding no
ChrootDirectory %h
ForceCommand internal-sftp
x
 
1
....
2
##下面这行注释掉
3
#Subsystem sftp /usr/libexec/openssh/sftp-server
4
##后面加入
5
Subsystem sftp internal-sftp
6
#注意,以下要 放在 本文件的最后行,否则 root用户无法登陆
7
Match Group sftp
8
X11Forwarding no
9
AllowTcpForwarding no
10
ChrootDirectory %h                      
11
ForceCommand internal-sftp

说明 
Match Group sftp 匹配sftp用户组中的用户 
ChrootDirectory %h 只能访问默认的用户目录(自己的目录),例如 /home/test

设置目录权限

chown root:sftp /home/test
chgrp -R sftp /home/test
chmod -R 755 /home/test
#设置用户可以上传的目录,改目录下允许用户上传删除修改文件及文件夹
mkdir /home/test/upload
chown -R test:sftp /home/test/upload
chmod -R 755 /home/test/upload
x
9
 
1
chown root:sftp /home/test
2
chgrp -R sftp /home/test
3
chmod -R 755 /home/test
4
#设置用户可以上传的目录,改目录下允许用户上传删除修改文件及文件夹
5
mkdir /home/test/upload
6
chown -R test:sftp /home/test/upload
7
chmod -R 755 /home/test/upload

重启ssh

systemctl restart sshd.service
2
 
1
systemctl restart sshd.service

链接

新建一个 终端链接,或者在 FTP 客户端中使用SFTP 模式链接(输入相关的IP用户名及端口)

sftp test@192.1.1.1
2
 
1
sftp test@192.1.1.1

F&Q

如果报类似以下错误

sftp Connection to  closed by remote host.
或者
Write failed: Broken pipe
Couldn't read packet: Connection reset by peer
 
1
sftp Connection to  closed by remote host.
2
或者
3
Write failed: Broken pipe 
4
Couldn't read packet: Connection reset by peer 

Centos 7 设置 SFTP的更多相关文章

  1. 如何在 CentOS 中设置 NTP 服务器

    网络时间协议(NTP)用来同步网络上不同主机的系统时间.你管理的所有主机都可以和一个指定的被称为 NTP 服务器的时间服务器同步它们的时间.而另一方面,一个 NTP 服务器会将它的时间和任意公共 NT ...

  2. VMware于CentOS网络设置

    VMware于CentOS网络设置 底: 笔记本电脑有两块网卡: 1. 网卡连接公司内网,仅仅配置了内网ip和子网掩码. 2. 无线网卡.连接4g无线路由器.dhcp自己主动配置. 问题: 在VMwa ...

  3. CentOS 网络设置修改 指定IP地址 DNS 网关(转)

    CentOS 网络设置修改 指定IP地址 DNS 网关(实测 笔记)   环境: 系统硬件:vmware vsphere (CPU:2*4核,内存2G) 系统版本:Centos-6.5-x86_64 ...

  4. CentOS 网络设置

    CentOS 网络设置有两种方式配置网络可以连接外网: 自动分配与手动设置Ip 一,自动分配ip: 新装的centos6.0,用ifconfig只显示ifcfg-lo的信息,可以用ifup eth0的 ...

  5. linux centos 如何设置swap大小?

    linux centos 如何设置swap大小? swap的值都是安装系统的时候设置好的,一般设置为内存的两倍大小.使用过程中发现swap值过小只能添加.用free -m 命令查看当前swap大小 使 ...

  6. yum命令安装软件时,出现--centos 7 安装apache 出现 Could not resolve host: mirrorlist.centos.org; 未知的错误"--CentOS网络设置 couldn't resolve host 'mirrorlist.centos.org问题解决

    CentOS网络设置 couldn't resolve host 'mirrorlist.centos.org问题解决 今天在虚拟机上安装完CentOS6.5之后,首次使用时yum命令安装软件时,出现 ...

  7. centos 基础设置

    centos 6 关闭防火墙 查看防火墙是否开启 service iptables status 停止防火墙 service iptables stop 禁止开机自启动防火墙 chkconfig ip ...

  8. CentOS中设置Windows共享文件夹

    在CentOS中设置Samba可实现和Windows共享文件夹.常见的需求:1)用户能够在Windows机器上通过共享文件夹访问远程Linux服务器上自己的主目录:2)用户能够在Windows机器上访 ...

  9. Centos 7设置静态IP,修改时区,关闭防火墙

    Centos 7设置静态IP # vi /etc/sysconfig/network-scripts/ifcfg-enxxx BOOTPROTO="static" ...... I ...

随机推荐

  1. Xilinx约束学习笔记(一)—— 约束方法学

    <Xilinx约束学习笔记>为自己阅读 Xilinx 官方 UG903 文档后的学习笔记,大多数为翻译得来,方便大家学习. 1 约束方法学 1.1 组织约束文件 Xilinx 建议将时序约 ...

  2. NOIP 模拟 $27\; \rm 牛半仙的妹子Tree$

    题解 \(by\;zj\varphi\) 很妙的虚树题. 考虑若没有操作 \(2\),那么直接记录一下扩散到它的最短时间和询问时间相比即可,可以当作一个树上最短路. 有 \(2\) 操作怎么办,将操作 ...

  3. WPF 中的 Command 命令

    <Window x:Class="CommandDemo.MainWindow" xmlns="http://schemas.microsoft.com/winfx ...

  4. mysql 用 source 导入备份数据

    输入命令:source E:/proDB/start2.sql;

  5. springboot @value无法赋值

    1解决方式在类上在加@Compent @Component@EnableBinding(Sink.class)public class ReceiveMessageListenerController ...

  6. 微信小程序的button按钮设置宽度无效

    亲,你是不是也遇到了微信小程序的button按钮设置宽度无效.让我来告诉你怎么弄 方法1. 样式中加入!important,即:width: 100% !important; wxss代码示例 1 2 ...

  7. 关闭 Scroll Lock

    通常,在电子表格中选择一个单元格并按箭头键时,所选内容会在各个单元格之间上下左右移动,具体取决于您按的箭头键.但是,如果在 Scroll Lock 处于开启状态时按箭头键,则向上或向下滚动一行.或者, ...

  8. Git使用教程一

    Git是一个分布式版本控制系统,简单的说其就是一个软件,用于记录一个或若 干文件内容变化,以便将来查阅特定版本修订情况的软件. Github (https://www.github.com) 是-一个 ...

  9. Mac超好用的软件合集和系统设置

    软件篇 这些软件好像只有动态壁纸是收费的. 推荐的都是特别小巧,更加专注特定功能,没那么多花里胡哨.当然你们有什么更好用的也可以推荐. 简单,好用才是我最喜欢的. Bob Github开源,Bob 是 ...

  10. 剑指 Offer 31. 栈的压入、弹出序列

    剑指 Offer 31. 栈的压入.弹出序列 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如,序列 {1,2,3,4,5} 是某 ...