Articles of chroot

500 OOPS:vsftpd:拒绝用chroot()里的可写根目录运行在debian上login失败

我在debian 7.3上安装vsftpd来运行FTP服务器。 我检查vsftpd版本是2.3.5 ,我configuration它像这样: listen=YES local_enable=YES write_enable=YES chroot_local_user=YES pasv_min_port=15000 pasv_max_port=15200 allow_writeable_chroot=YES 我遵循这个文章来解决这个问题: http://blog.waja.info/2013/05/13/500-oops-vsftpd-refusing-to-run-with-writable-root-inside-chroot/ http://www.mikestechblog.com/joomla/operating-systems-section/operating-systems-ubuntu/155-500-oops-vsftpd-refusing-to-run-with-writable-root-inside-chroot.html 和谷歌和论坛上的其他许多人。 但是我的问题没有解决。 注意:我已经在Ubuntu 12.04上解决了这个问题,但是这个解决scheme在Debian 7.3上不起作用。 我真的搞混了吗?

VSFTPD – 更改用户主目录

我需要更新一个ftp用户的主目录。 我可以运行userdel命令,然后重新添加用户而不会丢失用户所连接的目录吗? 还是有另一种方式来更改用户的目录? 我没有使用chroot_list … 谢谢。

使用chroot进行公开的服务是否能提供真正的安全性?

我想要一个明确的答案,为什么这种做法应该与暴露于潜在的敌对networking(即互联网)的服务进行。 据我了解,有一种方法可以打开chroot监狱,所以如果这个安全措施没有真正的价值,那么为什么一些装置还在追求呢?

什么是在Unix上隔离FTP服务器用户的安全方式?

我已经阅读了各种ftp守护进程和各种长线程的文档,讲述了在给予用户写权限时使用ftp服务器的chroot环境的安全隐患。 如果你仔细阅读了vsftpd文档,特别是这意味着使用chroot_local_user是一个安全隐患,而不使用它不是。 似乎没有涉及允许用户访问整个文件系统(如他们的用户和组成员资格所允许的)的涵义,也没有涉及这可能造成的混淆。 所以,我想了解在实践中使用什么是正确的方法。 如果一个具有authentication的写入访问用户的ftp服务器提供非chroot环境,chroot环境或其他选项? 考虑到Windows ftp守护进程没有使用chroot的选项,否则他们需要实现隔离。 有没有任何Unix的FTP守护进程做类似的事情?

有什么chroot构build脚本?

我即将开发一个脚本来收集chroot-jail的信息。 在我的情况下,这看起来很乍看起来很简单:应用程序有一个干净的rpm安装,几乎所有的文件都安装到/ opt的子目录中。 我的想法是: find所有的二进制文件 检查他们的库依赖关系 将结果logging到列表中 在启动应用程序之前,将该列表的rsync同步到chroot-target-directory中 现在我想知道是否有任何脚本已经做了这样的工作(perl / bash / python)? 到目前为止,我发现只有单一应用程序的专门解决scheme(如sftp-chroot)。 (imho) – OS是CentOS 5 x86_64目前的小版本和补丁级别。 rpm -ql是恕我直言,不够通用,因为它只会覆盖基于rpm的发行版。 上面提到的“干净安装”只是提到软件的文件并不分布在整个文件系统中。 所以我的出发点是 – 目前 – find /opt/directory/ …几乎适用于任何系统(即使不是Linux)。

如何在“死”的chroot中卸载一个绑定/ proc?

我build立了一个debootstrap chroot并绑定了/ proc,例如sudo mount -o bind /proc <chroot>/proc 当我发现我不再需要它的时候,我非常愚蠢地rm -r <chroot> 'd it。 当然,rm拒绝删除/ proc。 现在卸载说/ proc正在使用中,无法卸载。 我现在如何卸载它? 谢谢。

SFTP:为chroot用户login到一个单独的文件

我想loggingSFTP命令到一个单独的文件,但它只适用于root但不适用于chroot用户: # cat /etc/ssh/sshd_config … Subsystem sftp internal-sftp -l INFO Match Group user1 ChrootDirectory /chroot ForceCommand internal-sftp -l INFO AllowTcpForwarding no X11Forwarding no – 默认设施根据手册页是AUTH # cat /etc/rsyslog.d/sshd.conf auth.* /var/log/sftp.log – tail -F /var/log/secure /var/log/sftp.log ==> /var/log/secure <== Dec 27 12:35:09 lab sshd[43014]: Accepted publickey for root from 192.168.1.100 port 44706 ssh2 Dec 27 12:35:09 […]

在不重新启动服务器的情况下卸载根文件系统

我有一台服务器,可以通过SSH访问。 没有KVM可用,整个服务器只有一个根分区。 我删除了一些我不该用的文件,并想用extundelete( http://extundelete.sourceforge.net/ )来恢复它们。 为此,我需要卸载目标文件系统。 有没有办法卸载根文件系统而无需重新启动? 也许通过做一些类似initrd在某些系统上挂载根文件系统之前启动系统的操作? 谢谢

如何禁止Docker守护进程将主机的根文件系统挂载到容器中

我有以下容器安装程序。 在裸机服务器上有两个Docker Daemon安装并运行。 主Docker Daemon运行我的应用程序容器,暴露80/443到外面的世界。 插件Docker Daemon运行客户提供的一些容器,通过80/443与我的应用程序进行通信。 我想让客户访问插件Docker守护程序的API(2376),以便客户可以部署/启动/停止自己的容器。 客户只能访问API,而不能访问主机(SSH)。 我目前面临的问题是,如果客户运行一个容器,如docker run -v /:/host/root ubuntu rm -rf /host/root ,那该怎么办? 我的问题是我能做些什么来防止插件Docker守护进程挂载root /或/home/user/之外的任何其他目录, 在/home/user/启动Docker Daemon是否是一个选项? 我可以使用一些LSM(Linux安全模块SELinux / Apparmor)魔术来防止docker守护进程挂载除home用户或var / docker / libs之外的部分或全部主机path吗? 可以–userns-remap帮助我实现我的目标吗? 除虚拟机之外,还有其他选项吗? 服务器完全属于单个客户。 所以安全或数据泄漏并不是我最关心的问题。 我真正想要阻止的是Plugin Daemon中的某个人正在做一些愚蠢的事情,这会影响在Docker Daemon中运行的容器。 我想保持精益,坚持docker工作的唯一工作stream程,不会为虚拟机创build设置额外的工作stream程。

试图只在一个用户的chroot jail中设置SFTP

希望你们能帮忙,看看我在这里做了些什么奇怪的事情,我试图用我设置的用户login,FileZilla显示了我: Command: open "///@///" Command: Pass: ******** Status: Connected to /// Error: Connection closed by server with exitcode 1 Error: Could not connect to server 所以,我进入了auth.log,我看到这个: Feb 12 11:08:49 sshd[12056]: Accepted password for /// from /// port /// ssh2 Feb 12 11:08:49 sshd[12056]: pam_unix(sshd:session): session opened for user /// by (uid=0) Feb 12 11:08:50 sshd[12164]: […]