Linux Centos 6.6搭建SFTP服务器

在Centos 6.6环境使用系统自带的internal-sftp搭建SFTP服务器。

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

0、查看openssh的版本

[plain] view plaincopy

  1. ssh -V

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

1、创建sftp组

[plain] view plaincopy

  1. groupadd sftp

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

[plain] view plaincopy

  1. useradd -g sftp -s /bin/false mysftp
  2. passwd mysftp

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

[plain] view plaincopy

  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

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

[plain] view plaincopy

  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目录权限

[plain] view plaincopy

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

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

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

[plain] view plaincopy

  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

[plain] view plaincopy

  1. vi /etc/selinux/config

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

在输入命令

[plain] view plaincopy

  1. setenforce 0

8、重启sshd服务

输入命令重启服务。

[plain] view plaincopy

  1. service sshd restart

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

[plain] view plaincopy

  1. sftp mysftp@127.0.0.1

显示 sftp> 则sftp搭建成功。

10、使用winscp

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

Linux Centos 6.6搭建SFTP服务器的更多相关文章

  1. 服务器linux centos 7.4 搭建ftp服务器

    此操作是在腾讯云服务器linux centos 7.4 完成搭建ftp服务器 vsftpd 的: 安装 vsftpd $ yum install vsftpd -y 启动 $ service vsft ...

  2. Linux(CentOS)系统下搭建svn服务器

    由于GitHub的私有项目需要收费,gitlab对服务器的要求必须是4GB内存以上.对于一些个人的小型项目,想要免费的版本控制工具来管理自己的代码,又不想代码公开,无疑SVN是比较好的选择.windo ...

  3. Linux centos 6.5 搭建 svn服务器

    实例:web1 1.安装subversion #yum install subversion #mkdir -p /oop/svn/ //创建svn目录 #chmod -R 777 /oop/svn ...

  4. Linux ---搭建SFTP服务器

    在Centos 6.6环境使用系统自带的internal-sftp搭建SFTP服务器. 打开命令终端窗口,按以下步骤操作. 0.查看openssh的版本 ssh -V 使用ssh -V 命令来查看op ...

  5. windows 上搭建 sftp 服务器 -freesshd全过程( 在linux上部署逐浪CMS的必读教程)

    文章标题: windows 上搭建 sftp 服务器 - freesshd全过程 关键字 : freesshd 文章分类: 教程 创建时间: 2020年3月23日 缘由 动手 第一步:添加用户 第二步 ...

  6. CentOS 6.4 搭建git 服务器

    CentOS 6.4 搭建git 服务器 (2013-11-22 19:04:09)转载▼ 标签: it 分类: Linux 此文件是依据markdown所编写,更好效果参见本人github的文档ht ...

  7. 在本机使用虚拟机安装一个linux系统,并搭建ftp服务器

    一.Linux基础使用:linux服务器环境搭建(FTP服务器), 在本机使用虚拟机安装一个linux系统,并搭建ftp服务器,要求能使用ftp服务将本机文件到保存linux虚拟机上 资料: VMwa ...

  8. 在Linux上用Apache搭建Git服务器

    在Linux上用Apache搭建Git服务器   最近在学Linux,终于在Linux上用Apache搭建起了Git服务器,在此记录一下. 服务器:阿里云服务器 Linux版本:CentOS 6.5 ...

  9. freeSSHD在windows环境下搭建SFTP服务器

    freeSSHD在windows环境下搭建SFTP服务器 0 建议现在windows环境下安装cygwin,否则在windows环境下cmd模式使用不了sftp去连接,可以利用win scp去测试连接 ...

随机推荐

  1. oracle:jdbcTest

    JDBC连接数据库 •创建一个以JDBC连接数据库的程序,包含7个步骤: 1.加载JDBC驱动程序: 在连接数据库之前,首先要加载想要连接的数据库的驱动到JVM(Java虚拟机), 这通过java.l ...

  2. 創建HTTP 服務器

    var http = require('http'); var fs = require('fs'); var server = http.createServer(function(req, res ...

  3. node.js 快速体验

    对于一个从事js的工作人员,怎么能不知道node.js呢! 一.安装node.js 在window上安装,http://nodejs.org上的windows installer 下载安装,在安装过程 ...

  4. ASP.NET Session丢失的情况

    正常操作情况下会有ASP.NET Session丢失的情况出现.因为程序是在不停的被操作,排除Session超时的可能.另外,Session超时时间被设定成60分钟,不会这么快就超时的. 现在我就把原 ...

  5. ado.net工厂模式DbProviderFactories

    DbProviderFactory f = DbProviderFactories.GetFactory(System.Configuration.ConfigurationManager.Conne ...

  6. 从手机获取图片让WebView支持本地上传图片

    一,从本地获取相册中的图片,并获取图片的URI 从本地选择图片上传到服务器时,首先要打开本地图片或文件管理器选择要上传的文件,代码如下 Intent intent =newIntent(Intent. ...

  7. Objective-C控制语句

    Objective-C控制语句有以下三类: 分支语句:if-else,switch 循环语句:while,do-while,for 与程序转移相关的跳转语句:break,continue,goto. ...

  8. 转载:T-SQL语句大全

    一.基础 1.创建数据库 CREATE DATABASE database-name 2.删除数据库 drop database dbname 3.备份数据库 --- 创建 备份数据的 device ...

  9. DataGridView控件中添加ComboBox下拉列表框的实现

    //ComboBox控件拖放到DataGridView控件的某个位置 //添加年龄下拉框 private void BindAge() { //我这里添加的是静态数据,一般都是从数据库读出来的,这里就 ...

  10. Zookeeper 脑裂

    转自 http://blog.csdn.net/u010185262/article/details/49910301 Zookeeper zookeeper是一个分布式应用程序的协调服务.它是一个为 ...