本文简要介绍 云服务器 ECS Linux Ubuntu 系统下,开启 sftp 功能的方法。
1. Ubuntu 由于没有安装这个 openssl 服务,需要手动根据以下命令来安装:
- sudo apt-get install openssh-server
2. 创建 SFTP 用户组组,方面进行管理测试,这个也可以不进行创建,直接使用 root 用户:
- sudo addgroup sftp-test
3. 创建 SFTP 用户,并配置相应权限:
- sudo adduser alice
- sudo usermod -G sftp-users -s /bin/false
4. 创建 SSH 用户组,并把管理员加入到该组(注意 usermod 中的 -a 参数的意思是不从其他用户组用移除)。
- sudo addgroup ssh-users
- sudo usermod -a -G ssh-users admin
5. 修改 SSH 配置文件。
- sudo nano /etc/ssh/sshd_config
- # 在 sshd_config 文件的最后,添加以下内容:
- AllowGroups ssh-users sftp-users
- Match Group sftp-users
- ChrootDirectory /home/sftp_root
- AllowTcpForwarding no
- X11Forwarding no
- ForceCommand internal-sftp
- #这些内容的意思是:
- # □ 只允许 ssh-uers 及 sftp-users 通过 SSH 访问系统;
- # □ 针对 sftp-users 用户,额外增加一些设置:
- # 将“/home/sftp_root”设置为该组用户的系统根目录(因此它们将不能访问该目录之外的其他系统文件);
- # 禁止TCP Forwarding和X11 Forwarding;
- # 强制该组用户仅仅使用SFTP。
6. 重启系统以便使新配置生效。注意:执行重启等风险操作前,需要保证业务的正常进行并做好数据备份。
如果问题还未能解决,您可以到阿里云社区进行
免费咨询,或联系
云市场商家寻求帮助。