sftp和ftp是两种协议是不同的,sftp是ssh内含的协议,只要sshd服务器启动了,它就可用,它本身不需要ftp服务器启动。

1.查看openssh软件版本,想sftp服务用户只能访问特定的文件目录,版本需要4.8以上

[root@localhost ftp]# rpm -qa | grep openssh

openssh-server-5.3p1-81.el6_3.x86_64

openssh-5.3p1-81.el6_3.x86_64

openssh-clients-5.3p1-81.el6_3.x86_64

2.新增用户,限制用户只能通过sftp访问

[root@localhost ftp]# useradd -m -d /opt/ftp/dave -s /sbin/nologin dave

3.限制用户通过sftp登录进来时只能进入主目录,修改/etc/ssh/sshd_config文件

[root@localhost ftp]# vim /etc/ssh/sshd_config

#Subsystem sftp /usr/libexec/openssh/sftp-server

Subsystem sftp internal-sftp

Match User dave

ChrootDirectory /opt/ftp/dave

X11Forwarding no

AllowTcpForwarding no

ForceCommand internal-sftp

重启ssh

4.测试访问

root@10.1.1.200:test# sftp -oPort=22 dave@10.1.6.175

Connecting to 10.1.6.175...

dave@10.1.6.175's password:

Read from remote host 10.1.6.175: Connection reset by peer

Couldn't read packet: Connection reset by peer

发现连接不上,查看日志

[root@localhost ftp]# tail /var/log/messages

Jan 6 11:41:41 localhost sshd[4907]: fatal: bad ownership or modes for chroot directory "/opt/ftp/dave"

Jan 6 11:41:41 localhost sshd[4905]: pam_unix(sshd:session): session closed for user dave

解决方法:

目录权限设置上要遵循2点:

ChrootDirectory设置的目录权限及其所有的上级文件夹权限,属主和属组必须是root;

ChrootDirectory设置的目录权限及其所有的上级文件夹权限,只有属主能拥有写权限,权限最大设置只能是755。

如果不能遵循以上2点,即使是该目录仅属于某个用户,也可能会影响到所有的SFTP用户。

[root@localhost ftp]# ll

total 4

drwxr-xr-x 3 dave dave 4096 Jan 5 13:06 dave

[root@localhost ftp]# chown root:root dave

[root@localhost ftp]# chmod 755 dave

[root@localhost ftp]# ll

total 4

drwxr-xr-x 3 root root 4096 Jan 5 13:06 dave

然后在测试通过

root@10.1.1.200:test# sftp -oPort=22 dave@10.1.6.175

Connecting to 10.1.6.175...

dave@10.1.6.175's password:

sftp> ls

test

sftp> cd ..

sftp> ls

test

sftp> cd test

sftp> ls

1.txt

sftp> get 1.txt

Fetching /test/1.txt to 1.txt

/test/1.txt

可以看到已经限制用户在家目录,同时该用户也不能登录该机器。

