Как подключиться удаленно к centos с windows

Как удаленно подключиться к Centos из Windows

Видеозаписи отдельных лекций с InstallFest этого года были обработаны и опубликованы на YouTube.

Выпущена версия 9.3 операционной системы Unix с открытым исходным кодом NetBSD (Википедия). Обзор новых возможностей в примечаниях к выпуску.

Спустя 9 месяцев после выпуска версии 3.4 была выпущена новая версия 3.5 кроссплатформенного игрового движка с открытым исходным кодом Godot (Wikipedia, GitHub). Обзор новостей с превью и видео в блоге и на YouTube. Основная версия 4.0 приближается к своей первой бета-версии.

Александр Прокудин опубликовал статью об аудиоредакторах 8+1 на сервере Libre Arts для Linux, которые не являются Audacity. Предназначен для редакторов: Sweep, mhWaveEdit / gWaveEdit, KWave, ReZound, EKO, Snd, Gtk Wave Cleaner, WaveSurfer и SoX.

Выпущена версия 8.0.0 языка визуального программирования Snap! (Википедия), вдохновленный языком Scratch (Википедия). Обзор новых возможностей GitHub.

Выпущена новая версия 1.70 редактора исходного кода Visual Studio Code (Википедия). Обзор новостей с превью и анимированными гифками в примечаниях к выпуску. Версия 1.70 также включает VSCodium, то есть сборку Visual Studio Code для сообщества без телеметрии и условий лицензии Microsoft.

Докузавр был выпущен в версии 2.0. Это генератор статических веб-страниц, в основном страниц документации. За разработкой стоит компания Meta (Facebook).

Якобы в качестве эксперимента итальянский школьник загрузил в репозиторий PyPI пакеты с наиболее распространенными орфографическими ошибками. В качестве своей цели он выбрал пакет «requests». Поэтому он загрузил пакеты с именами requesys, requesrs, requesr в репозиторий. Он поместил программы-вымогатели в эти пакеты. Например. пакет requesys был загружен 258 раз. PyPI — не единственная цель подобных усилий, но нередко и репозиторий npm. Полный подсчет программ-вымогателей, загружаемых школьникомСкрипты в репозиторий PyPI как «забавный» проект.

В июне компания Google в сотрудничестве со Skywater Technologies и Efabless представила инициативу Open Source Silicon, позволяющую любому желающему разрабатывать интегральные схемы с открытым исходным кодом и производить их бесплатно. На момент внедрения была доступна только технология производства 130 нм. Неделю назад было объявлено, что Skywater Technologies уже предлагает технологию производства 90 нм. Вчера компания GlobalFoundries присоединилась к инициативе Open Source Silicon и предложила 180-нанометровую технологию производства.

Томаш Матеичек выпустил рабочий дистрибутив Slax в версиях 11.4, основанных на Debian «Bullseye», и 15.0, снова основанных на Slackware спустя 9 лет.

Удаленный доступ

Протокол X11 предназначен для использования не только тогда, когда X-сервер и клиентское приложение работают на одном компьютере, но и когда они работают на разных компьютерах, подключенных к сети. В этом случае для связи используется TCP-соединение. Чтобы приложение могло взаимодействовать с X-сервером, ему нужно указать, на каком X-сервере (и, возможно, на каком экране) оно должно отображаться. Эта информация обычно передается через переменную окружения DISPLAY, классические графические программы также поддерживают параметр командной строки -display (или -disp для краткости).

Значение переменной (или аргумента) обычно имеет вид ‘ host : display . экран ». Необязательный параметр host определяет компьютер, на котором расположен X-сервер. Обычно он содержит имя компьютера или IP-адрес (IPv4 или IPv6). Если не указано, осуществляется связь с X-сервером на том же компьютере, но обычно не с использованием TCP-соединения через локальный цикл, а через локальный (домен unix) сокет.

