LINUX.ORG.RU
ФорумAdmin

FreeBSD 9.0 + rssh jail.

 , , , ,


0

1

Добрый день\вечер\ночь.

Дано:

Виртуальный сервер на Hetzner с FreeBSD 9.0. Его предназначение хостить некоторые свои сайтики + сайтики партнеров. Настроен nginx+php-fpm с chroot.(настраивал по примеру с napych.ru .Со строны php - пользователь заперт в клетке и тут все

хорошо.

Необходимо:

Организовать доступ по sftp, с условием что необходимо так же ограничить пользователя в четко отведенной ему песочнице.

Решение: На wdev.tk нашел рекомендацию использовать rssh. Много где чего гуглил, вроде бы уже скопировал все что мог для воссоздания необходимого для jail root кружения.В основном настраивал по этой - http://wiki.e-shell.org/ инструкции. Там создается root окружение в chroot папке, копируются бинарники с so-шниками и прочее.

Результат никакой, sftp конектится, проходит авторизацию, а потом подключение сбрасывается, без объяснения каких либо причин.

# sftp -v test.dev@xxx.yyy.zzz.aaa
OpenSSH_5.8p2_hpn13v11 FreeBSD-20110503, OpenSSL 0.9.8q 2 Dec 2010
debug1: Reading configuration data /etc/ssh/ssh_config
debug1: Connecting to xxx.yyy.zzz.aaa [xxx.yyy.zzz.aaa] port 22.
debug1: Connection established.
debug1: permanently_set_uid: 0/0
debug1: identity file /root/.ssh/id_rsa type -1
debug1: identity file /root/.ssh/id_rsa-cert type -1
debug1: identity file /root/.ssh/id_dsa type -1
debug1: identity file /root/.ssh/id_dsa-cert type -1
debug1: identity file /root/.ssh/id_ecdsa type -1
debug1: identity file /root/.ssh/id_ecdsa-cert type -1
debug1: Remote protocol version 2.0, remote software version OpenSSH_5.8p2_hpn13v11 FreeBSD-20110503
debug1: match: OpenSSH_5.8p2_hpn13v11 FreeBSD-20110503 pat OpenSSH*
debug1: Enabling compatibility mode for protocol 2.0
debug1: Local version string SSH-2.0-OpenSSH_5.8p2_hpn13v11 FreeBSD-20110503
debug1: SSH2_MSG_KEXINIT sent
debug1: SSH2_MSG_KEXINIT received
debug1: kex: server->client aes128-ctr hmac-md5 none
debug1: kex: client->server aes128-ctr hmac-md5 none
debug1: sending SSH2_MSG_KEX_ECDH_INIT
debug1: expecting SSH2_MSG_KEX_ECDH_REPLY
debug1: Server host key: ECDSA a2:5b:25:38:36:cc:38:04:e0:31:01:93:02:5b:23:92
debug1: Host 'xxx.yyy.zzz.aaa' is known and matches the ECDSA host key.
debug1: Found key in /root/.ssh/known_hosts:2
debug1: ssh_ecdsa_verify: signature correct
debug1: SSH2_MSG_NEWKEYS sent
debug1: expecting SSH2_MSG_NEWKEYS
debug1: SSH2_MSG_NEWKEYS received
debug1: Roaming not allowed by server
debug1: SSH2_MSG_SERVICE_REQUEST sent
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,keyboard-interactive
debug1: Next authentication method: publickey
debug1: Trying private key: /root/.ssh/id_rsa
debug1: Trying private key: /root/.ssh/id_dsa
debug1: Trying private key: /root/.ssh/id_ecdsa
debug1: Next authentication method: keyboard-interactive
Password:
debug1: Authentication succeeded (keyboard-interactive).
Authenticated to xxx.yyy.zzz.aaa ([xxx.yyy.zzz.aaa]:22).
debug1: Final hpn_buffer_size = 2097152
debug1: HPN Disabled: 0, HPN Buffer Size: 2097152
debug1: channel 0: new [client-session]
debug1: Enabled Dynamic Window Scaling

debug1: Requesting no-more-sessions@openssh.com
debug1: Entering interactive session.
debug1: Sending subsystem: sftp
debug1: client_input_channel_req: channel 0 rtype exit-status reply 0
debug1: client_input_channel_req: channel 0 rtype eow@openssh.com reply 0
debug1: channel 0: free: client-session, nchannels 1
debug1: fd 0 clearing O_NONBLOCK
Transferred: sent 1784, received 1552 bytes, in 0.1 seconds
Bytes per second: sent 13574.5, received 11809.2
debug1: Exit status 1
Connection closed

Может кто уже занимался подобным, есть ли какие либо иные пути создания «клетки», а кромя как копировать вручную бинарники,so-шники и прочие conf файлы.

Директорий внутри chroot создавались по образу и подобию реального root - /.

На офф сайте разработчик советует если ничего не помогает скопировать все /lib и /usr/lib , но это же порно)))) Заранее спасибо.

На офф сайте разработчик советует если ничего не помогает скопировать все /lib и /usr/lib

Вот и попробуй, чтобы узнать, в их ли недостатке проблема.

После того, как ты получишь результат, можно будет думать дальше, что делать.

zgen ★★★★★ ()

что-то ты сложное намутил.
Я просто самый обычный ssh chroot сделал, добавив в /etc/ssh/sshd_config примерно следующее:

Subsystem   sftp    internal-sftp
Match Group www
    ChrootDirectory /home/%u
    AllowTcpForwarding no
    X11Forwarding no
/home/%u - симлинки на директории с сайтиками. И всё.
Надо только создать ещё окружение для ssh в каждой директории, и залить в нужные директории.

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.