linux系统访问sftp,Linux上设置用户通过SFTP访问目录的权限的方法相关推荐

  1. linux系统自动登出时间设置,ssh修改超时自动登出时间的方法

    前言 众所周知,当我们通过ssh远程登录到另一台服务器之后,如果长时间不做操作,那么会被服务器自动登出,并且会告诉你timed out waiting for input: auto-logout.如 ...

  2. linux给ftp账号分配sftp权限,Linux设置用户通过SFTP访问目录的权限教程

    东坡小编这里给大家分享的是Linux设置用户通过SFTP访问目录的权限教程,对linux sftp 用户权限设置可以参考下. sftp和ftp是两种协议是不同的,sftp是ssh内含的协议,只要ssh ...

  3. 【linux系统编程】linux用户及权限管理

    Linux用户管理及权限控制 正文开始@Assassin 目录: Linux用户管理及权限控制 1. linux权限的概念: 2. 用户账号之间的切换: 2.1 普通用户之间的切换: 2.2 普通用户 ...

  4. linux系统密码自动丢失,通过单用户模式找回linux系统丢失的密码

    通过单用户模式找回linux系统丢失的密码 发布时间:2006-09-12 11:30:31来源:红联作者:benny_feng 一.单用户模式: 单用户模式要求我们输入root用户的密码,否则您无法 ...

  5. linux导出文件夹到u盘,把Linux系统放在U盘上直接在U盘上运行Linux

    Linux以它的高效和灵活的特性深受着某些用户的喜爱,但是又不方便平时操作的习惯,如果用户不想在电脑上安装Linux系统,又想使用Linux系统的话,这里教大家一个好方法,把Linux系统放在U盘上, ...

  6. linux进入u盘目录,Linux系统放在U盘上直接在U盘上运行Linux

    Linux系统放在U盘上直接在U盘上运行Linux 今天给大家分享这个教程,大家有需要的可以试试看 以下使用dos+grub4dos启动Ubuntu,这种启动方式方便加入PE和dos工具箱制作多重启动 ...

  7. linux导出文件夹到u盘,Linux系统放到U盘上直接在U盘上运行Linux

    以下使用dos+grub4dos启动Ubuntulinux进入u盘目录,这种开启方法便于加入PE和dos工具箱制作多重启动盘. 优盘之家 1.引导dos启动 U盘之家 启动UltraISO,选择菜单& ...

  8. 装了linux装不上win,在windos server 2008系统下装LINUX系统怎么装不上呢?

    在windos server 2008系统下装LINUX系统怎么装不上呢? 石茜珍 2017-08-01 17:08:00 unix的稳定性绝对是无法比拟,所以用来做很高端的服务器,所以稳定性绝对是其 ...

  9. 详解Linux系统的开机、重启和用户登录注销

    详解Linux系统的开机.重启和用户登录注销 关机和重启命令 基本介绍 注意细节 用户登录和注销 基本介绍 使用细节 关机和重启命令 基本介绍 shutdown命令的使用 shutdown -h no ...

最新文章

  1. 【jquery】一款不错的音频播放器——Amazing Audio Player
  2. XAMPP维基百科,自由的百科全书
  3. python建立ip代理池_Python搭建代理IP池实现存储IP的方法
  4. SpringBoot启动时实现自动执行代码的几种方式讲解
  5. iOS 分组索引和索引分区
  6. 蓝桥杯 ADV-92 算法提高 求最大公约数
  7. BZOJ:1001狼抓兔子
  8. native层 安卓_安卓逆向学习入门之过反调试(一)
  9. python统计图像灰度直方图_python 对一幅灰度图像进行直方图均衡化
  10. spring报“Could not resolve placeholder”错误
  11. java冒泡排序 代码简单明了
  12. 谷歌f12能看到php代码吗,谷歌浏览器F12基本用法
  13. UTF-8、BOM、feff的问题
  14. JavaScript使用手册、范例
  15. 快播关闭服务器,你怎么看?
  16. 一个屌丝程序猿的人生(六十九)
  17. python文章抄袭检测_CSDN文章被洗稿、抄袭严重!用Python做一个“基于搜索引擎的文章查重工具”,解决!...
  18. [Python]列出100以内被7整除不被5整除的数
  19. Java单元测试实践-09.Mockito的Stub参数条件
  20. 请将文件MP_verify_N8no8dpNO9n7wuBZ.txt上传至XXX指向的web服务器(或虚拟主机)的目录

热门文章

  1. 夯实Java基础(二)——面向对象之封装
  2. 主席树初探--BZOJ1901: Zju2112 Dynamic Rankings
  3. 【MFC】将当前的日期转化为1970年开始的秒计数
  4. Kafka.net使用编程入门
  5. [转载] epoll详解
  6. Ms Excel 2010合并单元格方法
  7. 新手入门概览(一):机器学习
  8. 非标准硬件控制之增加系统API
  9. 快捷键查看Emacs源码
  10. Makefile之 .PHONY 作用