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

1786
Andy

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

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

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

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

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

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

8

4 ответа на вопрос

3
Axxmasterr

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

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

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

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

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

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

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

2
Axxmasterr

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

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

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

Похожие вопросы