У нас есть Intel NUC на языковом факультете моего университета, который вскоре разместит веб-приложение, используемое преподавателями и студентами на факультете. NUC работает под управлением Ubuntu (14.10).
Я чувствую себя комфортно с терминалом и SSH-подключением к серверу, однако я нахожу, что многие задачи, которые мне нужно выполнить, намного проще благодаря совместному использованию экрана (VNC).
Я предложил нашему новому техническому директору установить на этом сервере VNC, чтобы сделать мою жизнь намного проще (на самом деле на нем был установлен VNC до его приема на работу, а затем он удалил его). Однако он ответил следующим комментарием:
Я бы предпочел не запускать X или VNC на сервере, если нам это удастся. Это сервер в конце концов.
Я действительно не понимаю эту логику. Он не подключен к монитору; единственный доступ в него через SSH. Есть ли какой-то чудесный недостаток доступа VNC к серверу, о котором я не знаю?
Очевидно, вы открываете другой порт для атакующего; опровержение: мы находимся за двумя университетскими межсетевыми экранами (основной сетевой межсетевой экран университета, а также собственный специальный межсетевой экран нашей подсети). VNC сможет быть реализован только внутри нашей подсети, поэтому я не знаю, почему это может быть проблемой, отличной от «это другой пакет для обслуживания», и с apt
менеджером пакетов в Ubuntu, который становится не проблема.
Каковы недостатки установки VNC на сервере?
Изменить : это не просто веб-сервер. Здесь размещается ряд других приложений. Не уверен, что это имеет значение.
Ответы:
Есть много причин:
Поверхность атаки: больше программ, особенно сетевых, означает больше возможностей для кого-то найти ошибку и войти в нее.
Поверхность дефекта: как указано выше, но заменить «кто-то» на « Мерфи », а «войти» на «испортить свой день». На самом деле, «испортить свой день», вероятно, относится и к предыдущему пункту.
Эффективность системы: X11 и среды графического интерфейса, на которых люди обычно работают, потребляют приличное количество оперативной памяти, особенно в системе с ограниченными ресурсами, такой как NUC. Не запускать их означает больше ресурсов для выполнения полезной работы.
Эффективность оператора: графические интерфейсы не поддаются сценариям и другим формам автоматизации. Нажатие на вещи кажется продуктивным, но на самом деле это худший способ сделать что-то глубоко техническое. Вы также найдете, что ваши будущие возможности трудоустройства сильно ограничены, если вы не сможете писать сценарии и автоматизировать свою работу - индустрия уходит от инструментов администратора с графическим интерфейсом. Черт, даже сервер Windows может быть установлен без графического интерфейса в наши дни, и если это не заставит вас задуматься об относительных преимуществах только умения нажимать на вещи, я действительно не знаю, что вам сказать.
источник
Проблема не в VNC - не поймите меня неправильно, VNC - ужасный протокол, у которого много недостатков (самый большой из которых - отсутствие поддержки шифрования, поэтому все идет по сети в виде простого текста), но это не главное причина его использования не рекомендуется на серверах.
Вы собираетесь установить VNC для доступа к чему, черному экрану? Нет, вы хотели получить доступ ко всей среде рабочего стола, и это реальная проблема.
После установки всего этого программного обеспечения Gnome для настольных компьютеров (или аналогичного) вы уже можете считать, что ваш сервер скомпрометирован, поскольку в этой ужасной, огромной коллекции приложений остается так много ошибок (кроме того факта, что он не предназначен для повышения производительности). и использует кучу ресурсов). Одна из причин, по которым я не рекомендую это программное обеспечение и большинство настольных сред Linux, заключается в том, что они захватывают всю систему почти как руткит и внедряют свои собственные версии всего (аутентификация? Больше нет надежных пользователей и групп) давайте запустим эту ерунду Policykit от имени root, которая дает разрешения на основе нечитаемых, непонятных XML-файлов ... конфигурации? Кому нужны читаемые человеком файлы конфигурации? Давайте сохраним все в двоичных базах данных, которые вы можете '
Попытка установить рабочую среду Gnome на моем сервере Archlinux сообщает мне «Общий установленный размер: 1370,86 МиБ». Это огромно, представьте себе дополнительную поверхность атаки, которая будет у этого бывшего сервера после его установки. Другие окружения рабочего стола не намного лучше.
источник
Никогда не думайте, что поскольку ваша система находится за брандмауэром в частной сети, вам не нужно беспокоиться о безопасности. Многие, если не большинство, успешных вторжений выполняются инсайдерами (сотрудниками, студентами и т. Д.), Которые имеют доступ к указанным сетям.
источник
Попробуйте, чтобы технический директор был доволен:
Установите VNC и любой рабочий стол, который вам нравится
НЕ устанавливайте заставки любого типа. Зачем? У вас нет экрана, а рабочий стол просто не потребляет много ресурсов.
НЕ пересылайте порт VNC. Если вам нужно его использовать, проложите туннель к порту VNC (5900) через SSH (порт 22) и подключитесь к нему таким образом.
Этот процесс дает вам шифрование и всю безопасность SSH, которая уже открыта. Вы не добавляете никаких проблем безопасности, которых у вас ранее не было.
Я уже делаю это на своем собственном сервере, нет заметной дополнительной задержки в процессе VNC по сравнению с прямым соединением.
источник
ssh
это хорошая защита. Если модель угрозы представляет собой « повышение привилегий авторизованным локальным пользователем» , тоssh
защиты не существует, а установка тонны дополнительного кода на сервере значительно увеличивает поверхность атаки. Womble - это опытный системный администратор, у которого репутация на этом сайте в семьдесят тысяч раз выше, так что вы можете спокойно относиться к оскорблениям.