centos 安装sftp服务

摘要:
#Subsystemsftp/usr/libexec/openssh/sftp服务器将以下行添加到文件的最后一行,然后保存Subsystemsftp内部sftpMatchGroupsftpChrootDirectory/data/sftp/%uForceCommandinternal-sftpAllowTcpForwardingnoX11Forwardingno 5。设置Chroot目录chownroot:sftp/data/sftp/mysftpchmod755/data/sftp/mysqltp/mysftp6的权限。设置SFTP用户登录后可以写入的目录后,重新启动sshd服务后,用户mysftp可以登录。但是,在使用chroot指定根目录后,根目录不应该是可写的,因此需要为mysftp创建一个新目录以上载文件。此目录的所有者是mysftp,所有组都是sftp。所有者具有写入权限,但所有组都没有写入权限。sftpmysftp@127.0.0.1如果显示sftp˃,则成功构建sftp。

打开命令终端窗口,按以下步骤操作。

0、查看openssh的版本

 ssh -V   

使用ssh -V 命令来查看openssh的版本,版本必须大于4.8p1,低于的这个版本需要升级。

 1、创建sftp组

 

groupadd sftp  

2、创建一个sftp用户,用户名为mysftp,密码为mysftp

修改用户密码和修改Linux用户密码是一样的。

useradd -g sftp -s /bin/false mysftp  //用户名
passwd mysftp  //密码

3、sftp组的用户的home目录统一指定到/data/sftp下,按用户名区分,这里先新建一个mysftp目录,然后指定mysftp的home为/data/sftp/mysftp

  1. mkdir -p /data/sftp/mysftp  
  2. usermod -d /data/sftp/mysftp mysftp  

4、配置sshd_config
文本编辑器打开 /etc/ssh/sshd_config
 vi /etc/ssh/sshd_config


找到如下这行,用#符号注释掉,大致在文件末尾处。
# Subsystem      sftp    /usr/libexec/openssh/sftp-server  

在文件最后面添加如下几行内容,然后保存

  1. Subsystem       sftp    internal-sftp    
  2. Match Group sftp    
  3. ChrootDirectory /data/sftp/%u    
  4. ForceCommand    internal-sftp    
  5. AllowTcpForwarding no    
  6. X11Forwarding no  

5、设定Chroot目录权限

 
  1. chown root:sftp /data/sftp/mysftp  
  2. chmod 755 /data/sftp/mysftp  

6、建立SFTP用户登入后可写入的目录

照上面设置后,在重启sshd服务后,用户mysftp已经可以登录。但使用chroot指定根目录后,根应该是无法写入的,所以要新建一个目录供mysftp上传文件。这个目录所有者为mysftp,所有组为sftp,所有者有写入权限,而所有组无写入权限。命令如下:

  1. mkdir /data/sftp/mysftp/upload  
  2. chown mysftp:sftp /data/sftp/mysftp/upload  
  3. chmod 755 /data/sftp/mysftp/upload  

7、修改/etc/selinux/config

文本编辑器打开/etc/selinux/config

vi /etc/selinux/config  

将文件中的SELINUX=enforcing 修改为 SELINUX=disabled ,然后保存。

在输入命令

setenforce 0  

8、重启sshd服务

输入命令重启服务。 

 

service sshd restart  

9、验证sftp环境
用mysftp用户名登录,yes确定,回车输入密码。

sftp mysftp@127.0.0.1  

显示 sftp> 则sftp搭建成功。

免责声明:文章转载自《centos 安装sftp服务》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇NGINX优化参数(转)C语言中格式化日期时间asctime()函数详细讲解下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

ubuntu下配置ftp,pureftp,果真简单清爽啊

比较了vsftp 和 proftp ,懒人果断地选择了prue-ftp,主要是简单和windows和linux之间用这个ftp就解决了乱码的问题解决的比较好 配置如下: 1.sudo apt-get install pure-ftpd 2.建立 名为 ftp(也可以叫ftpuser,自己起个好记点的)的帐号 3.匿名用户登录:  /etc/pure-ft...

微信小程序--后台交互/wx.request({})方法/渲染页面方法 解析

小程序的后台获取数据方式get/post具体函数格式如下:wx.request({}) data: { logs:[] }, onLoad:function(){ this.getdata(); } getdata:function(){//定义函数名称 var that=this; // 这个地方非常重要,重置data{}里数据时候se...

【转】centos 服务开机启动

转自: http://blog.csdn.net/educast/article/details/49558945 http://www.cnblogs.com/panjun-Donet/archive/2010/08/10/1796873.html 1、利用 chkconfig 来配置启动级别在CentOS或者RedHat其他系统下,如果是后面安装的服务...

Windows10与虚拟机中CentOS-7.2进行ftp通信

首先Linux的IP地址可以通过以下命令获取: ifconfig Windows10上面IP地址通过下面命令获取 ipconfig 你首先要保证你的主机和Linux虚拟机是可以ping通的(ping都没ping通,其他操作就进行不了) windows10如下: Linux的(ping命令后面哪个-c5表示发送五次数据包): 有些人可能windows...

修改Android中strings.xml文件, 动态改变数据

有些朋友可能会动态的修改Android中strings.xml文件中的值,在这里给大家推荐一种简单的方法。strings.xml中节点是支持占位符的,如下所示: <string name="data">整数型:%1$d,浮点型:%2$.2f,字符串:%3$s</string> 其中%后面是占位符的位置,从1开始,          ...

jquery ajax请求后台 的简单例子

jQuery.ajax(url,[settings]) 概述 通过 HTTP 请求加载远程数据。 jQuery 底层 AJAX 实现。简单易用的高层实现见 $.get, $.post 等。$.ajax() 返回其创建的 XMLHttpRequest 对象。大多数情况下你无需直接操作该函数,除非你需要操作不常用的选项,以获得更多的灵活性。 最简单的情况下...