限制sftp用户(必须是操作系统用户)的访问权限
不设置ChrootDirectory,通过设置文件、文件夹的权限来限制户sftp用户、用户组:
Setting up a user with restricted SFTP access
1,查看当前ssh版本,如果版本过低,使用yum install openssh来重新安装或者yum update openssh来更新到最新的ssh版本
ssh -V
OpenSSH_5.3p1,OpenSSL 1.0.0-fips 29 Mars 2010
2,备份配置文件:/etc/ssh/sshd_config
cp sshd_config sshd_config.bak
3,添加sftp用户、组、用户主目录
mkdir /sftp #sftp 用户home主目录的根地址(属主和属组都是root,权限775)
groupadd sftpgroup1
useradd -g sftpgroup1 -d /sftp/dir1 -s
/lib/xx/sftp-server sftpuser1 #sftp用户(每个sftp用户有自己特定的组,特定的home目录,并且shell指定到sftp-server)
passwd sftpuser1
#在相应的用户home目录/sftp/dir1下增加子目录upload(读写、上传用)和public(只读、下载用):
cd /sftp/dir1
mkdir /sftp/dir1/upload
mkdir /sftp/dir1/public
chmod 770 /sftp/dir1/upload
chmod 750 /sftp/dir1/public
rmdir xxx #删除目录
chmod 750 /sftp/dir1
chown –R root:sftpgroup1 /sftp/dir1
4,修改配置文件:/etc/ssh/sshd_config (
关键字大小写不敏感,值大小写敏感)
Match group sftpgroup1 #定义属于这个组的用户才能登录,多个组之间用逗号分隔
ChrootDirectory /sftp #该目录必须有XX5权限,且属主为root
X11Forwarding no
AllowTcpForwarding no
ForceCommand /lib/xx/sftp-server #保存退出
5,重启sshd守护进程
service sshd restart
sftp work@ip
chroot后,如果用putty登录的话,会提示错误:Could not chdir to home directory /sftp/dir1: Permission denied
chroot(Change Root):就是改变程式执行时所参考的根目录位置。
参考:
Chrooted SSH/SFTP Tutorial (Debian Lenny)
问题1: ssh任何用户都可以登录,而
sftp只能用root登录。winscp提示错误:Connection has been unexpectedly closed. Server sent command exit status 1. Cannot initialize SFTP protocol. Is the host running a SFTP server?
解决: sftp的用户必须是操作系统用户,在CentOS中需要将用户的shell指向sftp-server后,才能使用该用户登录sftp服务器。
find / -name *sftp*
usermod -s /lib/xx/sftp-server sftpuser1
或者手动修改配置文件 vim /etc/passwd 中sftp用户的shell
分享到:
相关推荐
**Linux下sftp配置之密钥方式登录详解** 在Linux环境中,为了提高文件传输的安全性,通常会使用sftp(Secure File Transfer Protocol)代替传统的FTP或vsftp,因为sftp基于SSH(Secure Shell)协议,可以提供加密的...
NetOps-Python实现网络设备SFTP配置
### Nginx 转发 SFTP 和 FTP 的配置详解 #### 一、引言 在互联网技术领域中,Nginx(发音为 “engine X”)是一款高性能的HTTP和反向代理服务器,同时它也支持邮件代理服务。随着版本的不断更新与优化,Nginx 在...
Linux系统配置SFTP服务器详解 Linux系统配置SFTP服务器是当前网络应用中的一种常见需求,SFTP(Secure File Transfer Protocol)是一种安全的文件传输协议。下面我们将详细介绍如何在Linux系统配置SFTP服务器的...
1. **映射配置**:回到“Tools” -> “Deployment” -> “Configuration”页面,找到之前创建的SFTP配置项,点击“Mappings”标签页。 2. **添加映射**:点击右下角的“+”图标,逐一添加本地文件夹与远程服务器...
默认配置文件路径为`/etc/vsftpd/vsftpd.conf`,这与许多其他服务类似,如sendmail、httpd和ssh,它们都有各自独立的配置目录,以提高管理和安全性。 **FTP工作模式** FTP有两种工作模式:PORT FTP和PASV FTP。 1. ...
以下是如何在CentOS 7.x上部署SFTP服务并配置SSH在不同端口访问的详细步骤。 1. **安装OpenSSH服务器** 首先,确保你的系统已经安装了OpenSSH服务器,它是提供SFTP服务的基础。通过运行以下命令来安装: ``` ...
### CentOS 下 SSH 及 SFTP 的配置与权限设置详解 #### 一、引言 SSH (Secure Shell) 是一种网络协议,用于计算机之间的加密登录。SFTP (SSH File Transfer Protocol) 则是一种基于 SSH 协议的安全文件传输协议。...
【免费SSHd配置SFTP服务器】 在IT领域,文件的安全传输是至关重要的,尤其是在企业环境中。免费SSHd(FreeSSHD)是一款适用于Windows系统的SFTP服务器软件,它提供了安全的文件传输服务,支持通过SSH(Secure Shell...
设置文件夹的所有权后,我们需要修改Linux服务器的SFTP配置。使用vim命令可以编辑配置文件。例如: ``` vim /etc/ssh/sshd_config ``` 在配置文件中,我们需要注释掉原有的Subsystem配置,并添加新的Subsystem配置。...
4. **SFTP配置从数据库中下载**: 这意味着项目的配置信息,如服务器凭据和连接细节,可能存储在一个数据库中。在运行时,程序会查询数据库以获取这些信息,提高了灵活性和安全性,因为敏感信息不直接硬编码在代码...
2. **SFTP设置文件**:安装完成后,创建或编辑`.sublime-project`文件,此文件用于存储项目特定的设置,包括SFTP配置。在项目目录下,右键选择"New File",命名为`.sublime-project`,然后添加SFTP配置信息,如...
【SFTP配置与数据处理】 在信息技术领域,SFTP(Secure File Transfer Protocol)是一种通过SSH(Secure Shell)协议实现安全文件传输的协议。在STARS21 EIS Team的知识分享会议中,黄志强详细讲解了SFTP配置、数据...
**2.4 配置目标服务器公钥串** 1. **创建目标服务器的`.ssh`目录** - 使用`hxdb`用户登录目标服务器,确认当前用户家目录为`/home/hxdb`。 - 在家目录下创建`.ssh`目录,并授予该目录`755`权限(如果已经存在,则...
在Sublime Text中,按下`Ctrl+Shift+P`,输入"SFTP Settings - User",打开SFTP配置文件`sftp-config.json`。这是一个JSON格式的配置文件,其中包含了连接到远程服务器的所有必要信息。以下是一个基本的配置示例: ...
3. `sftp-config.json`: 这是SFTP配置文件,很可能包含了与SFTP服务器连接相关的参数,如主机名、端口、用户名、密码等,以支持安全的文件传输。 4. `project1.txt`: 这可能是项目说明或需求文档,详细描述了C语言...
4. **项目配置**:用户可以为不同的项目设置多个SFTP配置,每个配置包括服务器地址、用户名、密码或密钥等信息,方便在多个服务器间切换。 5. **智能补全**:支持路径自动补全,帮助用户快速定位远程文件,提高工作...
为了节省 修改后上传到服务器找文件 而写的一个myFTP工具 (能根据 选择的文件夹搜索 当前文件夹及子文件夹 的文件的文件 根据修改时间 然后可以选择备份或是上传) 支持 ftp,sftp 配置文件在MyFTPConfig.XML 中 ...
FREESSHD配置SFTP服务器 FREESSHD是一款功能强大且免费的SSH服务器软件,支持SFTP、Telnet和 Tunneling协议。下面是FREESSHD配置SFTP服务器的详细知识点: 1. 安装FREESSHD:首先,需要下载FREESSHD.exe,安装过程...
2. 在项目设置中添加SFTP配置信息: ```json "sftp": [ { "type": "sftp", "host": "xxx.com", "user": "xxx", "password": "xxx", "port": "22", "remote_path": "/xxx/xxx", "upload_on_save": true, ...