我需要您帮助配置我在 Ubuntu 上的 SFTP 服务器。
我已经安装了 open ssh,并创建了密钥对。
我已经配置了 sshd_config,以仅允许证书认证,并且为每个用户创建了一个具有特定配置的匹配用户块:用户 sftp-service、使用 publikey、无 X11、无隧道等。
我已经创建了 mu 用户,没有登录选项,我根据权限创建了带有 authorized_keys 文件的 .ssh
Chown myuser:myuser /home/mysuser
Chmod 700 /home/myuser
Chmod 600 /home/myusers/.ssh/authorized_keys.
我还创建了一个 chroot 目录
/sftp/chroot/
其中包含所有用户的目录
/sftp/chroot/myuser1
/sftp/chroot/myuser2
/sftp/chroot/myuser3
...
sshd_config 已相应配置。
但是,现在我需要一个可以在所有 /sftp/chroot/ 用户目录中进行读写的 sftp_app 用户。
读取/写入文件并将文件移动到每个用户目录中的 DONE 文件夹中。
目前一切运行良好,但我不知道如何为 sftp_app 用户进行配置。
你可以帮帮我吗?
这是有关我的配置的更多信息:
- 所有用户都有自己的登录公钥
==> 用户目录中的密钥:.ssh/authorized_keys
- 所有用户都在自己的组中
report_user1:x:1001:1002:N/A,N/A,N/A,N/A,N/A:/home/report_user1:/usr/sbin/nologin
report_user2:x:1002:1003:N/A,N/A,N/A,N/A,N/A:/home/report_user2:/usr/sbin/nologin
report_user3:x:1003:1004:N/A,N/A,N/A,N/A,N/A:/home/report_user3:/usr/sbin/nologin
report_user4:x:1004:1005:N/A,N/A,N/A,N/A,N/A:/home/report_user4:/usr/sbin/nologin
report_user5:x:1005:1006:N/A,N/A,N/A,N/A,N/A:/home/report_user5:/usr/sbin/nologin
- 我的 sftp 文件夹配置如下:
drwxr-xr-x 3 root root 4,0K Sep 5 12:36 sftp
在 /sftp/
drwxr-xr-x 3 root root 4,0K Sep 5 12:36 MY_COMPANY
在/sftp/我的公司
drwxr-xr-x 3 root root 4,0K Sep 5 12:36 chroot
在 chroot 内部,所有用户都有以其用户名命名的自己的目录。
d-wx------ 2 report_user1 report_user1 4,0K Sep 8 09:24 report_user1
因此所有用户都可以访问自己的文件夹,但无法列出文件,而只能在自己的目录中写入文件。
- 我的 sshd_config 配置如下:
PermitRootLogin no
PubkeyAuthentication yes
PasswordAuthentication no
PermitEmptyPasswords no
Subsystem sftp internal-sftp
Match User report_user1,report_user2,report_user3,report_user4,report_user5
ForceCommand internal-sftp
PasswordAuthentication no
ChrootDirectory /sftp/MY_COMPANY/chroot/
PermitTunnel no
AllowAgentForwarding no
AllowTcpForwarding no
X11Forwarding no
PubkeyAuthentication yes
- 现在,我需要一个用户,应用程序将使用该用户读取所有文件并将数据注入数据库。这就是为什么用户应该以读取模式访问所有用户文件夹。但也应以写入模式访问,因为一旦注入数据库,文件必须重命名为 FILE_NAME.done
数据库不由我管理。应用程序将使用 SFTP 服务器并读取信息,然后将其注入数据库。开发人员将在其服务器上复制 SFTP 文件以注入数据库。在应用程序端成功复制后,他们将文件重命名为 .done,以表明该文件已处理。
SFTP 服务器将接收 .txt 或 .csv 文件。不过,我也想限制为仅此扩展名,但我不知道该怎么做...
问候。