我有多个目录分布在多个Ubuntu 10.04服务器的文件系统上。 要求是允许less数人通过ftp访问这些目录中的一部分。 例如joe需要将文件ftp到/ apps / app1。 爱丽丝需要ftp到/ apps / app2和/ mnt / apps / app4(nfs共享到另一台服务器) 我真的想保持vsftpd chroot,以便这些用户除了主目录之外什么也看不到。 所有这些用户都是ldap用户。 他们的主目录从中央服务器自动安装。 所以,理想情况下,当joe ftp进入时,他应该看到一个名为“app1”的目录。 当爱丽丝ftps中,她应该看到名为“app2”和“app4”的目录。 最后,我需要添加更多的“虚拟”dirs。 例如,爱丽斯可能需要在几周内访问/ apps / app5。 我希望能够添加它,以便当她ftp的时候,她看到“app2”,“app4”和“app5”。 这似乎应该很容易,但我一直在围绕如何让这个工作。 选项1 我已经尝试使用fstab和/或autofs挂载用户主目录下的–bind。 这种有用的。 很烦人的是,当你使用autofs的时候,除非有人最近访问过这些目录,否则这些目录是不可见的。 为什么选项1失败: 与scheme3相同的原因 scheme2 我试过使用软链接,但是,这似乎并没有工作。 我在/ mnt / apps / app1上创build了一个nfs挂载驱动器(使用autofs)。 然后我创build一个像这样ln -s / mnt / apps / app1 / home / […]
我想为Debian服务器上的less量不受信任的PHP网站设置安全的环境。 现在所有的东西都运行在同一个Apache2上,mod_php5和vsftpd用于pipe理文件访问,所以还有改进的空间。 这个想法是使用nginx而不是apache,SFTP通过OpenSSH而不是vsftpd和chroot(在sshd_config中),每个网站的个人用户拥有自己的PHP进程池。 所有这些用户和nginx都是同一个组的一部分。 现在理论上我可以在所有PHP脚本上设置700个权限,而在Nginx必须提供的静态文件上设置750个权限。 从理论上讲,如果一个网站遭到破坏,所有其他用户的数据都是安全的,对吗? 是否有更好的解决scheme,每个网站需要更less的设置时间和内存? 干杯
可能重复: 用OpenSSHbuild立一个chroot的SFTPlogin 我不熟悉chroot监狱,所以请原谅我的无知。 从我的理解你通常会chroot用户到他们的主目录 – 例如:/ home / username。 我想chroot所有(或理想的特定用户组)到一个特定的目录。 例如,用户应该能够到达/ web / ItsUserDir和/ web / GroupDirThatAreIn – 基本上我想这样做,使组“webusers”不能去/networking。 提前感谢您的想法,想法和答案。
我需要unit testing一些bash脚本,我已经在chroot中设置了一个debian挤压。 从命令行我可以使用chroot /目录my-command,或者schroot -d / -u root my-command,但是我需要从由Apache(用户www-data)运行的PHPUnittesting运行这些命令。 随着schroot我有这个错误 E:没有控制terminalE:authentication失败:authentication失败 与sudo chroot我有 sudo:没有tty present,也没有askpass程序 比我更好的主意?
什么 mount -t proc none / proc 在chrooted环境里面做? 这样做之后,当我在chroot环境中运行htop或ps aux时,我可以看到实际的根进程。 这是否意味着mount -t proc none / proc使chroot更加不安全? 谢谢!
我有一个要求,要求在DMZ的服务器上运行的所有应用程序被chroot。 如何使用Ubuntu chroot应用程序? 有没有好的在线指南?
在Mac OSX的chroot化PHP环境下运行时,如何findCurl需要哪些文件或套接字? 我最近通过chrooting PHP保护了我的网站,但是现在通过它的API每次调用Amazon S3都失败了,错误消息是: Resource id #43; cURL error: Couldn't resolve host 's3.amazonaws.com' 从非chroot命令行调用时,相同的代码工作正常,所以大概是一些需要由CURL打开的文件,无法打开。 如何确定哪些文件试图打开,以便将它们映射到chrooted的directoy中? 有了Andrei的build议,我使用strace(或者相当于mac的mac地址)来获得一些debugging输出。 这是一个chroot的请求,不起作用。 lstat64("/lib/amazonWS/lib\0", 0x7FFF5FBF97D0, 0x26) = 0 0 lstat64("/lib/amazonWS\0", 0x7FFF5FBF9630, 0x182) = 0 0 open("/lib/amazonWS/lib/requestcore/requestcore.class.php\0", 0x0, 0x1B6) = 5 0 fstat64(0x5, 0x100A9F448, 0x8) = 0 0 fstat64(0x5, 0x100A9F448, 0x90) = 0 0 fstat64(0x5, 0x100A9F448, 0x1001B1FE4) = 0 0 mmap(0x0, […]
在Debian Wheezy 64bit上,我为一个客户创build一个新用户,将文件放入一个目录中。 在创build用户之后,我通过在/etc/passwd中用/bin/falsereplace/bin/bash来取消他的交互式login。 然后我把他添加到/etc/ftpchroot ,这样他的会话将被/etc/ftpchroot到他的主目录。 但是,只要将用户添加到/etc/ftpchroot ,用户login时就看不到任何文件。 用户被chrooted,他不能往上走。 他可以上传文件,这些文件存储在正确的目录中,并具有640个权限,该用户:thatusersgroup所有权。 我的想法到目前为止: /etc/ftpchroot显然是在做一些事情,在做什么,它应该做什么。 在该机器上创build的任何用户都有这个问题(与其他新用户一起尝试两次) 这不是目录依赖。 改变他的主目录和chroot到那里显示同样的问题。 对我来说这很奇怪,因为我曾经这样做过很多次,而且我从来没有遇到过这个。 可悲的是,search答案是困难的问题描述。 编辑1:我现在看到的东西。 在ftpchroot下login时,login成功完成时不显示任何消息。 但是,完成身份validation后,将显示没有ftpchroot, /etc/motd的login。 编辑2:我有点解决了这个问题,安装inetutils-ftpd 。 它带来了PAMauthentication,configuration完成后,它login到同一个用户没有提到的问题,他可以上传和看到他的文件没有问题。
对于一个用户组,我想: 限制对指定目录的SFTP访问 使用TTY的自定义shell,该shell只处理需要从系统公开的内容,但仍然需要访问整个根文件系统 所以最终我只想为来自某个组的用户执行ChrootDirectory,但是也通过sftp会话进行连接,并避免为通过TTY会话连接的用户执行ChrootDirectory。 可以通过sshd_config完成吗? 谢谢
我想给SFTP只能访问他的主目录给用户。 这是用户的/ etc / passwd行: bob:x:1003:1003::/home/bob:/bin/false 我编辑了/ etc / ssh / sshd_config文件: #Subsystem sftp /usr/lib/openssh/sftp-server Subsystem sftp internal-sftp # Set this to 'yes' to enable PAM authentication, account processing, # and session processing. If this is enabled, PAM authentication will # be allowed through the ChallengeResponseAuthentication and # PasswordAuthentication. Depending on your PAM configuration, # […]