Параметр display указывает номер конкретного X-сервера на выбранном компьютере. На одном компьютере X можетнесколько серверов для запуска, например, когда одновременно открыто несколько графических консолей. Другим примером является запуск Xnest, который реализует X-сервер, использующий в качестве виртуального экрана окно, отображаемое на другом X-сервере. Обычная нумерация серверов X идет от нуля, поэтому здесь чаще всего встречается значение 0. Этот параметр также (включая двоеточие) является единственным обязательным, поэтому минимальная (а также наиболее распространенная) спецификация экрана — ‘ :0 ‘. С практической точки зрения параметр display в TCP-соединении определяет порт, к которому устанавливается соединение; это порт 6000+ дисплей .

Последний (опять же необязательный) параметр screen определяет экран, на котором должно отображаться приложение. Экраны (если их больше на X-сервере) снова нумеруются, начиная с нуля (ноль также является значением по умолчанию). В отличие от предыдущих параметров, номер экрана не влияет на установленное соединение, информация используется внутри при обмене данными по протоколу X11. Экраны в этом смысле не имеют ничего общего с виртуальными рабочими столами, предлагаемыми большинством оконных менеджеров. Несколько экранов чаще всего встречаются на компьютерах с несколькими мониторами, где номер экрана определяет (физический) монитор, на котором будет отображаться приложение.

Читайте также:  Как убрать подавление голоса на windows 7

Практическое удобство использования приложения, работающего на удаленном компьютере и отображаемого на локальном X-сервере, зависит от параметров сетевого подключения. Если подключение осуществляется по локальной сети, это не проблема; при скорости Ethernet 100 Мбит/с удаленная связь не очень заметна в поведении большинства приложений. При более медленных соединениях (помимо скорости передачи здесь играет роль и задержка пакетов) ответы, естественно, длиннее. Многое также зависит от того, что отображает приложение. Рендеринг простых объектов или написание текстов не очень требовательны, но, например, при просмотре фотографий необходимо передавать целые растровые изображения,что может быть довольно сложным. Немалым преимуществом является тот факт, что таким образом мы можем использовать графические приложения даже на компьютере, где X-сервер вообще не установлен, например, на мощном сервере приложений, к которому пользователи обращаются со своих рабочих станций. Также не следует забывать, что протокол является универсальным: поэтому он не ограничивается средой Linux, но также может использоваться между разными платформами.

Возможность отображения на X через сети TCP/IP (и, следовательно, также через Интернет) — очень полезный инструмент, но это палка о двух концах. Если бы мы не реализовали механизм ограничения потенциальных клиентов, любой мог бы использовать наш X-сервер не только для отображения, но и для получения событий от устройств ввода; чтобы он мог, среди прочего, например, следить за тем, что мы печатаем на клавиатуре. Если нам вообще не нужен удаленный доступ к X-серверу, может быть более подходящим использовать параметр ‘-nolisten tcp’ при его запуске, который заставляет X-сервер вообще не прослушивать TCP-порт 6000+ . display и разрешает связь только с локальными клиентами через локальный сокет. С другой стороны, некоторые более новые дистрибутивы запускают X-сервер с этим параметром по умолчанию, поэтому, с другой стороны, если мы хотим общаться удаленно, нам нужно явно включить его. Однако в следующих разделах мы сосредоточимся на ситуации, когда мы хотим общаться удаленно, но нам нужно авторизовать клиентов.

Список разрешенных адресов

Простейшей формой авторизации является различение клиентов по IP-адресу. Диспетчер отображения поддерживает список адресов (пустой по умолчанию), с которых разрешен доступ всем клиентам без дополнительных ограничений. Команду xhost можно использовать для управления этим списком, без параметров она будет отображать список разрешенных адресов (по умолчанию переведенных в DNS-имена). Добавить элемент в список можно с помощью команды ‘xhost+ host ‘ (символ + можно опустить), удаляемый командой ‘ xhost — host ‘.

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

При запуске сеанса диспетчер отображения генерирует случайный ключ (файл cookie), связанный с этим сеансом. Клиенту, который знает об этом файле cookie, разрешается доступ к X-серверу без указания его IP-адреса в списке из предыдущего раздела. Файл cookie хранится вместе с информацией о сервере (записанной в том же формате, что и значение переменной DISPLAY, без номера экрана) в базе данных аутентификации, которая по умолчанию находится в файле .Xauthority в домашнем каталоге зарегистрированного пользователя. в пользователе. Отдельные графические приложения берут файлы cookie из этого файла и используют их для аутентификации на сервере.

