在过去的几天里,我一直试图在Ubuntu服务器上设置一个chroot,但是我遇到了一个问题。 我已经尝试了几种在Ubuntu上设置chroot的方法,包括自己手动设置文件夹权限,然后静态链接我想要允许的二进制文件的库,但目前我正在使用Jailkit来设置chroot环境,但是这两个设置我都有同样的问题,build立了chroot后,试图login到SSH我马上迎接强迫closuresterminal。 当我运行一个debuggingsshd时,我发现这是因为sshd由于某种原因找不到/ dev / pts,即使它在chroot环境中。 这里是我的设置,这是由Jailkit填充除了/ dev / pts使用挂载 sudo mount -o bind /dev/pts /data/jail/dev/pts /data/jail/home/user /data/jail/dev /data/jail/dev/pts /data/jail/dev/tty 这是sshddebugging的结果: debug3: safely_chroot: checking '/' debug3: safely_chroot: checking '/data/' debug3: safely_chroot: checking '/data/jail/' debug3: safely_chroot: checking '/data/jail/home/' debug3: safely_chroot: checking '/data/jail/home/user' Changed root directory to "/data/jail/home/user" debug1: permanently_set_uid: 1002/1003 debug2: set_newkeys: mode 0 debug2: set_newkeys: […]
我一直在试图configuration我的CentOS 6.5最小64位机器,以允许SFTP用户连接并被关进特定的文件夹。 我可以使用unix命令:“sftp user @ localhost”并在受限制的目录内移动,但是我不能使用LS或其他类似的命令。 但是,真正的问题是我无法使用FileZilla进行连接。 我只是得到这个错误: Status: Retrieving directory listing… Command: pwd Response: Current directory is: "/" Command: ls Status: Listing directory / Error: Unable to open .: permission denied Error: Connection timed out after 20 seconds of inactivity 我希望能够在Unix中使用SFTP命令时使用LS,但最重要的是我需要它与FileZilla一起工作。 以下是对当前设置的描述: 的/ etc / SSH / sshd_config中 Subsystem sftp internal-sftp Match Group sftp_users […]
我试图build立一个chroot监狱,然后我做了: which binary ldd /bin/binary 然后我做了: cp /lib64/{libs} $jail/lib64 cp /usr/lib64/{libs} $jail/usr/lib64 PS:在这个设置过程中,我发现/ lib64需要特殊的权限rx,只有r–不会工作(在chroot内部或外部)。 将二进制文件复制到$ jail,创build/ home / jailuser。 创buildproc,dev,sys并挂载它们。 为jailuser:用户finduid和gid 更改主目录的所有权: chown jailuser:users chmod 700 (for dirs) chmod 600 (for files) 将其他文件的所有权更改为root:root,权限请参阅前面的内容。 然后在根下进入监狱: export USER=jailuser (and I did the same with LOGNAME, HOME) cd $jail chroot –userspec=$uid:$gid $jail $jail/binary 它的工作,但: 在我的本地框中,只有005的非jailuser权限。 在一个KVM VPS中,尝试了相同的,但唯一的权限是050! 请,有人知道: […]
04并将sftp chroot设置为我们的2个开发人员的/ var / www。 我遵循网上提供的指南(参考了其他几个) http://www.krizna.com/ubuntu/setup-ftp-server-on-ubuntu-14-04-vsftpd/并设置vsftpd和设置sshconfigurationsshd_config文件。 我安装了root:755的/ var / wwwpath。 一切工作正常,直到我抽出一些时间,一旦我回来,没有一个开发人员能够login。 我检查了设置,SSHconfiguration,目录权限,但我无法弄清楚它是什么。 我有一个类似的Ubuntu 14.04机器,sftp工作正常。 我匹配的设置,没有任何区别。 我试图使用WinSCP,每次我尝试连接时,系统会提示input密码,然后闪烁并返回主WinSCP屏幕。 检查validation日志,并说“密码已被用户接受”。 没有错误或警告。 试过使用Cyberduck,它说服务器的未知指纹。 允许或拒绝。 我检查了ECDSA.pub文件的服务器的指纹,这是正确的。 一旦我允许并input密码,在读取数据包的同时就会收到EOF,互操作性失败。 请帮忙!! 在我意识到我需要做什么之后,这是新的日志。 SERVER LOG debug3: fd 5 is not O_NONBLOCK debug1: Server will not fork when running in debugging mode. debug3: send_rexec_state: entering fd = 8 config len 828 debug3: ssh_msg_send: type […]
所以我有一个chrootdir设置在sshd_config文件夹和用户myuser,它一直工作正常好几个月,然后今天我想改变myuser的密码,所以我做了这个passwd,然后重新启动/etc/init.d/ssh restart ,但现在当我尝试通过更新的密码sftplogin失败。 sshd_config设置: Subsystem sftp internal-sftp Match User myuser ChrootDirectory /chrootDIR ForceCommand internal-sftp AllowTcpForwarding no PermitTunnel no X11Forwarding no /var/log/auth.log中的日志是: sshd[13368]: pam_unix(sshd:auth): authentication failure; logname= uid=0 euid=0 tty=ssh ruser= rhost=[client ip is here] user=myuser sshd[13368]: Failed password for myuser from [client ip is here] port 39154 ssh2 sshd[13368]: Connection closed by [client ip is […]
我已经按照ArchWiki和GeekStuff上的这个说明设置了一个用户,他只能通过SFTP(SSH)访问服务器,但是在他家目录的chroot环境中没有Shell( /bin/false )。 没有什么更特别的,但它根本无法正常工作,当我尝试login时,我不断得到access denied消息。这是我迄今为止所尝试的: SFTP用户和组 用户(在这里: user )是组sftp成员。 主目录是/srv/sftp/user 。 Shell通过/bin/false被禁用 用户input: 0 ✓ root@host ~ $ grep -i user /etc/passwd user:x:1002:1000::/srv/sftp/user:/bin/false 小组条目: 0 ✓ root@host ~ $ grep -i sftp /etc/group sftp:x:1000:user 用户组: 0 ✓ root@host ~ $ groups user users sftp 主目录configuration 主目录和上面的所有目录都由root拥有: 0 ✓ root@host ~ $ ls -lsha /srv total […]
我有一个程序在schroot环境中运行。 我可以运行这样的没有错误: user@precise:~$ schroot -c trusty (trusty)user@precise:~$ myprogram.sh my.Rmd 但是,当我一次性调用脚本时,它会失败: schroot -c trusty — myprogram.sh my.Rmd 错误信息: Error in yaml::yaml.load(enc2utf8(string), …) : Scanner error: mapping values are not allowed in this context at line 2, column 7 Calls: render … yaml_load_utf8 -> mark_utf8 -> <Anonymous> -> .Call Execution halted 我想不知道为什么chroot的环境variables没有正确的提供给程序。 顺便说一下这个程序是: #!/bin/bash # myprogram.sh # […]
我有一个Web服务器主机(Linux上的Apache),它运行许多虚拟主机,它们使用“chroot”来提供CGI和FastCGI来彼此分离进程。 由于多种原因,我正在考虑用Linux容器来replace每个chroot环境。 令人惊讶的是,我几乎找不到这个想法! 我是唯一一个有这个想法的人吗? 这是一个坏主意吗? (用户可以从容器中逃脱吗?)有人有兴趣与我分享他的想法(或链接)吗? 不幸的是,容器只能用于CGI和FastCGI,因为一个进程/线程(在这个例子中是Apache)不能进入一个容器,而是工作并离开。 他必须在这个阶段退出,对吗? 还是有一个窍门?
我打算提供有限的ssh访问备份服务。 到目前为止,我想到的最好的解决scheme是使用chroot,只允许访问某些命令,例如:cd,mkdir,mv,rm,rsync,sftp等,并将主目录挂载为noexec。 我打算在一个centos 7系统上这样做。 有没有什么方法可以让恶意客户摆脱chroot系统侵入其他用户的数据或创build其他问题? 任何其他安全考虑?
我创build了一个Parallels plesk面板webspace并允许SSH访问: 在plesk转到webspace Websites&domains选项卡Web hosting访问在通过SSH访问服务器select / bin / sh我通过SSH连接,我意识到我可以到服务器的任何地方并创build文件。 我想限制SSH访问只是用户目录。 我读了chroot 。 你认为这是解决scheme吗? 有没有办法在Plesk中直接configuration?