Linux Centos 6.6搭建SFTP服务器

原创 2015年07月10日 15:49:42

在Centos 6.6环境使用系统自带的internal-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  //密码

useradd -g sftp -s /bin/false mysftp
passwd mysftp

3、sftp组的用户的home目录统一指定到/data/sftp下,按用户名区分,这里先新建一个mysftp目录,然后指定mysftp的home为/data/sftp/mysftp
mkdir -p /data/sftp/mysftp
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  

在文件最后面添加如下几行内容,然后保存。
Subsystem       sftp    internal-sftp  
Match Group sftp  
ChrootDirectory /data/sftp/%u  
ForceCommand    internal-sftp  
AllowTcpForwarding no  
X11Forwarding no

5、设定Chroot目录权限
chown root:sftp /data/sftp/mysftp
chmod 755 /data/sftp/mysftp

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

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

mkdir /data/sftp/mysftp/upload
chown mysftp:sftp /data/sftp/mysftp/upload
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搭建成功。


10、使用FileZilla FTP Client连接SFTP服务器

输入主机IP地址、用户名、密码、端口连接SFTP服务器,端口默认为22。



FileZilla FTP Client下载

http://download.csdn.net/detail/xinxin19881112/8887755


新新:http://blog.csdn.net/xinxin19881112/article/details/46831311

版权声明:本文为博主原创文章,未经博主允许不得转载。

sftp常用命令介绍

某linux系统中有test.txt文件, 现在我yao
  • stpeace
  • stpeace
  • 2014年09月19日 23:07
  • 133616

Sftp和ftp 区别、工作原理等(汇总ing)

Sftp和ftp over ssh2的区别最近使用SecureFx,涉及了两个不同的安全文件传输协议:-sftp-ftp over SSH2这两种协议是不同的。sftp是ssh内含的协议,只要sshd...
  • cuker919
  • cuker919
  • 2011年05月08日 19:12
  • 109383

FTP和SFTP的区别

文件传送协议FTP(File Transfer Protocol)是TCP/IP协议簇中的一个成员,也是现在因特网上最广泛的文件传送协议。FTP协议包括两个部分,一个是FTP客户端,另一个是FTP服务...
  • zhanghao143lina
  • zhanghao143lina
  • 2016年11月02日 09:14
  • 11644

FTP与SFTP的区别

FTP是文件传输协议。在网站上,如果你想把文件和人共享,最便捷的方式莫过于把文件上传到FTP服务器上,其他人通过FTP客户端程序来下载所需要的文件。 FTP进行文件传输需要通过端口进行。一般所需端口...
  • u013256622
  • u013256622
  • 2015年03月23日 13:17
  • 2084

FTP,SFTP,FTPS区别

一、FTP(文件传输协议)FTP全称是File Transfer Protocol。用于Internet上的控制文件的双向传输。同时,它也是一个应用程序(Application)。基于不同的操作系统有...
  • shmilychan
  • shmilychan
  • 2016年07月07日 10:02
  • 17301

SSH和SFTP简介

传统FTP在传输机制和实现原理上是没有考虑安全机制的,因为它们在网络上用明文传送数据、用户帐号和用户口令,别有用心的人非常容易地就可以截获这些数据、用户帐号和用户口令。而且,这些网络服务程序容易受到“...
  • zhangyuk
  • zhangyuk
  • 2005年04月07日 09:51
  • 29994

sftp与ftp用法

sftp与ftp用法
  • keda8997110
  • keda8997110
  • 2016年03月02日 15:24
  • 2281

Linux 配置SFTP,配置用户访问权限

本文最终的效果:在Linux下建立sftp-users用户组,在该组下建多个用户,禁止该组所有用户ssh远程登录服务器,但是允许该组所有用户登录sftp,并只能访问自己的目录及子目录中的文件。本文以a...
  • yanzhenjie1003
  • yanzhenjie1003
  • 2017年04月15日 14:06
  • 13204

传输工具sftp使用详解

1 sftp简介     SFTP是Secure File Transfer Protocol的缩写,安全文件传送协议,它是一个交互式文件传输程式。它类似于 ftp, 但它进行加密传输,比FTP有更高...
  • JesseYoung
  • JesseYoung
  • 2015年01月08日 13:48
  • 15640

sftp文件传输

1.      先到配置表mgw_communication 查看文件获取方式是Local、ftp、sftp的 2.      如果是SFTP的话用sftp NAME@URL,然后根据提示输入密码,进...
  • singit
  • singit
  • 2016年11月28日 19:59
  • 2014
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Linux Centos 6.6搭建SFTP服务器
举报原因:
原因补充:

(最多只允许输入30个字)