С содержимым базы данных аутентификации можно работать с помощью команды xauth либо в интерактивном режиме (если мы запускаем ее без параметров), либо в неинтерактивном режиме (если мы передаем команду непосредственно ей в качестве аргумента). Основные команды:

  • список… отображение файлов cookie из базы данных
  • извлечь файл сервер … копирование cookie для сервера сервер в файл файл
  • объединить файл … добавление куки из файла в базу данных
Читайте также:  Как убрать окно входа windows xp

Символ ‘-‘ также можно указать в качестве имени файла, после чего файл cookie извлекается в стандартный вывод и загружается из стандартного ввода. В том случае, если мы не перенаправляем вывод или не используем канал, целесообразнее использоватькоманды nexttract и nmerge, использующие только числовой формат, который можно отобразить на терминале и скопировать с помощью выделения или копирования и вставки.

Поэтому, если мы заходим на удаленный компьютер, например, используя SSH, и если мы хотим запускать на нем графические приложения, чтобы отображение происходило на нашем локальном X-сервере, нам нужно установить переменную DISPLAY локальной оболочки соответственно (но нельзя забывать, что оболочка и тогда графическое приложение будет запускаться на удаленном компьютере, поэтому нельзя писать localhost или опускать имя компьютера). Но нам также нужно скопировать файл cookie аутентификации из локальной базы данных в удаленную. Это можно сделать либо извлекая его в файл, копируя и импортируя файл cookie в базу данных, либо извлекая его в терминал и копируя в другое окно, где мы вошли в систему на удаленной машине и ранее использовали ‘ xauth нмерж — ‘.

Прозрачное туннелирование с использованием SSH

Принципиальным недостатком предыдущих процедур является то, что они решают только вопрос аутентификации и авторизации (да и то не совсем надежно), но никак не защищают данные, которыми обмениваются X-сервер и клиент. приложение, ни против подслушивания, ни против спуфинга. Поэтому, если связь между двумя компьютерами не защищена, например, с использованием IPsec, такое решение не очень подходит, особенно если они общаются друг с другом через Интернет. Поскольку связь X11 использует одно TCP-соединение, она является идеальным кандидатом для обеспечения безопасности SSL (например, stunnel). Однако, поскольку в настоящее время мы в основном подключаемся к удаленному компьютеру, на котором мы запускаем приложение, используя SSH, проще использовать опцию прозрачного туннелирования X11 через его безопасный канал передачи.

