linux 如何搭建sftp服务器

编程入门 行业动态 更新时间:2024-10-11 05:30:38

linux 如何搭建sftp<a href=https://www.elefans.com/category/jswz/34/1771423.html style=服务器"/>

linux 如何搭建sftp服务器

sftp采用的是ssh加密隧道,安装性方面较ftp强,而且依赖的是系统自带的ssh服务,不像ftp还需要额外的进行安装

文章目录

          • 一、服务器搭建分配
          • 二、sftp服务器搭建
            • 1. 创建sftp组
            • 2. 用户组
            • 3. 绑定用户组
            • 4. 配置
            • 5. 目录权限
            • 6. 用户、用户组、权限
            • 7. 关闭安全策略
            • 8. 测试验证

一、服务器搭建分配
ip作用
192.168.0.114sftp服务器
192.168.0.108测试应用服务器
二、sftp服务器搭建
1. 创建sftp组

创建完成之后使用cat /etc/group命令组的信息

[root@localhost ~]#  groupadd sftp
[root@localhost ~]# cat /etc/group

2. 用户组

创建一个sftp用户mysftp并加入到创建的sftp组中,同时修改mysftp用户的密码为123456

[root@localhost ~]# useradd -g sftp -s /bin/false mysftp
[root@localhost ~]# passwd mysftp

补充:useradd -g sftp -s /bin/false mysftp这条命令意思是:mysftp用户是不能使用bash的权限。如果让mysftp用户是能使用bash的权限权请执行下面这一行命令即可。

[root@localhost ~]# useradd -g sftp -s /bin/bash mysftp

3. 绑定用户组

新建/app/sftp/mysftp目录,并将它指定为mysftp组用户的home目录

[root@localhost ~]# mkdir -p /app/sftp/mysftp
[root@localhost ~]# usermod -d /app/sftp/mysftp mysftp

4. 配置

编辑配置文件/etc/ssh/sshd_config

vim /etc/ssh/sshd_config

将如下这行用#符号注释掉

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

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

Subsystem       sftp    internal-sftp    
Match Group sftp    
ChrootDirectory /app/sftp/%u    
ForceCommand    internal-sftp    
AllowTcpForwarding no    
X11Forwarding no

5. 目录权限

设置Chroot目录权限

[root@localhost ~]# chown root:sftp /app/sftp/mysftp 
[root@localhost ~]# chmod 755 /app/sftp/mysftp

6. 用户、用户组、权限

新建一个目录供sftp用户mysftp上传文件,这个目录所有者为mysftp所有组为sftp,所有者有写入权限所有组无写入权限

[root@localhost ~]# mkdir /app/sftp/mysftp/upload  
[root@localhost ~]# chown mysftp:sftp /app/sftp/mysftp/upload
[root@localhost ~]# chmod 755 /app/sftp/mysftp/upload

7. 关闭安全策略

关闭selinux并重启sshd服务,然后测试
1、临时关闭:输入命令setenforce 0,重启系统后还会开启。
2、永久关闭:输入命令vim /etc/selinux/config,将SELINUX=enforcing改为SELINUX=disabled,然后保存退出。

vim /etc/selinux/config
SELINUX=disabled
setenforce 0#重启sshd服务
systemctl restart sshd.service

8. 测试验证

在其他服务器上进行验证,sftp 用户名@ip地址

[root@localhost ~]# sftp mysftp@192.168.0.114
The authenticity of host '192.168.0.114 (192.168.0.114)' can't be established.
ECDSA key fingerprint is SHA256:Mxfzo4OtS1aI7Pil0wemA1YsT7a2Vvnutugi1WFjk3A.
ECDSA key fingerprint is MD5:f4:ba:b8:a1:de:3f:57:c5:c8:35:61:e3:34:3e:28:3b.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.0.114' (ECDSA) to the list of known hosts.
mysftp@192.168.0.114's password: 
Connected to 192.168.0.114.
sftp> ls
upload  
sftp> cd upload/
sftp> pwd
Remote working directory: /upload
sftp> exit
[root@localhost ~]#

操作记录:

[root@localhost ~]#  groupadd sftp
[root@localhost ~]# cat /etc/group
...
sftp:x:1000:
[root@localhost ~]# useradd -g sftp -s /bin/false mysftp
[root@localhost ~]# passwd mysftp
Changing password for user mysftp.
New password: 
BAD PASSWORD: The password fails the dictionary check - it is too simplistic/systematic
Retype new password: 
passwd: all authentication tokens updated successfully.
[root@localhost ~]# mkdir -p /app/sftp/mysftp
[root@localhost ~]# usermod -d /app/sftp/mysftp mysftp
[root@localhost ~]# vi /etc/ssh/sshd_config
[root@localhost ~]# vim /etc/ssh/sshd_config
[root@localhost ~]# chown root:sftp /app/sftp/mysftp 
[root@localhost ~]# chmod 755 /app/sftp/mysftp
[root@localhost ~]# mkdir /app/sftp/mysftp/upload  
[root@localhost ~]# chown mysftp:sftp /app/sftp/mysftp/upload
[root@localhost ~]# chmod 755 /app/sftp/mysftp/upload
[root@localhost ~]# vim /etc/selinux/config
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl restart sshd.service
[root@localhost ~]# 

如果遇到下面异常,请阅读我的下篇博客

[root@localhost home]# sftp sftpuser@localhost
Connecting to localhost...
sftpuser@localhost's password: 
Write failed: Broken pipe
Couldn't read packet: Connection reset by peer

友情链接;

更多推荐

linux 如何搭建sftp服务器

本文发布于:2024-02-06 13:30:20,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1749648.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:服务器   linux   sftp

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!