Безопаснее ли использовать chroot jails, jail shell или их комбинацию?

9

У моей подруги есть нетбук Acer на базе xandros, и она хотела получить от меня возможность удаленного администрирования и помощи, пока она путешествует по миру.
Я установил учетную запись на ее нетбуке для ssh и настроил скрипт для обратного ssh-tunnel от ее нетбука к моему серверу - это позволяет мне обойти проблемы с брандмауэрами и т. Д. В различных общежитиях и отелях. Как только она войдет в мой сервер, я смогу зайти в ее нетбук.

У меня есть bash-скрипт, который запускается как ее оболочка, когда она ssh'а на мой сервер, который просто дает ей вид «пожалуйста, подождите», и единственный вариант - выйти из сценария и, следовательно, получить загрузку с сервера.

Пользователь, которого я создал для нее на моем сервере, имеет низкие права, но обязательно должен быть какой-то эксплойт, который будет означать, что у нее будет ssh-доступ к моему серверу.

Я также подумываю использовать chroot-тюрьму, поэтому, если она сбежит, у нее будет доступ только к ее домашнему каталогу.
Это хорошая идея, и есть ли другие советы по безопасности, которые я, возможно, пропустил, чтобы сохранить безопасность своего сервера, но при этом разрешить удаленный доступ к ее нетбуку?

Чтобы уточнить, я не думаю, что она попытается сбежать из тюрьмы или тюрьмы, но я хотел бы знать, как я мог бы предотвратить это на всякий случай.

Обновление:
А есть ли у вас другие предложения о том, как я могу получить доступ к нетбуку или другим слоям, которые я мог бы поместить между пользователем и моим оборудованием?

Энди
источник

Ответы:

3

Рассматривали ли вы настройку VNC или другого приложения удаленного управления на порту, который обычно не фильтруется брандмауэром по правилам?

Пример конфигурации этого будет иметь VNC (или другое подобное приложение), загруженный на ноутбук. Затем запустите сценарий на стороне ноутбука, чтобы установить связь с сервером через определенный порт, который не будет фильтроваться брандмауэром для определения пути возврата к системе. 443, вероятно, является лучшим портом для использования, но другие также подходят. Затем из вашей системы вы просто подключаетесь к VNC либо напрямую, либо реплицируете порт на вашем сервере на другой номер порта и просто подключаетесь к интерфейсу на локальном порту, и перенаправление портов будет обрабатывать переход к другой системе на удаленном конце.

Надеюсь это поможет.

Axxmasterr
источник
Спасибо за предложение. Я бы не подумал об этом, потому что на самом деле я не видел много клиентов VNC в Linux, которые делают обратное соединение очевидным в Linux. Вы знаете что-нибудь?
Энди
Один из способов сделать это - использовать программу TCP / IP, способную установить порт одним способом. Автоматизация этого с использованием подключения через telnet из сценария оболочки будет хорошо работать. Большинство реализаций telnet позволяют вам указать порт, к которому вы пытаетесь подключиться.
Axxmasterr
2

Тюрьма chroot поможет, но с помощью эксплойта, который позволяет кому-то войти в оболочку, он все равно сможет видеть таблицу процессов и тому подобное, и запускать программы, возможно, в дальнейшем. Если вы действительно хотите быть агрессивными в отношении изоляции внешнего пользователя, это как бы использование гаубицы для муравья, но вы можете настроить виртуальный частный сервер для всего механизма туннеля ssh. Тогда худшее, что они могут сделать, это уничтожить VPS, исключая возможность вырваться из него, что является довольно высокой планкой.

хаос
источник
Мне нравится идея, но да, паровой ролик, чтобы расколоть грецкий орех :) Опять же, если я запусту что-нибудь действительно маленькое, например, только для терминала щенка-линукса, в качестве сервера, это будет не такой большой паровой ролик.
Энди
2

Я являюсь поклонником хорошей стратегии глубокой защиты , когда речь идет о защите компьютерной системы, поэтому я бы порекомендовал вам использовать учетную запись с низкими привилегиями в хроматированной файловой системе, и даже тогда это не является гарантией, просто посмотрите на iPhone, это делает обе эти вещи, и это все еще не помогает.

Брюс Маклеод
источник
2

Еще один способ избавиться от этого животного теперь, когда я думаю об этом, - это туннелировать трафик x сессий внутри туннеля SSH в качестве альтернативы использованию VNC. Вы уже на полпути с вашими текущими настройками.

Настройте возможность X на конкретном порту локально для этого компьютера, затем перенаправьте этот порт себе через туннель и затем скопируйте его на порт на своей стороне, чтобы вы могли подключиться к сеансу на локальном порту вашего сервера.

Еще одна вещь, которую я нашел, которая очень удобна для такого рода вещей, - это динамический DNS. Это позволит вам установить разрешаемое полное доменное имя, которое вы можете запрашивать при необходимости. DyDns работает как облегченная служба в системе, в которой он установлен, и обновляет запись каждый раз, когда изменяется информация об IP-адресе.

Axxmasterr
источник