Чтобы понять, как работает туннель, помните, что X-сервер находится на стороне клиента SSH, и наоборот.Туннелирование не нужно настраивать каким-либо сложным образом, необходимо только, чтобы эта функция была включена в конфигурации как клиента (ssh), так и сервера (sshd) и чтобы клиент запускался с параметром -X и имеет переменную DISPLAY, установленную на локальный X-сервер. Если это так, демон SSH создаст виртуальный X-сервер (по умолчанию с номером от 10 и выше, чтобы не было конфликтов с возможными локальными X-серверами на его стороне. На этом X-сервере (т.е. обычно на value ‘ :10 ‘), затем также устанавливает переменную DISPLAY .

в оболочку (или другую исполняемую программу).

Поэтому запущенное графическое приложение отправляет все запросы на виртуальный X-сервер, но только перенаправляет их (через безопасное соединение) клиенту SSH, который затем перенаправляет их на локальный X-сервер на стороне пользователя. Аналогично, только в обратном направлении, на сервер приложений отправляются ответы X. Конечно, приложение не обязательно должно работать на той же машине, что и демон SSH, точно так же клиент SSH не должен работать на той же машине, что и X-сервер. Тогда защищен только участок между демоном SSH и клиентом SSH, но этого может быть достаточно, например, если конечные разделы реализуются относительно безопасной локальной сетью, а туннелируемый участок проходит через Интернет.

Помимо обычных мер безопасности при использовании SSH (особенно проверка подлинности открытого ключа сервера при первом входе в систему), нельзя забывать, что туннель защищает от атак только «по пути». Следовательно, это не защита от локальной атаки на конечные компьютеры. В частности, если мы не можем доверять пользователю root на удаленном компьютере, мы делаем наш локальный X-сервер доступным для него через открытый туннель (до тех пор, пока туннель установлен). Мы также не должны забывать, что при больших потоках данных шифрование данных и аутентификация нагружают процессор обеих сторон. Напротив, для медленных соединений включение сжатия (переключатель -C) может ускорить передачу.за счет уменьшения объема передаваемых данных.

Локальное общение под другим пользователем

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

Читайте также:  Как удалить все файлы на ноутбуке windows 7

Разрешение доступа с помощью ‘ xhost localhost ‘ не является хорошим решением, так как это разрешит доступ всем локальным пользователям и процессам. С другой стороны, решение с использованием SSH излишне требовательно, поскольку шифрование и аутентификация совершенно не нужны для локальной связи и только нагружают процессор. Таким образом, наиболее подходящим решением является копирование файла cookie аутентификации в базу данных целевого пользователя. Это можно сделать так же, как и при удаленном общении, но копировать здесь немного проще. Если целевой пользователь root , вы можете дополнительно воспользоваться тем фактом, что ему разрешено читать любой файл в файловой системе и позволить ему извлекать файлы cookie непосредственно из базы данных вошедшего в систему пользователя: ( user представляет имя вошедший пользователь).

Более простой альтернативой является использование команды sux, которая работает аналогично su, но также автоматически копирует файл cookie аутентификации от исходного пользователя к новому. Кроме того, модуль аутентификации pam_xauth можно использовать для автоматической передачи файла cookie аутентификации при использовании команды su. Просто добавьте строку Using configuration files

в файл /etc/pam.d/su.

/.xauth/import затем может определить, каким пользователям следует пересылать файлы cookie аутентификации (если файла экспорта нет, то обычный пользователь пересылает всем, root никому)соответственно от кого они должны быть получены (если файла импорта нет, он принимается от всех).

XDMCP — Linux как терминал

Поскольку оконный менеджер является клиентским приложением, как и любое другое с точки зрения X-сервера, он, конечно, также может работать на другом компьютере, отличном от X-сервера. Конечно, мы также можем запустить оконный менеджер с отображением на другом X-сервере, используя переменную DISPLAY или параметр -display, например: Однако на практике более целесообразно оставить процесс входа в систему, открытия сеанса и, возможно, выбор оконного менеджера (и других конфигураций) в диспетчере дисплея ( xdm , kdm , gdm , wdm ) компьютера, в который мы входим. Затем компьютер, за которым сидит пользователь, фактически деградирует до роли классического X-терминала, на котором отображается экран входа в систему удаленного компьютера. Связь между X-сервером и удаленным диспетчером дисплеев осуществляется по протоколу XDMCP (протокол управления X Display Manager), по умолчанию используется порт UDP 177.

Если мы хотим таким образом зайти на удаленный компьютер, то при запуске X-сервера этот компьютер должен быть указан с параметром -query (аргументом является имя или IP-адрес): Вместо окна локального входа , появится окно входа в систему или экран диспетчера удаленного дисплея. После входа в систему запускается соответствующий оконный менеджер (на удаленном компьютере) в соответствии с локальной конфигурацией.

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

Протокол XDMCP практически не содержит элементов безопасности, а из-за использования UDP его дополнительная безопасность также не очень проста. Таким образом, его использование практически ограничено только доверенными локальными сетями, где он используется для классических X-терминалов и тонких клиентов. Конечно, использование XDMCP также зависит от конфигурации правил авторизации, но их интерпретация выходит за рамки этого краткого введения. Более подробную информацию можно получить, например, из следующих источников:

Документ создан: vladka, 29.08.2005 12:09

Поделиться с друзьями
ОС советы