Установка Dropbox на Debian 10 :проблема с libpango

Переадресация SSH X11 — это нечто большее, чем обычная переадресация портов, и, вероятно, это самый простой способ добиться того, чего вы хотите.по крайней мере, с точки зрения пользователя .

Если вы хотите, чтобы технически было проще, вам нужно понять, как изначально предполагалось использовать X11.

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

В такой среде вы можете подключаться с одного хоста к другому, и вам нужно только убедиться, что DISPLAYпеременная среды установлена ​​​​правильно, чтобы любая удаленная клиентская программа X11 могла установить прямое соединение с вашим локальным сервером X11, и таким образом, на ваш локальный дисплей. Поскольку домашние каталоги являются общими для NFS, один и тот же ~/.Xauthorityбудет виден как удаленному, так и локальному хосту.

Если бы не было НИС? Это не проблема для X11 :, он не заботится об идентичности. Пока любой клиент, подключающийся к серверу X11, может предоставить правильный файл cookie аутентификации X11 из файла ~/.Xauthority(или файла по умолчанию, отличного от -, на который указывает переменная среды XAUTHORITY), X11 будет работать.. Однако без общих назначений номеров UID/GID совместное использование домашних каталогов может оказаться невозможным.

Без общего домашнего каталога? В этом случае вам также потребуется передать файл cookie аутентификации X11, как правило, извлекая его на хосте дисплея, например, с помощью. xauth nextract /some/file :0.0, затем получить содержимое /some/file, переданное на удаленный хост любым способом, и использовать там xauth nmerge, чтобы добавить его в файл ~/.Xauthorityудаленного хоста.

(Или вы можете использовать xhost +, чтобы отключить проверку безопасности либо полностью, либо только для определенного удаленного хоста.Но это оказалось очень плохой идеей,:если на удаленном хосте были другие пользователи, это открывало вам доступ xsnowк вторжению, или к xroachзаражению, или к худшим вещам, таким как получение все ваши события клавиатуры и мыши для всего сеанса X11 отслеживаются.)

Но незашифрованный протокол X11 оказался довольно слабым местом в системе безопасности. Из-за законов США об экспорте криптовалюты в то время мир остановился на использовании SSH с переадресацией X11 и отключением TCP-порта сервера X11. Стало нормой видеть, что X-сервер запускается как Xorg -nolisten tcp <other options...>.

Совсем недавно X.org признал это и перевернул логику прослушивания TCP :Если ваш дистрибутив Linux запускает сервер X11 без опции -nolisten tcpпо умолчанию, это может быть связано с тем, что ваша версия сервера X11 на самом деле требует явного -listen tcpдля включения классического и небезопасного прослушивателя TCP X11.

Так что... да, можно:

  • включить прослушиватель TCP на сервере X11 вашего хоста
  • убедитесь, что ваша виртуальная машина может разрешить IP-адрес хоста и подключиться к порту хоста 6000 (= соответствует DISPLAY :0.0через TCP)
  • настроить вашу виртуальную машину так, чтобы переменная DISPLAYуказывала наkvmhost:0.0
  • предпримите необходимые шаги для передачи файла cookie аутентификации X11 на виртуальную машину

Это позволило бы X11 работать «классическим способом» с минимальной дополнительной технической сложностью. Но на самом деле настроить гораздо сложнее, чем просто использовать ssh -X virtualmachine, и это может открыть вас для различных старых, хорошо -известных атак.

1
13.05.2020, 10:27
2 ответа

Я попробовал вышеуказанное решение, но оно не сработало. Я использую Debian 10. Затем я искал другое решение и нашел это. Приведенное ниже решение было скопировано из "https://www.reddit.com/r/debian/comments/g13vxj/dropbox_users_in_testingsid_libpango100_to/".

Пользователи Dropbox в Testing/Sid :libpango1.0 -0 в libpango -1.0 -0 удаляет Dropbox --Вот быстрое решение

libpango1.0 -0 уже ушел в тестирование, поэтому его нельзя обновить, а другие пакеты сообщают о сломанных зависимостях. При ручном обновлении до libpango -1.0 -0, Dropbox (важный для меня пакет )удаляется, потому что зависит от старого имени пакета.

Возможно, Dropbox скоро выпустит исправленный пакет, но пока очень легко исправить deb-файл Dropbox:

Распаковать deb-файл:

dpkg-deb -R dropbox_xyz.deb dir/

Отредактируйтеdir/DEBIAN/controlи изменитеlibpango1.0-0на libpango-1.0-0

.

Переупаковка в новый файл deb:

dpkg-deb -b dir/ dropbox_xyz-fixed.deb

Установите исправленный пакет Dropbox.

Установите libpango -1.0 -0, который безопасно удалит старый пакет, а затем обновит все остальное.

2
28.04.2021, 23:14

Я думаю, что самое простое решение — использовать установщик, упакованный в Debian, не -бесплатный, а не пакет, предоставленный Dropbox:

  • удалить пакет dropbox;
  • отредактируйте /etc/apt/sources.listи убедитесь, что ваши строки busterвключают contribи non-freeв соответствии со строками

    deb http://deb.debian.org/debian buster main contrib non-free
    
  • запустить sudo apt update;

  • установитьnautilus-dropbox:sudo apt install nautilus-dropbox.

Пакет nautilus-dropboxиспользует исходный код, предоставленный Dropbox .

3
28.04.2021, 23:14

Теги

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