Список следящего ПО (безопасная установка Debian)


Давайте соберём список проприетарных и открытых программ, которые без ведома пользователя по умолчанию отправляют статистику и подобные вещи? Если эта функция в программе не отключается, то можно выделять заголовок страницы с программой жирным.

Ещё можно читать соглашения конфиденциальности и брать только интересные части, отсеивая всё лишнее, упоминая о продаже пользовательской информации.

Прим. модер.: поскольку тема ожидаемо превратилась в местный филиал ЛОР, то следящие программы в следящих ОС можно обсудить где-то отдельно. В разделе оффтопик, например ;)

Комментарии
— unknown (23/07/2013 09:38)   
Насчёт открытых программ интересно, если такие бы попадали в открытые Unix-подобные ОС прямо в официальные репозитории дистрибутивов.
Гость (24/07/2013 18:03)   
Насчёт открытых программ интересно, если такие бы попадали в открытые Unix-подобные ОС прямо в официальные репозитории дистрибутивов.

Не вопрос: install debian -> выбираем Expert install -> в софте выбираем опцию laptop (можно было бы наивно подумать, что она установит всякие fireware-дрова, часто нужные для ноутов и ACPI-пакеты, как это было ещё есть в старых добрых системах типа BSD) и получаем установленный geoip. Хорошо, что случайно заметил во время инсталляции.

Ну а если обычная Ubuntu 13.04 без netinstall (т.е. возможность выбирать софт вам не дадут), то она сразу идёт с несколькими backdors preinstalled. Во-первых, geoip, которе GeoClue или кто оно там. Ломится по умолчанию в сеть и всё сливает подчистую. Во-вторых — gvfsd-http, с ним то же самое. Активирован по умолчанию, сразу лезет в сеть без спроса, непонятно куда и сливает непонятно что. В-третьих — remote-login-screen, тоже активированный по умолчанию, он сразу после загрузки системы и старта lightdm лезет в сеть на какие-то IP на 443 и 80 порты. Открываешь netstat сразу после загрузки системы, видишь соединение (вывод обрезается) на внешний IP от имени remote-login-s, после чего сразу перед глазами проплывает многое. Remote login shell, сразу после инсталла, немедленное предоставление удалённого root доступа к root-аккаунту собственной системы — первые ассоциации, не так далёкие от реальности. Даже никаких UEFI с её network из гипервизора, computrace и Intel AMT не надо — всё уже есть в убунте, всё под GPL! Наконец, в-четвёртых — включенная отправка краш-репортов в Центр™. Что при этом утекает — можно только догадываться (имена файлов, их содержимое, ещё что-то?). И у меня есть чёткая уверенность, что всё это только верхушка айсберга. Ubuntu сообщает каждый ваш шаг и каждый ваш клик. Языки говорят, что даже Apple на своих i-устройствах не дошла до такой наглости, как включение всего тракинга по умолчанию и без показа каких-либо предупреждений пользователю. Лично я наткнулся на всё это случайно благодаря тому, что в Ubuntu забыли встроить качественный rootkit, который бы скрывал соединения с этими серверами. Так бы никто ничего и не заметил бы, не будь внешних роутеров.

Отключение этих зловредов — тяжёлая процедура. Они настолько интегрированы в Unity (графическая оболочка в Ubuntu, которой люди пользоваться не могут), что apt-get remove разрушит её полностью. В интернетах раздают советы как дизейблить зловредов без удаления через /etc/hosts и другие трюки. Когда вы обнаруживаете такой софт, вы ожидаете, что google про него всё расскажет — достаточно только поискать, но не тут-то было. Это на самом деле недокументированные зловреды. На страницах убунту нет ничего внятного про эти сервисы. Нигде не написано, куда, зачем и когда лазит gvfsd-http или remote-login-screen после умолчальной инсталляции (при том, что вы никогда не пользовались remote login screen!). Я вбил некоторые из IP, куда лез remote login screen и обнаружил, что они принадлежт GHCQ GB. И в гугле нет практически никаких результатов поиска по этим IP. Я первый среди миллионов пользователей Ubuntu, кто заинтересовался тем, что она сразу после запуска лезет на некому неведомые тайные сервера в GB, по whois'у принадлежащие Caninical? А ещё есть Ubuntu store и подобное, там копни и тоже много чего вылезет. Если сегодня взлетят иксы в Debian, снесу Ubuntu моментально и самым жёстким образом. Она мне BIOS не перепрошила bootkit'ами, пока несколько дней была запущена? Ни в чём нельзя быть уверенным. Конечно, не надо утрировать, я понимаю, что такое автообновление софта, праверка апедйтов и всё такое, но вышеупомянутые зловреды не имеют к апдейтам никакого отношения.

Debian "тоже хорош", но пока ещё спрашивает вопросы при инсталле типа "хотите ли сливать вашу статистику популярности используемых пакетов?", "хотите ли включить обновления безопасности и др. по умолчанию?", "хотите ли рассказать ntp серверам о вашем существовании?", "расскажите нам ваше location" и т.д. В BSD такой х-и не было! Вообще, много интересного было подмечено, как-нибудь надо будет расписать.

И самый главный вопрос: Debian netinstall подписи/хэши скачиваемых с сети пакетов проверяет хоть? У меня есть немало сомнений на этот счёт. Или у них логика, что netinstall — он для экспертов, а те из собственных репов всё ставяет по зашифрованному сторонними средствами каналу? Честно говоря, перерыл гугл, но не нашёл ничего внятного на этот счёт (как и вообще мануалов по тому, как ставить Debian через netinstall с объяснением пунктов меню). Как проверить подпись iso — с трудом разобрался, но вот насколько этот iso образ потом проверят скачиваемый с сети софт — это вопрос.

Вообще, есть вопрос[link1] и топик[link2], куда все подобные наблюдения последнее время складывались. Может, лучше там продолжать, а не развивать ещё один, этот? Хотел туда написать, но unknown тут отписался.
— unknown (25/07/2013 09:48, исправлен 25/07/2013 09:51)   

Наблюдения очень интересные, но тот топик не совсем то (как, получается и этот — раз есть более интересный подход к заданной теме). Если вас интересует не Live-(CD/USB), которые всё-таки отдельное решение для временной периодической работы, а нужна регулярная система (пусть противник ломает голову при анализе трафика над тем, что вся ваша работа в интернете анонимна всегда, по принципу "буду скрывать, что мне нечего скрывать, вдруг в будущем пригодиться что-то скрыть"), то лучше создать отдельную тему. Там можно подредактировать коменты для большей ясности.



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



Нет. Это ведь не защищает от подмены пакетов на самом сервере репозитория, а Debian рассчитывает на множество зеркал, которые не обязаны быть доверяемыми.



Вам, надеюсь, в игры играть не нужно? Ставьте простые иксы, современных процов хватит даже на вытягивание нагрузки при просмотре HD-video без аппаратной помощи видяхи.

Гость (25/07/2013 18:53)   

firmware, опечатался.


Я хотел немного рассказать про Ubuntu, Debian и Tails, попробовал их все. Ну, и про половую ориентацию тех, кто делал инсталлятор Debian — это особо заслуживает внимания.


Это радует.


Я понял. Имелось в виду, что на крайняк можно создать собственный себе подктрольный реп, проверить его аутентичность какими-то средствами (тем же PGP), а потом натравливать netinstall на этот реп, обеспечивая шифрование канала связи. Но раз Debian проверяет всё, что надо, то это излишне.


Ну, это смотря что считать играми. Debian netinstall — ну чем не игра? Чем не квест? Вы даже не представляете, насколько сложно пройти все уровни, сколько там пасхалок скрыто, сколько тонких никак не задокументированных тонкостей есть, которые можно только угадать. Если на каком-то уровне попал в тупик, то обратно уже не вернёшься, сохраниться в игре нельзя, остаётся только перезагружаться и снова начинать установку с нуля. Debian — он ведь очень умный, он позаботится о том, чтобы вы после совершения каких-то шагов не могли их совершить снова, не начав установку с нуля. Я где-то с 50-ой попытки только прошёл эту игру, потратил часов 12, и до конца не уверен был, что вообще игру можно пройти тем способом, что я хотел. Было дело, думал, что LFS пройти от начала и до конца, если есть знания, проще, чем Debian-овский инсталлятор. Там надо было угадать штук 5 вещей, которые полностью контруинтуитивны, даже если знать LUKS, LVM2 и чётко понимать, что хочешь сделать. Честно говоря, установка Debian вошла в TOP-2 самых сложных вещей в жизни, какие я когда-либо делал (из работы с софтом). По сложности её можно сравнить только с настройкой паравиртуализации на BSD-current-ядрах, где половина не работает, а другая половина становится ясной только из чтения рассылок (в своё время угробил неделю на это, но всё запустил, чему был несказанно рад). В общем, те, кто играют в установку и настройку открытого софта, в другие игры не играют — те слишком просты, да и времени нет.

Где-то на форуме ранее вы кому-то объясняли как ставить Debian и разбивать диски, но я с ходу не нашёл тот топик. Или мне показалось?


Уже поставил, вроде всё работает. Осталось только принтеры настроить и, по мере временных возможностей, установить паравиртуальные миры. Заодно вопрос тут же задам: если какая-то ОС не имеет DomU-ядра, но BIOS поддерживает хардварную виртуализацию, то, как утверждают, её всё равно можно запустить в Xen. Вопрос: что такая DomU ОС будет знать про хардваре? По всей видимости, всё? Т.е. никакой анонимности?

Вопросов много, не знаю, куда их складывать. Может, пока всё валить в этот топик, а там дальше видно будет...
— unknown (25/07/2013 21:35)   
А в Debian всё сделано как будто для тех, кто уже знает как им пользоваться. Это касается даже того, что на его сайте многое не найти, если не ползать по рассылкам и пр. Вообще, один раз пройдёте инсталлятор и зато на всю оставшуюся жизнь запомните — он десятилетиями меняется слабо. Ставится тупо как винда, next-next-ok, откиньтесь на спину кресла, или что там у неё сейчас пишется.

Единственное, что шифрованный LVM ставится крайне неудобно, согласен.


CUPS. Плюс к нему графический пакет system-config-printer для самых маленьких. Его можно после конфигурации снести с ненужными зависимостями. Да, он сам залезет на linux-printing.org и скачает драйвер под вашу модель, но этот драйвер, скорее всего — простой текстовый файл на несколько строчек, так что можно вроде как не бояться. CUPS прикройте iptables, хотя он снаружи по умолчанию и не слушает, но для перестраовки так лучше делать для всех даже локально слушающих демонов. А сверху CUPS и прочие локальные демоны прикрываете SELinux, чтобы никто не взломал, кроме АНБ.


firmware дрова не ставьте, если они не целиком GPL, а предлагаются из доп. репозитория, за который команда сборщиков Debian снимает с себя моральную ответственность. Для те же сетевух и видях. Пусть железо работают на открытых драйверах, но хуже. Тогда для параноиков лучше — это когда хуже. Firmware — это закрытые блобы или даже открытые с плохо исправляемыми уязвимостями и очень подозрительными при их внимательном рассмотрении. Как можно случайно в драйверах NVidia сделать дырку, дающую рута — не представляю, а в открытых драйверах серьёзные уязвимости бывают крайне редко.
Гость (26/07/2013 01:14)   

Ага, аж тоска берёт по FreeBSD handbook, NetBSD guide и OpenBSD FAQ — почти исчерпывающие описания соответствующих систем. Многие вещи изложены очень понятно, вплоть до настройки почты и того, как настраивать цвета в vim сконфигурировать mutt.


Всё было бы более-менее ОК за исключением ряда мелких пакостей, если бы не требовалось ничего шифровать. Там по сути весь ступор только на связывании LVM с LUKS. Надо бы написать эссе «Debian глазами BSD-юзера» по аналогии с древним баяном «Windows глазами Linux'оида».


Несколько раз выполнял apt-get install cups, смотрел на список того, что будет установлено (зловредный avahi-daemon, samba и пр.) и жал NO. Сегодня перешерстил интернет на предмет LPD, но добрые люди подсказали, что без CUPS никак (LPD в Linux якобы нет(?), а тот, что есть — всего лишь интерфейс с CUPS, причём я так и не понял, умеет ли аутентичный LPD печатать что-то помимо текстовых файлов). Ещё люди подсказали очень важную вещь, про которую, как водится, нигде не на сайте не написано, но которая очень помогает параноикам и вообще всем тем, кто не любит хлама в системе — опцию --no-install-recommends для apt-get. После неё сразу в 10 раз уменьшилось количество навязываемых пакетов при установке нужных, даже CUPS встал. Её куда-то можно прописать в умолчальные настройки? Завтра буду настраивать.


Спасибо за предупреждение, понятно. Но у меня принтер сетевой (хотя и не postscript printer), ему тоже дрова нужны?


Да, это в самую первую очередь сделал. Кстати, если подскажете как сделать так, чтобы cupsd при старте системы не запускался, пока я его не попрошу, буду благодарен. Каждый раз делать service cups stop после старта системы не хочется. Команду «update-rc.d трах-тибидох культ вуду заклинаю на SystemV уровнях старта» пока не умею. А если руками симлинки переименовать команда service cups start потом будет работать? Хочу, чтобы cups всегда был выключен, а когда надо, я его сам руками запущу, напечатаю, что нужно, и выключу.

На loopback почти никто кроме заядлых параноиков не фильтрует, а зря. Всякие локальные сервисы типа CUPS — идеальный способ обхода firewall'а: анонимный пользователь, который не имеет права ходить в сеть иначе, чем через Tor, обращается к локальному демону и отправляет ему на печать файл (указать, что его надо напечатать на удалённом сервере, нельзя?), вуаля.

Кстати, про avahi-daemon, который по умолчанию засунут зависимостями везде, куда только можно и нельзя: почитал в интернете длинный тред про Debian avahi от 2009-го и возмущения тем, что он установлен в Debian по умолчанию. Как ни крути, но по сути он тот же зловред, что и geoip: сам без спроса лезет в сеть, всем всё разбалтывает, знакомится со всеми подряд, всем рассказывает, что у кого запущено, какие сервисы есть, на каких IP. От такого ни один firewall не спасёт — он же сам лезет, от вашего лица, с вашими полномочиями. Ну вот зачем такой discovery protocol по умолчанию? Понимаю, что домохозяйки рады тому, что более не надо вбивать IP-адреса локальных принтеров и всё такое, но о безопасности тут никто не думает.


Никаких дополнительных репов не подключал, разве что non free, но он вроде официальный(?), причём его тоже удалось включить из инсталлятора, не залезая в комстроку. Что касается firmware, бывает такое, что без него железо вообще не работает. Кажется, я с таким сталкивался для некоторых wi-fi карточек под BSD.

А как-то можно универсально проверить, стоит ли в системе какое-нибудь firmware сейчас? dpkg-query -l |grep firmware |grep ^ii выдавал только alsa-firmware-loaders, я его снёс, и fxload заодно. Больше ничего такого вроде нет.

И ещё вопрос: есть какой-нибудь удобный тул для анализа дерева зависимостей между deb-пакетами? Хочется иметь удобный способ выяснить, какие пакеты можно снести без ущерба для функциональности системы, какие пакеты никому не требуются. Когда ещё не знал про --no-install-recommends, использовал старый дедовский спсоб: ставил как есть, а потом сносил все те зависимости, что не нравятся. Правда, на lib*-пакеты мне всё равно, а вот на остальное старался обращать внимание. Тем не менее, вопрос постоянно висел, не порушит ли это работоспособность программ (возможно, всё равно успел наставить в систему много лишнего). Если deb-пакеты компилили с линковкой с конкретными библиотеками, а я потом что-то из них снёс, оно может не запуститься. Если же все lib на месте, но снесено что-то дургое — тут я даже не знаю.

Подскажите про этот[link3] пакет: его снести если, ничего не рухнет? Толком не очень понятно, зачем он нужен, если никакого гнома в системе нет, вместо него оконный менеджер. Кстати, про иксы и менеджер: теперь у нас новая вольница — Debian прописывает дефолтным wm при старте тот wm, который был установлен в системе последним, хотя всю жизнь было такое понятие, как wm по умолчанию, коим служим twm почти во всех системах (хотя в Xenocara вроде был fvwm, возможно). Бинарь x-terminal-emulator удивил. Оказывается, это плоды введения в Debian виртуальных пакетов[link4].

И ещё вопрос: какой сейчас оконный менеджер стоит поставить? Ну, чтоб был базовый функционал и без извращений. Я почитал ваши советы использовать[link5] BadWM, ION и RatPoison. Последний для работы и впрямь неплох, поставил его, всё ОК, но он фреймовый, в нём анонимность невозможна, т.к. окно TBB имеет фиксированный размер. Помню, в badwm не было декораций окон, но я его не осиливал, зато там можно было рескейлить окна, и он минималистичен. Слышал про популярность у гиков wm openbox, поставил его, вроде он шустр и не перегружен. В сети есть информация, как убрать в openbox декорации у окон, а то с ними работать вообще невозможно. Экраны на ноутбуках и так мелкие, мало что влазит, а если их ещё и декорациями окон захламлять, работать стнет вообще невозможно. Или есть какие-то варианты получше openbox? Нужен какой-то один хороший wm для работы (тут фреймовый, без вариантов) и один для интернет-серфинга (тут обычный, нефреймовый, тоже без вариантов). ratpoison неплох, его можно пока оставить, хотя dwm вроде популярнее, а вот в оконных нефреймовых я вообще не разбираюсь. Может быть, у каких-нибудь фреймовых wm есть floating-режим с ресайзом окон, и это самый оптимум? Ну, и надо чтобы базовые хоткеи настраивались, но это сейчас почти везде есть.
Гость (26/07/2013 11:16)   
Единственное, что шифрованный LVM ставится крайне неудобно, согласен.
Да не так уж неудобно. С 3-его раза понятна логика и ставится легко. Думаю, что кто-то и с 1-го раза удачно "прошел", потратив изначально побольше времени на чтение.
— unknown (26/07/2013 11:26)   

Можно использовать aptitude и убирать [Shift -] все лишние зависимости.


Тоже хорошо.


Специально — не знаю. В алиасы если только.


Да, mv /etc/rc2.d/S02cups /etc/rc2.d/K02cups. Затем, sudo /etc/init.d/cups start, sudo /etc/init.d/cups stop. Если боитесь sudo, думайте сами, как без него выкручиваться, гвоздями он не прибит, хотя где-то он нужен.


Смотрите всё, что висит по netstat -pan --inet и фильтруйте, чтобы не лезло наружу.


Вот насчёт статуса пакетов в нём у меня некоторые сомнения. Сейчас даже debian-backports и debian-multimedia почти как официальные, хотя включить их при инсталляции и нельзя.


aptitude. Выбираете, что сносить, выходите в главное меню, если видите, что сносит пол-системы — то оставляете, что необходимо. Делаете несколько итераций, если понадобится и только когда результат удовлетворит — даёте окончательное подтверждение. Есть ещё графический synaptic, но у него проблема с ведением базы пакетов. Вроде то, что им наудалять, может потом само поставиться обратно, если снова воспользоваться apt-get или aptitude.


apt-cache rdepends [packagename]
Рухнет скорее всего.

Есть ещё полезные штуки:
apt-cache depends [packagename], apt-cache search [someword], apt-cache show [packagename].


Вопрос предпочтений. Для fluxbox можно накачать сотни стилей, например отсюда[link6]. А вроде и в конфиге можно полностью отключить обрамление окон и навести полный минимализм.


Не знаю таких.
Гость (26/07/2013 12:15)   
а как MC?
— unknown (26/07/2013 13:32)   
Вы про это[link7]?
Гость (26/07/2013 15:04)   
да Midnight Commander. Плох? Тем кто и в Винде работает комфортно им пользоваться.
— SATtva (26/07/2013 15:23)   
А к чему Вы его привели? Это файловый, а не оконный менеджер.
Гость (26/07/2013 21:01)   

CUPS непобедим. Зашёл на 127.0.0.1:631, всё настроил, покормил принтер ppd-файлом. Пытался напечатать, ничего не выходило, потом вижу ошибку, что не найден файл hpcups. Установил printer-driver-hpcups, ошибка исчезла и из настроек cups смог распечатать их тестовую страницу. Потом начал думать, как напечтать что-то из консоли. Вроде lpr filename.pdf должно работать, но не работает. Судя по интерфейсу из браузера к 127.0.0.1:631, job в списке не появляется. Для печати создал отдельного юзера, добавил ему права в этом CUPS-интерфейсе, также его прописал в группу lpadmin. Эксперименты:



lprm вроде удаляет очереди. Почему нет сокета к lpd — без понятия, руками вроде ничего не удалял. Вся загвоздка в нём? Пробовал service lpd stop/start — не помогает. Может, какого-то софта не хватает? Писали, что нужен apsfilter или magicfilter, но если уже установлен cups-filters, то надо ли ещё чего-то для печати pdf-файлов? Пока ставить не стал.


Ввиду вышеприведённых экспериментов его не стоит уже ставить? Чем он тут поможет(?).

P.S. alsamixer показывал много регуляторов в Ubuntu, а тут — всего лишь 4: Master, PCM, S/PDIF и BEEP. У amixer их чуть больше — штук 5, но всё равно мало. Звук работает.


mc не нужен для большинства задач, если есть zsh + умное_автодополнение + алиасы + авто_cd + hashы_(шорткаты)_для_директорий.
Гость (26/07/2013 21:12)   

А почему в rc3.d, rc4.d и rc5.d можно S*cups в K*cups не переименовывать? Сейчас вот так:

— unknown (26/07/2013 23:47, исправлен 27/07/2013 00:01)   

В /etc/inittab см. п. default runlevel. Если иксы запускаете не вручную, то скорее всего он не второй, а пятый. Если другими уровнями не пользуетесь, то в них можно не трогать.


Не помню как, но CUPS УМВР из консоли через стандартную заглушку lpr только при запущенном демоне.


alsamixer должен показывать всё [F5]. Переключайтесь между несколькими звуковухами [F6], сейчас они бывают виртуальными, даже внутри видях или внешних мультимедиа устройств. Хотя в Убунте могло быть новее и фичастее ядро и alsa.


P.S. По теме есть устаревший материал: Uwe Hermann: Towards a moderately paranoid Debian laptop setup[link8].

Гость (27/07/2013 18:30)   



Таки второй. Ваш метод убирания из стартапа вроде работает, после перезагрузки не вижу CUPS в списке.


xdm стартует автоматически, всё по-заводскому. Тем не менее, второй.


Обычно пишут how-to мануалы с полным траблшутингом, где описывают step-by-step, что должно быть установлено, как проверять работоспособность каждой компоненты и т.д. Если пошагово их проходить, то точно можно понять источник проблемы. То ли я плохо искал, то ли нет такого для CUPS. Или это обратная сторона --no-install-recomends — что-то важное не поставилось или не сконфигурировалось. В системе печати столько разных интерфейсов, методов и легаси, что не сразу поймёшь, какие именно мануалы читать вообще не стоит. Например, старый LPD умел печтать, как я понял, только текстовые файлы. Тем не менее, его файлы конфигурации /etc/printcap до сих пор как-то используются совместно с CUPS. Я на одном удалённом сервере попытался распечатать pdf через lp, так он пошёл его печтать как текстовый файл (т.е. примерно то, что вы увидете в pdf, открыв его в vim).


Да, F5 показало чуть больше, чем было — 6 индикаторов. Судя по F6, звуковая всё же одна.


Вопросы:
  1. Они там fw в rc.boot прописывают, а у меня нет такой директории. Писать правила iptables в /etc/rc.local — это слишком поздно с точки зрения старта системы?
  2. Описанный там мануал по SeLinux ещё сколь-нибудь актуален? SeLinux можно включить как волешебную кнопку в default on policy и всё станет хорошо? Разве так можно, оно на что-то влияет?
  3. Наконец, разве можно жить без Flash? Youtube без него много чего показывать не будет.
  4. Acrobat Reader тоже бывает нужен (pdf — проприетарный формат, поэтому только acroread даёт более-менее точное представление о том, как он выглядит, да и печать из acroread на принтер даёт меньше артефактов). Конечно, никто не заставляет запускать такие программы от основного пользователя, можно под них создать отдельных.
  5. Ещё автор пишет
    Do not install any tasks (no "desktop", no "base system").
    Кажется, base system — это самый minimal и есть, если его не выбрать, то ничего не будет установлено вообще. Будет только разбивка разделов, ядро, grub и всё, а сами разделы будут пусты.
— SATtva (27/07/2013 18:46)   
pdf — проприетарный формат

Отнюдь (см. ISO 19005), просто к нему есть куча проприетарных расширений. Если в конкретном файле они не используются, то без разницы, откроете вы его в Adobe Reader или в каком-нибудь qpdfview.
Гость (27/07/2013 18:58)   

Я компилил собственные pdf-ки из LaTeX. При просмотре их разными pdf-вьюерами заметны небольшие отличия — это первое. При печати из некоторых проприетарных ОС играет роль, с какого вьюера файл был отправлен на печать — это второе. В силу этих причин я с тех пор стал всё печатать из acroread.

Предполгаю, что одна из причин может быть в следующем: в стилевом файле latex указаны шрифты, которых в системе нет. В итоге эти шрифты заменяются наиболее близкими к ним. У разных pdf-вьюеров разный набор доступных шрифтов (в частности, у acroread есть свои полупроприетарные, которые сидят либо в нём, либо доставляются зависимостями к нему — не знаю), поэтому идентичный документ может выглядеть по-разному. Соответственно, и принтер их понимает по-разному(?).
— SATtva (27/07/2013 19:19)   
При генерации PDF фонты обычно встраиваются в файл (хотя это отключаемо), так что, по идее, единственная разница в отображении может быть из-за разных алгоритмов хинтинга — у Адоба они предсказуемо самые крутые.
Гость (27/07/2013 19:47)   
Я чисто визуально вижу, что шрифты другие при открытии одного и того же файла в acroread и, допустим, xpdf/gv, разные. Кроме того, границы eps-файлов, вставленные в pdf, при этом тоже обрезаются чуть по-разному.

Ещё хотел спросить про нормальное шифрование в userland. Хотелось бы, чтобы запуская скрипт и давая ему пароль происходило следующее:
  1. Монтировалось какое-то устройство/файл или логический том.
  2. С конфигами этого тома запускалась программа (например, там хранится БД почты, которую использует mutt).
  3. Давая определённую команду, я закрыаваю mutt и отмонтирую том.
Просто идея, что ключи с доступом к критическим даным постоянно висят в памяти, мне не нравится. Хотелось бы подключать их по простому 128-битному паролю с юзерофильным скриптом, а потом так же легко отмонтировать. У eCryptFS и EncFS есть вроде бы всякие issues из-за того, что они шифруют пофайлово, а cryptsetup не может работать в userland — я правильно понимаю? И какой тогда выход? Каждый раз логиниться под рута, чтобы подмонтировать нужный том? Или надеяться, что sudo безопасно? Нужно, чтобы sudo давало выполнить определённый набор команд определённому пользователю и ничего другого (никому и никогда и ни при каких обстоятельствах) — это реально? Т.е. никаких sudo bush bash.
Гость (27/07/2013 19:59)   
Хочу отключить IPv6 тотально, прописал net.ipv6.conf.all.disable_ipv6 = 1 в /etc/sysctl.conf. Тем не менее, всё равно команда dhclient -v -4 eth0 делает так, что, судя по netstat -apn, идёт прослушка на IPv6:

Я в шоке. Зачем я тогда ему -4 указывал? Или в Lunux IPv6 можно отключить только через опцию к grub?
— SATtva (27/07/2013 20:07)   
ryptsetup не может работать в userland — я правильно понимаю? И какой тогда выход? Каждый раз логиниться под рута, чтобы подмонтировать нужный том? Или надеяться, что sudo безопасно? Нужно, чтобы sudo давало выполнить определённый набор команд определённому пользователю и ничего другого (никому и никогда и ни при каких обстоятельствах) — это реально? Т.е. никаких sudo bash.

Если не извращаться с конфигурацией, sudo достаточно надёжно. Напишите нужный скрипт, положите его в директорию рута и дайте конкретному юзеру через sudo право на исполнение этого конкретного скрипта.
— SATtva (27/07/2013 20:09)   
Хочу отключить IPv6 тотально

Отключите в ядре.
Гость (27/07/2013 20:48)   

Без перекомпиляции ядра никак? Или можно каждый раз какой-то ядерный модуль выгружать после старта системы?
— SATtva (27/07/2013 21:19)   
С перекомпиляцией — самый железобетонный вариант. Передача опции ядру через grub — второй по эффективности метод.
Гость (27/07/2013 23:30)   

Этот[link9] способ ещё не устарел для современных Linux-ядер?

В меню grub2 есть опция linux ... root=/dev/mapper/NAME, которая сливает название всей volume group и logical volume для root, находящееся внутри LUKS, в незашифрованный /boot раздел. Скажите, зачем так в Linux делают? UUID'ы для всего и вся, там прописанные, тоже не радуют.

Grub2 ужасен, тотально ужасен. Наворотили столько автоматики, что караул. Убрали всё ручное управление, теперь рулится только из заумных скриптов, которые будут считать себя умнее вас. Надеюсь, если в меню grub это не указано явно, он не будет пытаться с PXE по сети загрузиться?
Гость (28/07/2013 00:23)   
А вот тут[link10] альтернативный способ, не через sysctl:

Disable ipv6 in kernel: echo net.ipv6.conf.all.disable_ipv6=1 > /etc/sysctl.d/disableipv6.conf will disable ipv6 at next reboot

В каком месте правильно указывать правила iptables, которые система должна читать после загрузки? Этот способ[link8] с rc.boot вызывает вопросы, потому что rc.boot вроде как, пишут, устерл и хранится только для совместимости. Кроме того, на сайте Debian написано, что он всё равно выполняется после старта всей системы, а не at boot time, т.е., не понятно, чем он слаще стандартного rc.local. Можно ещё с if-up скрптами поиграться[link11], но намного ли лучше это, чем rc.local? По уму правила должны загружаться сразу после загрузки ядра и ещё до старта всех сетевых демонов. Возможно ли такое легко сделать, не ковыряясь в глубинах SysV-ранлевелов? В BSD был конкретный файл, куда прописывались правила pf, выполняемые во время boot. Всё было просто и понятно.
— unknown (28/07/2013 00:48, исправлен 28/07/2013 00:55)   

Извините, на многие вопросы подробно не ответить, просто лень. Когда-то ставил давно, на тот момент как-то сообразил как настроить до нужного состояния. Если лично мне понадобится — придёться вспоминать или ломать голову снова, или надеяться, что само заработает. Потом апгрейдил системы до wheezy. Времени на полный аудит всех систем нет, на попытку чистовой установки и пошагового воспроизведения тоже. Когда давно пользуешься системой остаются бэкапы старых конфигов, разные текущие конфиги, куда при новой установке можно глянуть.



На ходу приходиться каждый раз разбираться. Без конца что-то меняется. Чего стоят всякие изменения в /proc, udev и пр. Вот пропихнут и навяжут всем систему инициализации от Л.Поттеринга с кучей фич, наподобие бинарных фрагментов в логах и поимеем ещё кучу геморроя с багами, утечками, сложностью нестандартных настроек.



В Debian был (есть?) какой-то стандартный способ складывания конфигов iptables. Не помню насколько плохой, но дико бесящий своими попытками облегчить жизнь неопытным пользователям. Закинуть свой скрипт в /etc/network/if-pre-up.d/ пока остаётся самым надёжным. Только после каждого нового релиза — как ходьба по минному полю со старыми знаниями по настройке.


Описанный там мануал по SeLinux ещё сколь-нибудь актуален? SeLinux можно включить как волешебную кнопку в default on policy и всё станет хорошо? Разве так можно, оно на что-то влияет?

У меня сложные отношения с SELinux. У команды Debian похоже тоже. Они не осилили новую сборку правил и пихнули в wheezy то, что кое как работало с предыдущего релиза. Из-за кучи непофикшенных правил, теперь стало ещё больше глюков. Соответственно, больше штук приходиться отключать или допиливать, чтобы работало.


Общий принцип: это слой защиты, который лучше, чем ничего. Он, по идее не сможет сделать хуже (несмотря на своё АНБ-шное происхождение), но во вногих местах он серьёзно перекрывает возможность эксплуатации уязвимостей и утечек. Но где-то он может не сработать. Никаких гарантий. Кое где явно приходиться отключать многие из его фич из-за невозможности побороть их глючность.


По сложности настройки — это не волшебная кнопка. Или придёться копаться немного (но даже это очень головоломно) внутри, или отключить (почти) всё.


В wheezy сделали выбор из SELinux и AppArmor, из-за плачевного опыта внедрения и поддержки первого. Но как-то жалко переходить на альтернативы потому что теоретически подход SELinux более правильный.


Наконец, разве можно жить без Flash? Youtube без него много чего показывать не будет.

Почти всё показывает и всё больше без него. Остальное скачиваете через cclive и просматривайте через mplayer, поставленный из репозитория debian-multimedia. Так даже получается скачать часть закрытых для просмотра роликов (не говорите об этом баге гугловцам :). Кстати, SELinux, ограничивающий пользователя и mplayer, здесь как раз очень полезен из-за того что mplayer пишется с наплевательским отношением к безопасности.



Ни в коем случае! Evince, Okular, Acroread, что-угодно, только не Adobe!



Для этого предназначен pmount с суидным битом. Имел критические баги, также как и sudo. Это не в смысле, что надо отказываться, а что или полное неудобство, или безбажных утилит практически не бывает.



Всякие автораны — плохая штука. Хотя, в /etc/cryptab можно прописывать и свои скрипты, но оно не предназначалось для этой цели.


Просто идея, что ключи с доступом к критическим даным постоянно висят в памяти, мне не нравится. Хотелось бы подключать их по простому 128-битному паролю с юзерофильным скриптом, а потом так же легко отмонтировать.

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


Передача опции ядру через grub — второй по эффективности метод.

В /etc/default/grub строка CRUB_CMDLINE_LINUX= должна содержать ipv6.disable=1. Затем сделаете grub-update и после ребута не должны видеть никаких ipv6, например по ifconfig. Некоторые программы могут ругаться (локальная почта), но у них в конфигах запросы к ipv6 тоже при необходимости отключаются.


В меню grub2 есть опция linux ... root=/dev/mapper/NAME, которая сливает название всей volume group и logical volume для root, находящееся внутри LUKS, в незашифрованный /boot раздел. Скажите, зачем так в Linux делают? UUID'ы для всего и вся, там прописанные, тоже не радуют.

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

Гость (28/07/2013 01:06)   
Ещё по той же ссылке[link8]:

Edit /etc/passwd: give all users except for root, sync, uucp and your user account /usr/sbin/nologin as login shell. None of these accounts really needs a valid login shell (nologin will log any login attempts for those accounts).

Этому можно верить? Там почти все сервисы в /bin/sh, боюсь сломать систему такой модификацией.

Стоит ли держать /boot подмонтированным? Автор предлагает так делать. Если не делаются апгрейды чего-то, с grub связанного, то казалось бы, незачем его монтировать по умолчанию. Или информация в нём как-то влияет на установку других пакетов при apt-get?

Now that we have a small, hardened system, it should be reasonably safe to enable networking. Add this to /etc/network/interfaces:

auto eth0
iface eth0 inet dhcp
pre-up /etc/rc.boot/fw_laptop

Run /etc/init.d/networking restart. The firewall script will run every time the network is started.

Это сомнительный, на мой взгляд, совет. Если понадобится вдруг рестартнуть сеть во время работы прозрачной торификации, будет выполнен скрипт pre-up, а в этом скрипте, как правило, первая строчка — сброс уже существующих правил iptables. Пока новые правила не загрузятся, будет некий промежуток времени. Кто даст гарантию, что в этот промежуток левый пакет не уйдёт в сеть напрямую? Он, конечно, pre, но вот насколько он pre? Что происходить будет с уже установленными сетевыми соединениями в момент /etc/init.d/networking restart? Вот в BSD всё совсем не так: там правила fw сами по себе, сетевые интерфейсы — сами по себе. Если в какой-то момент сетевого интерфейса ещё нет, а правило есть, ни один сетевой пакет под правило не подпадает и всё ОК.
Гость (28/07/2013 01:38)   

Это была не просьба к вам конкретно, а мысли в слух. :) Всё-таки разработчики соответствующих систем обычно пишут мануалы к своим программам, в том числе, и по траблшутингу. Если вдруг попадётся толковый мануал по решению проблем с CUPS, киньте ссылку.


acroread — это и есть адобовский acrobat reader, разве нет?


А без таких механизмов лучше? Допустим, запущен джаббер. Там висят ключи в памяти, содержимое сообщений. Хочется куда-то отойти, и что делать? Заблокировать экран и всё? Тогда ключи продолжат висеть в памяти, как для PGP, так и для дискового шифрования. Хотелось бы каждый раз перед блокированием экрана выключить джаббер и отмонтировать раздел с конфигами/логами, которые он пишет/читает, это было бы самым надёжным, но тут получается много шагов:
  1. Выходим из джаббера (ключ, надеюсь, при этом сносится из памяти) и блокируем экран.
  2. Идём в консоль, логинимся под root.
  3. umount лог. тома
  4. luksClose на девайс
Когда через 5 минут возвращаемся обратно, повторяем опять те же шаги. Слишком длинно получается, хотел как-то упростить...


Уже сделал, но не перезагружался ещё. ifconfig и сейчас ничего про ipv6 не показывает, но это не мешает dhclinet'у слушать на ipv6. Кроме того, для управления ipv6 может использоваться и другая утилита, не ifconfig(?). Во всяком случае, я на таком однажды накололся: iptables показывает, что никакого ipv6 нету, а реально ipv6 рулится ip6tables'ом, про который мало кто знает. Вдруг и с другими утилитами также...


Это добавляет ряд удобств, а об их следствиях для анонимности мало кто думает. Можно, кстати, отметить, что во всяких embedded Linux никакого UDEV'а естественно нет (а, может, и DBUS'а). Т.е. нет всего этого чисто Linux'ового, к чему уже все привыкли, и чего ещё нет во многих BSD. С другой стороны, в стандартных дистрах UDEV и DBUS настолько тесно связаны со всем и вся, что дёшево оттуда его уже не выпилить (разве что только с помощью LFS если).
— unknown (28/07/2013 01:51)   

Точно не знаю, я бы тоже не рискнул так делать. Скорее это не особо полезное излишество.


Тоже ерунда. Чтобы там что-то сделать, нужно иметь рута, а имея рута можно подмонтировать. Также как и всякие монтирования разделов в noexec или read-only давно устаревшие советы в плане безопасности. Скорее перестраховка от случайных сбоев, но не от преднамеренных атак.


Если в какой-то момент сетевого интерфейса ещё нет, а правило есть, ни один сетевой пакет под правило не подпадает и всё ОК.

Это распространённый и критичный принцип. Он должен соблюдаться во всех системах. Вроде, для перестраховки можно ещё сам скрипт iptables написать таким образом, что сначало заводятся все правила и только последнее открывает работу всех предыдущих, запускает выход пакето в сеть. Точно не помню, но какая-то фича есть, специально для хостов, где критично при рестарте iptables, чтобы не было никакого окна времени в долях секунды, за которое злоумышленник мог бы что-то успеть.
Гость (28/07/2013 02:32)   

Да, тоже так подумал, но на всякий случай сделал, хотя понятно, что при получении рута это как мёртвому припарка. SATtva уже писал[link12] на эту тему.
— SATtva (28/07/2013 10:38)   
Хотелось бы каждый раз перед блокированием экрана выключить джаббер и отмонтировать раздел с конфигами/логами, которые он пишет/читает, это было бы самым надёжным, но тут получается много шагов

Настройте безопасный hibernate, unknown приводил в форуме порядок настройки. В этом случае диски отключатся сами, память будет сброшена в зашифрованный swap, а при возвращении к компьютеру нужно будет только ввести загрузочный пароль, чтобы всё автоматически вернулось на место.
Гость (28/07/2013 19:28)   

Да, работает. Во всяком случае, теперь dhclient -v -4 eth0 не запускается на udp6.


Тем не менее, всё равно проверил технику автора по автоматическму remount /usr при пользовании apt-get. Тоже работает.


Да, интересная мысль[link13], стоит подумать над этим.
— unknown (28/07/2013 22:26)   
Предположим, при скачивании security-update что-то неочевидное захочет обратиться к /boot. Не апдейт для grub или ядра, а какой-нибудь для LVM или что-то для работы с ФС. Понадобятся новые модули при загрузке и пересборка рамдиска, который лежит на /boot. По идее оно как бы напишет, что апдейт прошёл неуспешно, но есть сомнение: если не провести повторно правильный апдейт-апгрейд со смонтированным как нужно /boot, а вместо этого нечаянно сделать reboot, то не получится ли после перезагрузки, что из-за недозавершённого апдейта поимеем невозможность войти в систему, особенно если там всё пошифровано?

Это маловероятно и нефатально: можно всё вручную разрулить, но какие-то неприятные моменты теоретически могут быть.

Вообще, при шифрованной ФС есть смысл грузиться с флэшки, после чего её вынимать. А /boot раздел на винчестере оставить, пусть на нём апдейтится.
Гость (28/07/2013 23:03)   
поимеем невозможность войти в систему, особенно если там всё пошифровано?
ошибка update действительно выскакивает, но система загружается.
Гость (28/07/2013 23:23)   
Насчёт /boot согласен. Как раз чего-то такого и боялся.
Гость (28/07/2013 23:26)   

Думаю, зависит от конкретного update'а, т.е. от фатальности произведённых изменений и их обратной совместимости с тем, что ранее было.
Гость (28/07/2013 23:38)   
А /boot раздел на винчестере оставить, пусть на нём апдейтится.
который открывается (при полнодисковом шифровании) после загрузки? иначе не понятно.
Гость (29/07/2013 00:06)   
/boot никогда не шифруется, это обычный раздел на диске. Точнее, в grub2 вроде добавили опцию шифрования /boot, но большого смысла это обычно не имеет[link14].
Гость (29/07/2013 00:13)   
/boot никогда не шифруется,
Не шифруется, но речь идет о другом. /boot находится на флеш, но и на венчестере так же. unknown (28/07/2013 22:26) правильно?
Гость (29/07/2013 00:53)   
На флэш находится копия /boot. Загрузка идёт по умолчанию с неё. По мере необходимости можно /boot и флэшку синхронизировать.
— SATtva (29/07/2013 08:45)   
На флэшке находится доверенная копия /boot.
fixed
— unknown (29/07/2013 10:08, исправлен 29/07/2013 10:09)   

Совершенно верно. Можно ещё копию /boot и/или загрузочной флэшки хранить и в зашифрованном корне, чтобы при необходимости вручную примонтироваться ещё с одной флэшки — на которой Live-USB система, чтобы можно было с корня вытащить бэкап, если /boot на винчестере недоверяем, а повседневная загрузочная флэшка повредилась.


Ну или ещё как-то придумать как подстелить соломку с бэкапами.

Гость (29/07/2013 10:16)   
Если флэш попадает в руки злоумышленику, это не является угрозой? Иными словами, то что /boot в открытом виде – это не угроза?
— unknown (29/07/2013 10:44, исправлен 29/07/2013 10:45)   

Является. Остаётся только если следить за своими флэшками и прятать запасные флэши в другом месте, чтобы было чем воспользоваться при опасении компрометации. Загрузчик всё равно будет как "кащеева смерть". В уме можно запомнить только пароль. А стартовые расшифровывающие программы (загрузчик, ядро, рамдиск и др.) всё равно будут где-то лежать в открытом виде.

Гость (29/07/2013 11:22)   
Так значит задача шифровать /boot все-таки актуальна. Это как бы контраргумент этому высказыванию:
Точнее, в grub2 вроде добавили опцию шифрования /boot, но большого смысла это обычно не имеет.
Гость (29/07/2013 11:23)   
ЗЫ ТС то может шифровать весь системный диск при использовании windows. Это не призыв использовать Винду )) камнями кидать не нужно.
— unknown (29/07/2013 11:45)   

Или может делать вид, что он это может? Допустим /boot будет зашифрован с ядром и рамдиском. Но загрузчик, который расшифровывает /boot также может быть протроянен. Это верно и для Windows-систем. Джоанна Рутковска подтверждает это[link15].
— Guest79521 (29/07/2013 12:00)   
Что касается Ubuntu, то эти авто-соединения отключаются, и в сети есть информация по этому поводу:

https://help.ubuntu.com/community/AutomaticConnections
http://askubuntu.com/questions.....they-for-and-how-can[link16]
http://askubuntu.com/questions.....he-applications-lens[link17]
http://ubuntuforums.org/showthread.php?t=2000108
http://ubuntuforums.org/showthread.php?t=2144464
Гость (29/07/2013 12:09)   
В БИОСе есть возможность блокировки загрузки через F12. Похоже замкнутый круг и решения нет, кроме как размещать загрузчик на стороннем носителе?
Гость (29/07/2013 19:39)   

Спасибо за ссылки. Знаете, в винде они тоже отключаются, ntldr подтвердил бы. Во-первых, никто не поручится за полноту этого списка, во-вторых — политика дистрибутива, который всё это включает по умолчанию намекает на то, как этот дистрибутив относится к вашей приватности.

Service to track the remote servers to use. On every boot it pings uccs.landscape.canonical.com to make sure the service exists and is usable before prompting the user to interact with it.

А зачем ему uccs.landscape.canonical.com? Убунта по умолчанию позволяет коннкетиться к каким-то конкретным remote service'ам по гостевому логину без пароля? Это такая web-ОС типа? Вот только подумать о степени абсурда: любой прохожий может получить права пользователя на моей ОС. Это нормально?

Описания остальных опций тоже веселят:

Due to bug, it makes empty queries to videosearch.ubuntu.com every few minutes, even when "Include Online Search Results" set to "Off" in Privacy panel of System Settings. To disable these connections, you can remove unity-scope-video-remote package

Connection being made when you type something in Dash search bar with applications lens selected, ignoring "Include Online Search Results" switch set to "Off" in Privacy panel of System Settings. To disable this connection

Due to bug, it makes DNS queries for daisy.ubuntu.com every few minutes. To disable them, you can remove whoopsie package

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

Список[link18] для firefox тоже впечатляет.

Новые мысли: Debian iceweasel. Выдёргиваю провод и запускаю. Смотрю, что-то сильно долго запускается, хотя процессор не такой слабый. Странно, да? Лезем в консоль, включаем netstat -apn. Картина маслом: iceweasel изо всех сил пытается достучаться до моих DNS-серверов. Пока не достучится, окно не открывает, сука. Точнее, открывает, когда он уже успел сделать штуки 3 безуспешных попытки, и, видимо, timeout срабатывает. Лезу в настройки, отключаю всё, что только можно и нельзя (разве что в about:config с правками не лез) — всё равно, при старте лезет в DNS и ждёт ответа. Зачем ему это нужно? Зачем ему знать мой DNS ранее, чем я попытался зайти на какой-либо сайт?

Делаем:
  1. Домашняя страница → blank page.
  2. Block reported attack sites, block reported web forgeries → off.
Может, ещё что отключил из того, что было по умолчанию включено, уже не помню. Удивило, что во вкладке update браузера нет, есть только search engines. Их тоже выключил.

Самое интересное: warn me when sites try to install add-ons. Посмотрите, что там в exceptions. Да, да, посморите. И подумайте, хорошо подумайте. Кстати, кто такой getpersonas? Но и это ещё не всё. Открываем about:config, вбиваем в поиск http и видим жёсткие ссылки, забитые в iceweasel на (помимо, естественно, самой mozilla): persona.org, facebook.com, marketplace мозиллы, 30boxes.com, mail.google.com, mail.yahoo.com, mibbit.com и пр. Может, какие-то из этих ссылок появились после добавления аддонов — лень сейчас чистую версию смотреть, но большая часть была там изначально.


Капитан очевидность хочет сказать, что перед исполнением любой компьютерный код должен быть расшифрован. Раз так, есть программа, которая его расшифровывает и которая сама не зашифрована. Можно отодвигать эту программу на самые глубокие уровни (загрузчик на внешнем носителе, биос), но полностью изжить её нельзя. И эта программа, да, всегда может быть протроянена, поэтому за её физическую недоступность противнику надо бороться, криптография тут не поможет. В идеале всё железо должно быть гарантировано на недоступность противнику. Даже если вы будете ходить с собственным BIOS'ом в карамане и собственным загрузчиком на внешнем устройстве, противник может легко протроянить[link19] другие комптенты железа и получить full access к системе, когда вы её сами же и загрузите (не говоря уже о банальных жучках и TEMPEST).
— SATtva (30/07/2013 07:28)   
Кстати, кто такой getpersonas?

Шкурки-рюшечки для FF, если не путаю.
— Slon (30/07/2013 10:08)   
Везде сейчас понавтыкали, что же ставить, debiad?
— sentaus (30/07/2013 10:30)   
Список для firefox тоже впечатляет.

Новые мысли: Debian iceweasel.


iceweasel – это тот же firefox, все приколы FF к нему применимы в той же степени. Только в стабильной ветке дебиана ещё вполне может оказаться, что уязвимость исправить нельзя, поскольку соответствующая версия FF уже не поддерживается.
Гость (30/07/2013 10:35)   
будете проходить мимо Linux Mint – проходите
чем помешал opendns? неприятно что прописан без разрешения?
Гость (30/07/2013 10:37)   
что уязвимость исправить нельзя
что мешает убрать iceweasel и поставить FF ESR?
— unknown (30/07/2013 11:47)   
уязвимость исправить нельзя, поскольку соответствующая версия FF уже не поддерживается.

На все пакеты Debian распространяется политика бэкпортов security-fix'ов. В начале появления Linux это было оправдано. Сейчас много таких проектов, в которых бэкпортировать решение от уязвимости в старые версии всё сложнее и сложнее. Iceweasel(FF) — один из них. От него даже вообще хотели в Debian отказаться.
Гость (30/07/2013 14:12)   
кто пробовал tor-browser-linux32-3.0-alpha-2? при первом запуске появляется окно с предупреждением о передаче инфы о системе. или я что-то неправильно понял?
Гость (30/07/2013 14:17)   
вот еще, на вскидку посмотрел:
– нет vidalia
– в add-ons добавлен pdf viewer и torlauncher(что такое?)
— sentaus (30/07/2013 14:56)   
в которых бэкпортировать решение от уязвимости в старые версии всё сложнее и сложнее.

Я про это и говорю, иногда версия из дебиана уже не поддерживается основными разработчиками, а простое добавление исправления уязвимости что-то ещё ломает.

Ну и ещё бывает, что фикса от производителя вообще нет.
— sentaus (30/07/2013 14:57)   
чем помешал opendns?


Он мешает странными ответами на несуществующие домены.
Гость (30/07/2013 20:59)   

  • Если мозги есть, опыт есть, желание учиться есть, и железо поддерживает, то NetBSD. Там нет никакого срача в системе, грёбаных UDEV'ов, DBUS'ов, сверхумного grub2 и пр., зачто есть полезные для анонимности и шифрования фичи, такие как LVM2 и Xen.
  • Из Linux'ов, пожалуй, Debian — лучше в плане соотношения расходов на содержание ОС и отдачи от неё, но надо понимать, что со временем говнится всё, все системы обрастают фичами, комбайнами, несовместимыми с безопасностью и, уж тем более, анонимностью.
  • FreeBSD ещё давно превратили в тот же Linux, вид сбоку.
  • В OpenBSD всё прибито гвоздями, она очень неудобна для модификаций. Из неё сделали консольный, но чёрный ящик: включил, работает, и не смей ничего менять. И если OpenBSD-девы решили, что что-то не нужно, то это просто не нужно, и ты замучаешься городить костыли, чтобы это включить/выключить. Оно всё более и более пишется в идеологии just works, а мануалы по её использованию всё домохозяйнее и домохозяйнее (а как иначе завоёвывать рынок?).
  • В DragonflyBSD, как ещё давно писали, выкинули кучу всего из системы, связанного с безопасностью, ради того, чтобы повысить производительность. Более подробно её не курил.
Гость (30/07/2013 21:01)   

«О выборе операционной системы с нацеленностью на безопасность и анонимность»[link21].
— SATtva (31/07/2013 06:58)   
кто пробовал tor-browser-linux32-3.0-alpha-2? при первом запуске появляется окно с предупреждением о передаче инфы о системе. или я что-то неправильно понял?

Вы что-то неправильно поняли.

вот еще, на вскидку посмотрел:
– нет vidalia
– в add-ons добавлен pdf viewer и torlauncher(что такое?)

/comment67576[link22]
Гость (31/07/2013 11:05)   
При New Identity через торкнопку, полностью сбрасываются все вкладки и появляется новое окно (( Вот это новость (
— unknown (31/07/2013 11:33)   
Так это же отлично. При такой схеме[link23] для этого на данный момент приходится вручную перезапускать браузер и менять произвольным образом размер окна.
Гость (31/07/2013 12:03)   
А как цепочку менять не сбрасывая вкладки?
— unknown (31/07/2013 12:26)   
А так не надо делать — это способствует профилированию. По умолчанию они сами меняются через интервалы или при невозможности построения. А принудительная смена делается только со сменой профиля, т.е. сбросом всех данных.
Гость (01/08/2013 02:12)   

Согласен, что чисто с пользовательской точки зрения это крайне неудобно. В браузере открыты куча вкладок, которые надо закрыть, а потом снова открывать, приходится переносить вручную HTTP-адреса в файл, а потом оттуда копипастить обратно после смены личины. Закладками как-то не привык пользоваться. Понятно, что уже открытые вкладки на специальных url-ах при пускании их трафика по новым цепочкам приводят к профилированию, но иногда это не столь важно (если модель анонимности не самая сильная). Впрочем, я всё же придерживаюсь того мнения, что анонимность должна быть =max и неудобства должны испытывать не те, кому анонимности мало, а те, кому её «много».
Гость (01/08/2013 06:07)   

Accidental local root, Debian Linux


Unknown, а как вы боретесь с локальными рутами в Debian?
Есть ли какие-нибудь средства?


Evidence:

Типичная перезагрузка системы, на последней стадии происходит автоматический старт xdm на нескольких дисплеях. Переключаюсь в текстовую консоль, логинюсь, что-то делаю, потом переключаюсь в иксы и... о, какой-то глюк, xdm не запустился на одной консоли. Переключаюсь в другую — а там... кхм, оконный менеджер запущен. Я вроде не пьяный был, как это так, xdm сам по себе открыл залогиненную сессию? Открываю терминал, права root. Это очень интересно, почему xdm при автоматическом запуске при старте системы предоставляет полный root-доступ к системе без пароля. Куда уж тут Ubuntu'е со своим guest-логином, как говорится...

Investigation:

Может, показалось всё же? Для начала стоит отметить, что невозможно чисто случайно одновременно залогиниться в текстовом терминале и иксах с точностью до секунды. Время, когда произошло событие — 18:04:47. Шерстим логи:
$ last -F -a |grep 18:04
root     :1           XXX 18:04:47 2013 - down              (00:04) :1
root     tty1         XXX 18:04:47 2013 - down              (00:04)
reboot   system boot  XXX 18:04:33 2013 - XXX 18:09:36 2013 (00:05) X.X.X-X-ARCH
18:04:47 — момент одновременной авторизации в консоли (tty1) и иксах (:1).
# cat /var/log/auth.log |grep 18:04
18:04:47 HOSTNAME login[2295]: pam_unix(login:session): session opened for user root by LOGIN(uid=0)
18:04:47 HOSTNAME login[2334]: ROOT LOGIN  on '/dev/tty1'
18:04:47 HOSTNAME xdm[2322]: pam_unix(xdm:session): session opened for user root by root(uid=0)
Время опять точно совпадает. Проверил специально, как выглядит в логах auth.log авторизация под рутом (логин, разлогин, снова последующий логин):
18:24:47 HOSTNAME xdm[2352]: pam_unix(xdm:session): session opened for user root by root(uid=0)
18:25:38 HOSTNAME xdm[2352]: pam_unix(xdm:session): session closed for user root
18:25:45 HOSTNAME xdm[2940]: pam_unix(xdm:session): session opened for user root by root(uid=0)
Есть логи acpid в этот же момент времени (daemon.log), но не похоже, что они имеют отношение к делу. В файле debug есть куча логов ядра, относящихся к загрузке, все помечены моментом 18:04:33, т.е. чуть ранее, то же самое касается и kern.log. В xdm.log:
18:04:34 2013 xdm info (pid 2233): Starting
18:04:34 2013 xdm info (pid 2233): Starting X server on :3
 
X.Org X Server X.X.X
Release Date: XXXX-XX-XX
...
18:04:37 2013 xdm info (pid 2233): Starting X server on :2
 
X.Org X Server X.X.X
Release Date: XXXX-XX-XX
...
18:04:37 2013 xdm info (pid 2233): Starting X server on :1
 
X.Org X Server X.X.X
Release Date: XXXX-XX-XX
...
18:04:38 2013 xdm info (pid 2233): Starting X server on :0
 
X.Org X Server X.X.X
Release Date: XXXX-XX-XX
...
DRM_IOCTL_I915_GEM_APERTURE failed: Bad file descriptor
Assuming XXXXXXkB available aperture size.
May lead to reduced performance or incorrect rendering.
get chip id failed: -1 [9]
param: 4, val: 32675
 
Fatal server error:
no screens found
 
Please consult the The X.Org Foundation support 
         at http://wiki.x.org
 for help. 
Please also check the log file at "/var/log/Xorg.0.log" for additional information.
 
Server terminated with error (1). Closing log file.
18:04:38 2013 xdm error (pid 2233): server unexpectedly died
18:04:39 2013 xdm info (pid 2304): sourcing /etc/X11/xdm/Xsetup
18:04:39 2013 xdm info (pid 2313): sourcing /etc/X11/xdm/Xsetup
18:04:39 2013 xdm info (pid 2322): sourcing /etc/X11/xdm/Xsetup
18:04:47 2013 xdm info (pid 2322): sourcing /etc/X11/xdm/Xstartup
18:04:47 2013 xdm info (pid 2336): executing session /etc/X11/xdm/Xsession
18:04:53 2013 xdm error (pid 2233): Server for display :0 can't be started, session disabled
Обращаем внимание на последние строчки со временем 18:04:47. Предположительный тип рейса: xdm сначала запускается на 4-ёх дисплеях, а только потом считывает свои файлы (более детальной?) конфигурации. К моменту, когда все дисплеи были запущены, и он должен был начать «sourcing», внезапно умирает первый дисплей :0. Возможно, он попытался выполнить «sourcing» на помершем дисплее? Однако, остаётся непонятным, почему автоавторизация под рутом произошла как раз на :1 (см. выше), а не на :0. В логах умершего Xorg.0.log:
[    47.361] (EE) intel(0): [drm] failed to set drm interface version.
[    47.361] (EE) intel(0): Failed to become DRM master.
[    47.361] (II) intel(0): Creating default Display subsection in Screen section
        "Default Screen Section" for depth/fbbpp 24/32
[    47.361] (==) intel(0): Depth 24, (--) framebuffer bpp 32
[    47.361] (==) intel(0): RGB weight 888
[    47.361] (==) intel(0): Default visual is TrueColor
[    47.361] (II) intel(0): Integrated Graphics Chipset: Intel(R) XXX XXX XXX
[    47.361] (--) intel(0): Chipset: "XXX XXX XXX"
[    47.361] (II) UnloadModule: "intel"
[    47.361] (EE) Screen(s) found, but none have a usable configuration.
[    47.361] 
Fatal server error:
[    47.361] no screens found
[    47.361] 
Please consult the The X.Org Foundation support 
         at http://wiki.x.org
 for help.
В логах Xorg.1.log, который самоавторизовался, ничего явно подозрительного не вижу. Сейчас Xorg сам динамически, я так понимаю, пробует использовать разные драйвера, пока не сойдётся, может ли это как-то провзаимодействовать с процессом авторизации? Теоретически после убийства xdm должно убиваться всё на дисплее, хотя на примере локеров экрана все хорошо знают, что это не так, поэтому приходится последние запускать через exec в ~/.xsession.

Prosecution:

Не использовать xdm? Не отходить от ПК до тех пор, пока не убедился, что все xdm запустились и запустились правильно? После случайной смерти xdm не окажется ли однажды, что вместо него появилась залогиненная сессия? Что происходит с авторизацией и иксами при смерти xdm на дисплее?

Количество автоматики, которое наворотили в последних версиях иксов и xdm ужасает. Когда-то это были относительно простые сервисы с понятной логикой, а теперь там даже конфиги автогенерятся (а если не савтогенерились, то непонятно, откуда их взять, и что редактировать, даже образца xorg.conf, более-менее подходящего под систему, нету).

Punishment:

Uninstall Debian, install Xenocara?[link24]
It is currently based on X.Org 7.6
Вот живут же люди!

P.S. Удивляют многие строчки в kern.log, его взаимодействие с BIOS'ом и фирмварями. Совершенно не понял, откуда при стандартной инсталляции берётся паравиртуальность (логи ядра):
[ 0.000000] Booting paravirtualized kernel on bare hardware
Как сказал[link25] бы Тео, это mess of firmware, багов и проприетарных BIOS'ов::
[ 0.509140] mtrr: probably your BIOS does not setup all CPUs
[ 0.515562] [Firmware Bug]: ACPI: BIOS _OSI(Linux) query ignored
[ 0.641895] PCI: Using host bridge windows from ACPI; if necessary, use "pci=nocrs" and report a bug
[ 2.318630] pci 0000:XX:XX.X: EHCI: BIOS handoff failed (BIOS bug?) 01010001
[ 3.914534] pci 0000:XX:XX.X: EHCI: BIOS handoff failed (BIOS bug?) 01010001
[34.107660] psmouse serio1: elantech: assuming hardware version 3 (with firmware version 0xXXXXXX)
[35.311183] [Firmware Bug]: ACPI(PEGP) defines _DOD but not _DOS
Можно только догадываться, сколько в таком железе может сидеть сидит[link26] бэкдоров и закладок.
Гость (01/08/2013 06:17)   

Что-то похожее: https://bugs.launchpad.net/ubuntu/+source/xserver-xorg-video-intel/+bug/605124 [опять движок не любит плюсы в ссылке].
— unknown (01/08/2013 10:13, исправлен 01/08/2013 10:15)   

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



Все пользовательские логины (кроме одного резервного, который оставлен только для администрирования и в нём не запускается никаких обычных программ) закрыты SELinux'ом, так что там рут всё равно не получится.



Потом ещё будет Wayland[link27] или Mir[link28] с прицелами не на безопасность и конфигурируемость, а на большую совместимость со смартфонами и прочими гаджетами.

Гость (02/08/2013 00:17)   

Вы ранее писали иначе: root получится, но с его правами под SELinux'ом всё равно сделать ничего не получится. Кстати, по умолчанию xdm и X запущены с правами рута.


Страшно представить, чем вы занимаетесь в сети, если знаете такие слова. Зачем оно вам? Я-то думал, что здесь даже про Unity почти никто не знает. Окошко[link29] с Unity напоминает key binding[link30] фреймовых wm, только корявый, нелогичный, недоделанный и извращённый. В rp достаточно набрать ctrl+t ?, и сразу появляется подобное же окно, как и по ссылке.

Ещё вопросы:
  • glib-networking-services — это опасно? Куча всяких network-зависимостей идёт бонусом к gimp'у.
  • Есть ли какие-то адекватные замены комбайну openoffice для просмотра и редактирования doc-файлов? А то полная Java в системе сильно смущает, она потом поди ещё и плагином к браузеру будет по умолчанию везде становиться. Была раньше масса других офисов, типа libre office и staroffice, но за офисами не слежу; не в курсе, в каком они состоянии.
Гость (02/08/2013 00:31)   
Ещё вопрос: как сделать автоматический локер для текстовой консоли? В сети рекламируют либо делать timeout на shell, либо vlock, но vlock не автоматический, а timeout будет применён ко всем шеллам, включая те, которые запущены в терминальных мультиплексорах (screen, tmux), поэтому неудобно. Если в терминале запущен, допустим, screen, нужно, чтобы сам screen и открытые в нём окна не убивались — вместо этого screen детачился и закравалась сессия в том шелле, где screen был запущен. Думал над выцеплением IDLE time из команд типа w, но там всё запущено: после запуска screen в w исчезает запись о том шелле, из которого screen был запущен, да и не хотелось бы самопальные кривые костыли городить. Кардинальное решение — всегда использовать для рута иксы, а там можно надеяться на таймаут хранителя экрана типа xscreensaver'а, но запускать от рута иксы и xscreensaver не есть хорошо.
Гость (02/08/2013 02:57)   
Когда я ставил Debian, одним из явных осознанных желаний было избавиться от мерзопакостного и слишком умного PulseAudio, которым убунта напихана по самое нехочу. Вроде бы PA явно не установлено, но один пакет всё же есть в качестве зависимостей — libpulse0. То ли благодаря ему, то ли ещё кому, но некоторый софт (например, mplayer) создаёт временные файлы вида /tmp/pulse-XXXXXXXXXXX. Попытка удалить libpulse0 приводит к:
# apt-get remove libpulse0:ARCH
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following packages will be REMOVED:
  libpulse0 libsdl1.2debian mencoder mpd mplayer
0 upgraded, 0 newly installed, 5 to remove and 0 not upgraded.
After this operation, 10.4 MB disk space will be freed.
Do you want to continue [Y/n]? n
Abort.
Стоит ли удалить как-то приндительно, с enforce? И всё-таки, почему mplayer так идёт? Он по умолчанию собран в Debian с поддержкой PA? Вроде бы номинально всё работает через alsa, но скорее от невозможности использовать pulse, а не от здравых дефолтов, заложенных при компиляции зависимостей.
— unknown (02/08/2013 13:13)   
Что-то у меня исчерпались знания для ответов на ваши последние посты. Ничего конкретного сказать не могу, честно.
Гость (02/08/2013 20:58)   
Помню в Linux Mint был пакет apport, который не спрашивал об отправке чего-либо. Узнал о нём, когда убрал анимационную заставку при старте системы и только через неделю единожды высветилось такое при загрузке: "Starting automatic crash reporter [FAIL]". Может с каким-нибудь другим пакетом подтянулось?

А сайт PRISM Break[link31] оказывается обновляется, интересно наблюдать.
Гость (02/08/2013 22:21)   
Немного полезных советов параноикам на случай, когда /tmp смонтировано в память (три команды, которые делают всё хорошо):
$ echo 'set viminfo+=n/tmp/.$USER.viminfo' >> ~/.vimrc
$ echo 'export LESSHISTFILE=/tmp/.$USER.lesshist' >> ~/.zshrc
$ echo 'HISTFILE=/tmp/.$USER.zhistory' >> ~/.zshrc

Если с чем-то разберусь сам или с помощью других, напишу.


http://packages.debian.org/search?keywords=apport:
experimental (rc-buggy) (utils): automatically generate crash reports for debugging
У меня в apt-cache search его нет.
Гость (03/08/2013 02:35)   

Результаты поверхностного поиска:
  1. Abiword тянет за собой сетевые гномовские уитилиты с очень сомнительным функционалом. Он самый тощий из стандартных программ этого класса.
  2. Бывший koffice, который теперь calligra, тянет за собой массу грязи, включая большой кусок kde, поэтому тоже плохой выбор.
  3. Утилита docx2txt хороша, но она только для чтения, причём она полностью рушит форматирование текста.
  4. Рекламируют вот этот проект[link32], вроде он не завязан на интегрированные графические среды типа гнома и kde, но подробнее не разбирался.
  5. Siag Office[link33] нахваливают, как самый наилегковеснейший, но его установка в Debian проблематична[link34]. Такое впечатление, что этот проект давно заброшен[link35], в Debian сохранились только его археологические останки[link36].
— SATtva (03/08/2013 15:23)   
Есть ли какие-то адекватные замены комбайну openoffice для просмотра и редактирования doc-файлов? А то полная Java в системе сильно смущает, она потом поди ещё и плагином к браузеру будет по умолчанию везде становиться. Была раньше масса других офисов, типа libre office и staroffice, но за офисами не слежу; не в курсе, в каком они состоянии.

LibreOffice — это форк OpenOffice, такой же большой и страшный, но полноценных альтернатив ему (им) мне неизвестно. Java не является обязательной зависимостью, просто без неё не будут функционировать некоторые компоненты программы; также она не подцепляется автоматически к FF (по крайней мере, так обстоят дела в Gentoo).
Гость (07/08/2013 06:55)   
Debian netinstall — ну чем не игра? Чем не квест? Вы даже не представляете, насколько сложно пройти все уровни, сколько там пасхалок скрыто, сколько тонких никак не задокументированных тонкостей есть, которые можно только угадать. Если на каком-то уровне попал в тупик, то обратно уже не вернёшься, сохраниться в игре нельзя, остаётся только перезагружаться и снова начинать установку с нуля. Debian — он ведь очень умный, он позаботится о том, чтобы вы после совершения каких-то шагов не могли их совершить снова, не начав установку с нуля. Я где-то с 50-ой попытки только прошёл эту игру, потратил часов 12, и до конца не уверен был, что вообще игру можно пройти

хочется задать вам вопрос, который раньше задавали на рыночных развалах при выборе игрушек: "ключи дадите?" (всмысле: проходку игры)
Гость (07/08/2013 10:09)   

Да, дам, только чуток попозже. Даже на фото заснял, что и как проходил. Правда, я снимал в основном спорные и проблемные моменты, а не вообще всё подряд.
— unknown (07/08/2013 11:48)   
Кстати, как можно заскриншотить инсталляцию без фотоаппарата?
Кроме как с виртуалки или оцифровки выхода с видеокарты?
Гость (07/08/2013 14:17)   

Купить фотоаппарат и заскриншотить Никак. Даже просто сделать скриншот текстовой консоли, когда всё уже установлено (но иксов нет) — не такой простой вопрос. Во FreeBSD для этого была утилита vidcontrol[link37]:
$ vidcontrol -p < /dev/ttyv0 > shot.scr
например. А как в Linux, я вообще без понятия.
— SATtva (07/08/2013 19:09)   
Попробуйте fbgrab.
— накипело (28/08/2013 01:54)   
Какой всё-таки ужасный этот Debian. Когда-то много кричали о том, почему Linux'а нет на десктопах и в ынтырпрайзе. Что ж, теперь крупные коммерческие игроки сделали из него ынтырпрайз, запихав туда такую монструозную автоматику, котрая нормальным людям понадобиться вообще никогда не должна. Система давно считает себя умнее пользователя, автоматика затачивается под домохозяек, чтобы всё работало искаропки, безопасность отходит на самый последний план. Параноики вынуждены изучать, как работает то, что им сто лет не нужно.

Ставишь Xen в BSD — всё понятно, установить — значит установить. А что в Debian? Он не просто установил, он просканировал весь диск, нарыв откуда-то левые неиспользуемые разделы (хорошо, не нашёл ОС там, а то бы и её добавил); всё, что распознал, прописал в grub; там же сделал подменю, куда прописал гипервизор, recovery mode для него и ещё помержил опции ему одному ведомым образом. Я на это смотрю и меня аш трисёт™. Я бы никогда не подумал, что он начнёт всё это делать после банального apt-get install. Install в нормальных системах — это скачать бинарный тарболл и распаковать его в /usr, всё. Кому хочется, пусть потом делает autoconfigure на свой страх и риск, если такое для рассматриваемого пакета предусмотрено. И, вообще, никто не понимет, что линуксовая автоматика там делает, за всем этим стоят тома документации, которые уже давно никто не читает, типа работает — ну и ладно, а как работает — дело третье. Чувствуешь себя как на минном поле, никогда не знаешь, что он вытворит очередной раз.

Домохозяйки, может, и рады grub2, но где он может понадобиться специалисту? Всё поубирали, запретили лезть в конфиги руками, ничего не поменять. Одни гомосеки вешают автоматику на графический конфигуратор, без которого не сделать ничего, а другие пишут конфиги, которые будут управлять другими конфигами автоматически, но суть всё та же. Мне-то оно зачем сидеть разбираться с их автоматикой верхнего уровня, всякими опциями типа GRUB_CMDLINE_LINUX_DEFAULT? Я даже не могу переместить приоритет и порядок опций загрузки руками во всем понятном /boot/grub/grub.cfg. Если для изменения порядка пары строчек в /boot/grub/grub.cfg я должен вызывать внешний скрипт со своим конфигом, и это не абсурд, то что такое абсурд?! И на эту автоматику завязано всё, вся документация. Один раз руками залезешь — потом может всё перестать работать автоматически, да и инструкции под ручное изменение уже не пишут, всех принуждают редактировать /etc/default/grub. В BSD таких пакостей не было, и монструозности с кучей автоматики тоже. Вот оно надо кому-нибудь сидеть читать толстый мануал на grub2? И зачем? Чтобы просто загрузить одну единственную свою понятную конфигурацию? Где может понадобится grub2? При клонировании инсталляции на тысячи машин, очевидно, на гиперхостингах, где вручную каждую не наковыряешь. Ынтырпрайз сделал из Linux'а то, что он хотел для себя видеть, насрав на всех остальных. Остальным остаётся только сидеть и жрать, что им приготовили.

По ошибке раскомментировал одну лишнюю строчку GRUB_CMDLINE_LINUX_DEFAULT в /etc/default/grub (да, виноват), и он сразу всё понял правильно: вместо того, чтобы добавить обе опции к параметрам ядра при загрузке, он добавил только последнюю, а первую проигнорировал. Заметил не сразу и чисто случайно, когда увидел по netstat, что гомосервисы уже вовсю слушают на ipv6. И главно, на опцию net.ipv6.conf.all.disable_ipv6 = 1 Linux-ядру почему-то наплевать. Почему — никто не знает, но факт. Думал добавить в rc.local на пожарный случай блокировку ipv6 через ip6tables, но после загрузки с дизейблом ipv6 через grub2, он более не понимает команды, пишет
Перезагружаться, чтобы проверить, отрабатывают ли команды при включенном ipv6, пока не пытался. Да даже если и отрабатывают, как ими воспользоваться? В норме он будет писать ошибку. В случае ненормы, возможно, подстрахует, но как определить, когда ipv6 по факту включено, а когда нет? Это ж Linux, over-engineered system во всей красе. Зато он умеет фичи A,B,C... которых не умеет BSD! Видимо, деанон тоже предыинсталлирован, чтоб никто не жаловался на отсутствие фичи.

После BSD, несмотря на множество её минусов, всё это линуксовое смотрится предельно омерзительно. Что интересно, всё толковое, что в Linux появилось, в BSD успевают оперативно утягивать (lvm2 уже там). Как однажды было сказано, есть 3 стадии разработки софта: 1 — проприетарщики придумывают идеи и интерфейсы, пишут гнилой пропретарный код. 2 — приходит GNU-тусня и переписывает её на GPL. Как правило, получается коряво и без понимания. Наконец, стадия 3 — приходят BSD'шники и переписывают GPL-код уже начисто, с нуля, учитывая их ошибки, но под BSD-лицензией. Далее проприетарщики забирают BSD код к себе обратно, и цикл начинается снова.

К слову, рекомендуемые опции Xen очень плохие для анонимов и сводятся к прямой доставке трафика виртуалок в сеть через мосты, минуя всё остальное. Чтобы постебаться ещё более изощрённо, в документации старательно советуют отключить iptables на мостах, типа плохо и некошерно там фильтровать, пусть трафик сам ходит свободно. Хорошо, что вовремя одумался и понял, что не всему тщательно рекомендуемому стоит следовать. Настройка домов через NAT (то, что нужно анонимам) вообще нигде толком не описана, есть лишь намёки в официальной документации, причём не на сайте Debian, а на сайте Xen. Один деятель в рассылке раскритиковал дефолтную систему настройки сети в пух и прах, расписал, как он её сделал для себя на NAT'е, но его дока старая, а воз и ныне там. Впрочем, эффект всё тот же, всё логично: на хостингах фильтровать не надо, траф у клиентов ходит, как вздумается, пусть за него сами клиенты радеют с внутренними файерволлами, а если что и надо пофильтровать, то это делают на внешних роутерах централизованно. Естественно, раздача настроек идёт по DHCP, и тут мосты приходят как раз кстати. Опять ынтырпрайз всё перекроил под себя, как всегда, а остальные тихо сидят и хавают, что им положили.

xend, судя по описанию, выбешивает ещё до своего запуска, и это при том, что он самый «примитивный» сервис для управления домами. Другие вообще предназначены для управления группой машин, где разные дома находятся на разном железе, есть живая миграция домов между физическими машинами и пошло поехало. xend автоматически запускает, гасит и прочим образом надругиваетя над домами по ему одному ведомым правилам. Интересно, можно ли им вообще не пользоваться, если запуск и останов всегда будет делаться вручную? В новых версиях Xen обещают уже сделали Open vSwitch — ещё одна штука для ынтырпрайзов, чем-то напоминает такую пакость, как avahi, но в 10-ой степени. Правильно, ручная настройка сети зло — пусть сеть сама настраивает себя по одному ей ведомым механизмам, а какие при этом будут утечки в безопасных средах, никого не волнует, и дальше будет только хуже.

Как добиться того, что Linux ушёл с продакшн-серверов? Может, только после этого его перепилят под гиков нормальных людей и нормальные человеческие задачи?
— SATtva (28/08/2013 07:58)   
Ынтырпрайз сделал из Linux'а то, что он хотел для себя видеть, насрав на всех остальных. Остальным остаётся только сидеть и жрать, что им приготовили.

Ну не обобщайте, а? Сижу себе в своей генте под grub 0.9x, никого не трогаю, примус починяю УМВР. (Хотя xen не юзаю, да, по этому поводу ничего сказать не могу.) Не очень понимаю, чего Вы после BSD полезли именно в Debian, а не в Gentoo, как более идеологически близкий линукс.
— unknown (28/08/2013 10:01, исправлен 28/08/2013 10:20)   

Виртуалки вообще не предназначены для приватности/анонимности в понимании параноиков. Они для безопасности в применении/понимании энтерпрайза (у которого риски застрахованы финансово), всё правильно.


Subject: Re: About Xen: maybe a reiterative question but ..
Date: Oct 23, 6:14 pm 2007
Virtualization seems to have a lot of security benefits.

You've been smoking something really mind altering, and I think you should share it.

x86 virtualization is about basically placing another nearly full kernel, full of new bugs, on top of a nasty x86 architecture which barely has correct page protection. Then running your operating system on the other side of this brand new pile of shit.


You are absolutely deluded, if not stupid, if you think that a worldwide collection of software engineers who can't write operating systems or applications without security holes, can then turn around and suddenly write virtualization layers without security holes.


You've seen something on the shelf, and it has all sorts of pretty colours, and you've bought it.


That's all x86 virtualization is.

© Theo de Raadt[link38], Virtualization decreases security[link39].


Вот чей-то интересный коммент[link40].

Гость (28/08/2013 11:55)   
Виртуалки вообще не предназначены для приватности/анонимности в понимании параноиков.

Объясните, как безопасно пользоваться Тор-браузером, ведь отключение скриптов, по-вашему, сильно снизит анонимность. А со скриптами уровень безопасности таков, что ставит под сомнение анонимность. (Только про селинукс не надо писать). Получается что единственный способ достичь максимальной анонимности – это запустить Тор-браузер в виртуальной машине. Можно наверное ещё chroot попробовать, как более простой вариант.
— unknown (28/08/2013 12:43, исправлен 28/08/2013 13:03)   

Мелко плаваете параноите.


Chroot тоже не имеет отношения к безопасности[link41]. Майк Перри пишет[link42], что мы все умрём от кибервойны ничего не спасёт, даже выполнение кода на разных машинах, Air Gap эксплойты уже заготовлены, похищение ключей разработчиков Tor'a и дистрибьютеров, компрометация всей его инфраструктуры (и затроянивание дистрибутивов Linux заодно) — вполне реальный сценарий, вопрос времени. Так что пока ждём разработки детерминированной компиляции и групп присмотра за сборками.


I don't believe it is possible to keep software signing keys secure any more, nor do I believe it is possible to keep even an offline build machine secure from malware injection any more, especially against the types of adversaries that Tor has to contend with.

Первым начнут укреплять Debian[link43], на нём и обкатают сборку TBB[link44].



Если дела и дальше будут идти так плохо, то разрешат отключать вообще всё:


In the meantime, we are investigating giving advanced users a way to enable text-mode only browsing and other usability-destructive tradeoffs via a security slider at startup:

https://trac.torproject.org/projects/tor/ticket/9387

Гость (28/08/2013 21:11)   
Выйти из чрута с помощью нерутового процесса можно только при наличии лазейки в ядре, а уязвимость в приложении тут бессильна. Это существнное повышение безопасности, чтобы там ни говорили авторитеты Линукса.
— Беня (28/08/2013 22:03)   
Выйти из чрута с помощью нерутового процесса можно только при наличии лазейки в ядре, а уязвимость в приложении тут бессильна.

И что мешает приложению воспользоваться уязвимостью в рутовом процессе? Или поднять себе привилегии, через проблему в одном из модулей ядра :)
Гость (28/08/2013 23:44)   

Меня как UNIX'оида взращивали и обучали гентушники, которые мигрировали с BSD в 2003-ем, ставили генту с положенным крещением огнём ещё в 2004-ом и пользовались ей вплоть до 2011-го, если не вру. У них был несоизмеримый со мной опыт, и в настройке BSD мне немало помогали. Я не могу сейчас вам пересказать всё то, что я наслушался про генту последние лет за 7, тем более, что это говорили не эникеи, а те, кто в командной строке чувствовал себя вольготно, фиксил баги в сорсах, писал репорты и т.д. и пр. Основной мотив был в том, гента — хорошая система, продуманная, во всём устраивает, но чтобы она была в рабочем состоянии, чтобы ей пользоваться, а не постоянно красноглазить и фиксить баги, ждать ебилды, пиная мейнтейнеров... нужны нормальные мейнтейнеры, которые будут её держать в актуальном и конситентном состоянии. Иначе вы будете делать их работу за них (читай «красноглазить»). Народ постарел, от красноглазия устал и постепенно мигрировал на другие дистриубтивы. Проблема выбора дистрибутива была насущной темой философских споров втечение многих лет; всё, что можно было сказать, было сказано, по итогам чего был выработан[link45] консенсус «что угодно, но только не Gentoo». Я предпочёл доверять тем, кто имеет многолетний опыт работы с ней, а не повторять чужие ошибки на собственной шкуре.

Позже мне пришлось лишь единожды иметь дело с гентой, это была чужая система на каком-то хостинге, и из-за того, что пол-года её никто не обновлял, она была полностью outdated. Хорошо, мне гентушники помогли обновить её до нужной кондиции, чтобы установить один нужный мне пакет более новой версии. При этом пришлось снести и переустановить половину системы. Если бы хоть одно действие увенчалось фейлом, был бы кирдык. Это вам не BSD, где есть полная отвязка системы от портов, Gentoo — она состоит из портов, поэтому нездоровое обновление может легко угробить всю систему. Короче, рисковать так в продакшне мало кому захочется. Да, есть другие вроде как профессиональные дистрибутивы, но у них полтора пользователя и примерно такой же уровень поддержки, поэтому совсем экзотику я выбирать не стал принципиально, остановился на Debian, как меньшем зле из множества зол.


Ну да, я же вам об этом когда-то и сообщал[link46]. Думаю, просто Тео ломает имплементить поддержку паравиртуализации в ядро, и это надо чем-то оправдать. Если бы поломать гипервизор был бы столь элементарно, хостинги бы ломали как нефиг делать, а ведь гипервизор там — это единственное, что ограничивает пользователей (рут в своём доме и так у всех есть). Конечно, за словами Тео есть изрядная доля истины, но я всё же склонен считать, что гипервизор добавляет ещё один уровень безопасности, не ослабляя существующий. И я не веду речь о полностью скомпрометированных домах, консерватно полагая, что потенциальный зловред будет сидеть в доме под непривелегированным пользователем. Наконец, в любом случае, нормальная анонимность невозможна без виртуалок, сейчас это все понимают[link47].


Нда, скучать не приходится. Атаки всегда становятся только сильнее. ©


Уже давно должны были позволить, а они только сидят-раздумывают, и при этом сами же признают, что это вопрос исключительно usability, т.е. политический.
— unknown (29/08/2013 10:16, исправлен 29/08/2013 10:16)   

Собственно, вот этот коммент[link48] Майка, в котором он разъясняет некоторые политические вопросы, в т.ч. почему приходиться сидеть на глючных небезопасных браузерах и не сделать свой.

Гость (31/08/2013 22:27)   
Я заметил, что в Debian Wheezy постоянно, каждые несколько секунд, всплывает в top процессов rts5139-polling, раскручивая кулер. При любой операции с TBB это тоже происходит. Из поверхностного чтения гугла выяснил, что это какой-то баг в современных версиях Linux, из-за которого ядро постоянно опрашивает SD-кард-ридер, даже когда там нет карты (или и самого кард-ридера). Здесь[link49] советуют сделать rmmod rts5139 для решения проблемы. Стоит ли последовать этому совету? Могут ли быть какие-то следствия для безопасности? Т.е. они предлагают выгрузить из ядра соответствующий модуль.
— unknown (01/09/2013 00:10, исправлен 01/09/2013 00:12)   

Не наблюдаю такой проблемы. Модуль лежит, если посмотреть find /lib/modules -name "rts*", но по lsmod | grep lts он вообще не загружен. При наличии картридера. Так что можно выгружать, проверите только, работает ли картридер после этого.


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

Гость (01/09/2013 13:00)   
Если кто-то может напишите подробную и понятную новичкам инструкцию.
— тестерТьюринга (01/09/2013 15:55)   
unknown:
Модуль лежит, если посмотреть find /lib/modules -name "rts*", но по lsmod | grep lts он вообще не загружен.

С lts Вы не ошиблись?
— unknown (01/09/2013 17:55, исправлен 01/09/2013 18:02)   

Ошибся. s/lts/rts//g


В любом случае, модуль не загружен.

Гость (02/09/2013 02:41)   
И что мешает приложению воспользоваться уязвимостью в рутовом процессе? Или поднять себе привилегии, через проблему в одном из модулей ядра

Известно что запускать процесс в песочнице имеет смысл только от непривилегированного пользователя. Поэтому речь только об этом случае. Если вы знаете лёгкий способ выхода из неё, поделитесь информацией. Вы считаете, как и unknown, что делать chroot для сетевого приложения бессмысленно?
Гость (02/09/2013 03:33)   

Кто-нибудь знает, как отучить xscreensaver принимать пароли в кириллической раскладке? В старых его версиях если вводил в кириллице, то звёздочки не рисовались, и было сразу понятно, что надо переключиться на латиницу. В новых версиях он поумнел и ест кириллицу безо всяких индикаций о ненормальности. Приходится по нескольку раз вводить пароль, пока не угадаешь раскладку. Про CAPS он постфактум предупреждает хотя бы, чего не сказать про кириллицу.

Другой вопрос про delay/timeout. После ввода неправильного пароля он делает таймаут в несколько секунд, как его сократить? В man ничего не вижу на эту тему. Если пароль сильный, то от такой опции одно неудобство. Этот же вопрос есть и про консоль: ввёл неправильно — потом долго ждать, пока ввод пароля запросится снова. Неужли недостаточно долей секунды для задержки? Кто-то, наверно, думает, что пароль будут подбирать, сидя за клавиатурой руками, и для сверхслабых паролей эти таймауты от чего-то спасут. Стыд полный.

И третий вопрос про приглашение ввода авторизации в консоли. Кто-нибудь знает, как его поменять так, чтобы не писался тип системы и имя хоста?
— SATtva (02/09/2013 07:49, исправлен 02/09/2013 07:51)   
Другой вопрос про delay/timeout. После ввода неправильного пароля он делает таймаут в несколько секунд, как его сократить? В man ничего не вижу на эту тему.

Он должен использовать глобальные параметры PAM, в том числе для таймаута; сделать таймаут меньше, чем задано в PAM, как я подозреваю, нельзя. Здесь[link51] есть некоторая информация, какие он использует конфиги.


И третий вопрос про приглашение ввода авторизации в консоли. Кто-нибудь знает, как его поменять так, чтобы не писался тип системы и имя хоста?

/etc/issue
man issue

— unknown (02/09/2013 12:36, исправлен 02/09/2013 12:37)   
Кто-то, наверно, думает, что пароль будут подбирать, сидя за клавиатурой руками, и для сверхслабых паролей эти таймауты от чего-то спасут. Стыд полный.

При установке системы, когда ещё не заведено куча пользователей с паролями в /etc/login.defs можно поставить ENCRYPT_METHOD SHA512 вместо DES и подобрать увеличение параметра SHA_CRYPT_MAX_ROUNDS. Это не спасёт от сверхслабых паролей, но усложнит подбор при чтении и похищении таблицы shadow-паролей.

Гость (04/09/2013 05:53)   

OK, спасибо. Первый ответ там, очевидно, левый, т.к. опция passwdTimeout имеет дефолт в 30 сек:

passwdTimeout (class Time)
If the screen is locked, then this is how many seconds the password dialog box should be left on the screen before giving up (default 30 seconds.) This should not be too large: the X server is grabbed for the duration that the password dialog box is up (for security purposes) and leaving the server grabbed for too long can cause problems.

Это, видимо, то, на сколько времени остаётся диалог после последней активности (нажали какую-то клавишу), если мы при этом не логинимся.


А если уже заведено, то никак? Или оно будет влиять только на новосоздаваемых прользователей? А тогда старые пользователи в базе shadow не поотваливаются, гетерогенность в ней предусмотрена? В Wheezy ENCRYPT_METHOD SHA512 стоит по умолчанию.

Помимо SHA_CRYPT_MAX_ROUNDS есть SHA_CRYPT_MIN_ROUNDS. Интересно, зачем оно? Разве число раундов при создании пользователя не фиксировано?


А каким концом там стоял DES? Это было шифрование, а не хэшифрование? Любой DES взламывается. Значит ли это, что имея shadow противник с нужными расурсами может восстановить все до одного пароля за ограниченное время независимо от их сложности?
Гость (04/09/2013 06:45)   

Спасибо. Это сменило первую строку в приглашении, но перед login всё ещё пишется HOSTNAME. Как его убрать?

Поискал информацию про смену курсора. Неплохой[link52] мануал, но всё настолько по-ручному, что ужас берёт. Прописав таинственные escape в конфиг шелла, получаю нужный курсор после логина, который более не меняется, даже если разлогинюсь в данном текстовом tty-терминале. Но вот как сделать так, чтобы курсор был правильный (немерцающий и не нозящий full block) сразу после загрузки системы в приглашении залогиниться? Т.е. на системном уровне это как-то меняется? И разве в Linux всегда был мерцающий underscore? Мне кажется, в классических системах всегда был немерцающий full block.
— ressa (04/09/2013 09:57)   
(и затроянивание дистрибутивов Linux заодно)

unknown, поясни пожалуйста, как это может коснуться дистрибутивов с таким сильным сообществом, как у Debian или Gentoo, когда каждый принятый пакет проверяется под тремя лупами? Или я ошибаюсь?
Мне кажется, что это уже есть во всяких Ubuntu и т.д., но как по мне – маловероятно, что это доберется до Debian.
А TAILS и ему подобным я изначально не доверяю.
Проясни, чтобы я не питал иллюзий по этому поводу.
Спасибо.
— unknown (04/09/2013 12:30, исправлен 04/09/2013 12:32)   

Ключи для подписей бинарников в бункере автоматчики охраняют? Команда тора делала виндовые сборки на виртуалке и пыталась проверить, не было ли занесено что-то в бинарники, но по причине того, что детерминированной компиляции нет, так ни к чему и не пришла. Возможно та виртуалка была на VPS-хостинге, подозреваемом во взломе.


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


Как скоро кто-то заметит и предъявит два разных бинарника, подписанных одним ключом?

— ressa (04/09/2013 13:40)   
unknown
Вполне себе устрашающе..
Какой выход? Я не готов учить яп и перерывать исходники Debian, но мне нужна уверенность в безопасности.
А проверять целостность кода и изменений? А сделать сайт в i2p, где выкладывать контрольные суммы iso-сборок?
— тестерТьюринга (04/09/2013 14:05)   

Уже проверяют.[link53] Debian – не худший вариант ;)
Гость (04/09/2013 14:11)   

Это не так. Прогресс есть.
Гость (05/09/2013 00:05)   

ЯП и перерытие исходников не поможет, не получится у вас стать умнее и мудрее, чем всё АНБ, вместе взятое. Безопасность бывает только относительная — привыкайте к этому. Планку можно повышать, но всегда найдётся гипотетический (или не совсем) противник, который через неё перепрыгнет.


Контрольные суммы бинарей? А вдруг подмена произошла ещё на этапе сборки разработчиком? Достаточно взломать ту систему, где происходит сборка, и весь мир получит «правильное» обновление. Unknown именно это имел в виду. Детерминированная сборка должна создать ограниченную контрмеру против такой атаки, потому что тогда атакующему понадобится взломать все системы, где происходит компиляция атакуемого софта. Впрочем, если машина полностью скомпрометирована, разработчик, возможно, даже не сможет понять, совпадает ли его пакет с чужими пакетами, т.к. не будет доверенного софта, которым можно проверить хэши и PGP-подписи. Короче, от целевых атак, где будут учтены все нюансы, детерминированная сборка может оказаться бессильной.
Гость (05/09/2013 00:19)   

На фоне этой дискуссии новыми красками играют некоторые BSD-системы, где единственный нормальный способ апдейта и поддержки софта — сорсы. Соответственно, разработчики не ломают себе голову (но её ломают пользователи) над детерминированными сборками, а просто говорят «доверие — только к исходникам, компиляйте сами». К исходникам присовокупляется множество опций по конфигурированию, можно уже на этапе make задать, с какими зависимостями собирать пакет, а что отключить. В системах же, где портов нет, приходится есть то, что дадут.
— unknown (05/09/2013 10:21)   
2 /comment69849[link54]:
А каким концом там стоял DES? Это было шифрование, а не хэшифрование? Любой DES взламывается. Значит ли это, что имея shadow противник с нужными расурсами может восстановить все до одного пароля за ограниченное время независимо от их сложности?

Это ж с древних времён Юникса так повелось, какие там хэши, какая криптография вообще? Сначала там использовался алгоритм Энигма. Затем DES в режиме самопального хэша, где вывод ксорился сам с собой гармошкой. Обратимости вроде как нет и специфической уязвимости, в отличие от Энигмы вроде как не нашли.
— SATtva (06/09/2013 08:58)   
/etc/issue

Спасибо. Это сменило первую строку в приглашении, но перед login всё ещё пишется HOSTNAME. Как его убрать?

Можно удалить hostname в /etc/conf.d/hostname (или где он там в Дебиане). Как убрать хоста именно из промпта я не в курсе.

А если уже заведено, то никак? Или оно будет влиять только на новосоздаваемых прользователей? А тогда старые пользователи в базе shadow не поотваливаются, гетерогенность в ней предусмотрена? В Wheezy ENCRYPT_METHOD SHA512 стоит по умолчанию.

Поменяйте пароль через passwd, он прохэшируется по-новому. Тип хэширования задаётся для в shadow индивидуально для каждого пользователя.
Гость (08/09/2013 04:50)   

/etc/hostname. Если сделать этот файл пустым, система описывает себя как amnesia, что подставляется вместо hostname (хотя, может, и не во всех местах). Если просто удалить переименовать, то не знаю, можно попробовать, хотя не уверен, что это уберёт hostname перед login.
Гость (13/09/2013 07:21)   
PGPru-таки превзошло википедию: анонимный коммент[link55] добавлен пруфом к странице[link56]. Там же обнаружилась ссылка и на другой не менее интересный документ: Ubuntu spyware[link57]. И после этого ещё кто-то спрашивает: «ставить Ubuntu — это хорошо или плохо?» :-)
Гость (13/09/2013 09:28)   
Да вообще нужно создавать тенденцию по сборке дистрибутивов для себя, и желательно из исходников. У самого руки не доходят до Генты, да и времени жалко, но понимаю, что это необходимо. Всякие поделки в виде Calculate Linux – это не то, лучше чистую Gentoo, с Hardened профилем. Надеюсь, что в скором будущем это будет доступно и менее продвинутым пользователем, при этом не тратя несколько ночей на красноглазие. Сам же пока остаюсь на Debian.
Гость (13/09/2013 09:44)   
Помимо генты есть LFS — ещё более универсальная штука. :)
— ressa (13/09/2013 11:40)   
лучше чистую Gentoo, с Hardened профилем

Кури портянку постов здешних по поводу сборки Libetre Linux, там как раз Hardened, да и расписали довольно подробно плюсы и минусы. А так – без Gentoo HandBook не обойтись. Имхо, т.к. сам не гентушник.
Помимо генты есть LFS — ещё более универсальная штука. :)

Издеваешься над ним?))
— SATtva (13/09/2013 18:39)   
Кури портянку постов здешних по поводу сборки Libetre Linux, там как раз Hardened

Лучше не надо — сложится превратное представление о том, как оно ставится на самом деле. Надо именно хэндбук читать.
Гость (18/09/2013 23:20)   
In the course of a thread about the size of browser windows posing a fingerprinting threat[link58], harmony discovered that users of Ubuntu’s Unity desktop should disable the “automaximize” behavior[link59], as it can override one of Tor Browser’s anti-fingerprinting measures. ©[link60]

Ещё один камень в окно Ubuntu'ы.
— SATtva (19/09/2013 08:06)   
Гость, Вы зря тотально выравниваете курсив в цитатах. Во-первых, сильно выделяетесь в форуме, во-вторых, при смене оформления сайта далеко не факт, что цитаты останутся курсивом, так что если делаете это для читабельности, то именно Ваши посты потом читать станет труднее.
Гость (19/09/2013 15:31)   
Такое форматирование неявно требуется, если придерживаться спинорных стандартов[link61] на публикацию комментариев. Принудительный тотальный курсив (кстати, предлагаю вам об этом подумать при разработке нового движка) не апскейлится на правила написания формул.

Как, наверное, все знают, переменные в формулах по конвенции пишутся курсивом, а, к примеру, лейблы и многосимвольные названия функций — прямым шрифтом. Итак, если в цитате содержится формула, она превратится в курсив вся (что неправильно). В грамотных движках (LaTeX) предусмотрена экранировка формул. Любая inline-формула окружается долларами (типа $IBC(C)$), где тип шрифта внутри долларов регулируется другими законами, чем в тексте: по умолчанию там всё будет курсивом кроме того, что выделено явно, как некурсив, через \mathrm. Также, никогда не делается курсив для спецсимволов типа скобок, т.е. это тоже было бы неправильным. Корректная формула выглядит в LaTeX как-то так: $\mathrm{IBC}(C)$. При этом всё равно, наклонный шрифт внешнего текста, жирный, готический или ещё какой-нибудь — на формулу это никак не сказывается.

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

Другой момент — выделение. Если у меня в тексте я что-то выделил курсивом, оно или исчезает в цитате (если убрал руками), или превращается в прямой шрифт (что странно смотрится). В LaTeX такого нет: двойное применение курсива не убивает курсив. Короче говоря, основная идея в том, что замена прямого шрифта на наклонный убивает чёткий параллелизм между маркировками обычного текста и цитируемого, а если я руками с концов уберу курсив, то внутри я могу всё маркировать так же, как и ранее (ставя наколонный шрифт только для имён переменных и ничего более).
— SATtva (19/09/2013 17:42)   
Цитаты теперь отображаются обычным шрифтом, курсив обрабатывается как во всём остальном тексте.
Гость (19/09/2013 18:27)   
Спасибо! Думаю, это упростит оформление формул.
Гость (10/10/2013 13:27)   
чистим деанонимайзеры в ubuntu:
sudo apt-get remove zeitgeist zeitgeist-core zeitgeist-datahub python-zeitgeist rhythmbox-plugin-zeitgeist geoclue geoclue-ubuntu-geoip geoip-database whoopsie

подробнее тут:
http://ubuntuforums.org/showthread.php?t=2000108
Гость (13/10/2013 00:16)   
При удалении geoclue из ubuntu 12.04 удаляются и часы. пробовал ставить их отдельно sudo apt-get install indicator-datetime --no-install-recommends но все равно он тянет за собой geoclue. Кто знает нормальные часы без слежки?
Гость (13/10/2013 11:14)   
А вот в kubuntu GeoClue нет.
Гость (13/10/2013 11:43)   
Альтернатива удалению zeitgeist
http://ubuntunews.ru/news/acti.....s-you-blacklist.html[link62]
Позволяет управлять zeitgeist и отключать логи.
Гость (13/10/2013 11:51)   
В ubuntu можно отключить zeitgeist. А в kubuntu похоже только удалить или ставить программы из сторонних репозиториев.
Гость (13/10/2013 13:35)   
По поводу деанонимайзеров – скажите, а в Linux Mint они выпилины? Кстати, кто какого мнения о Mint? Только объективно, а не в стиле "Это для домохозяек, только красноглазие, только Gentoo и dzen way". Мой выбор пал на Минт, потому, что все из коробки работает и Cinnamon хорош, как ни крути. Дайте свое мнение. Спасибо.
Гость (13/10/2013 15:16)   
Запустите менеджер пакетов, наберите название пакета и посмотрите установлен он или нет. В mint насколько я понимаю включены пакеты с закрытыми исходниками. Правда они вызывают доверие своей репутацией иначе практически все железо с закрытыми прошивками можно назвать шпионским.
Могут быть также включены специфические сборщики статистики для минт и Cinnamon, об этом лучше на их форуме спросить.
Гость (13/10/2013 17:08)   
Спасибо, ну а в целом, как к системе – претензий нет? А то может я что-то упустил в плане косяков как в убунте – шпионское по и тд? Хотел попробовать Debian Edition, но не нашел никаких отзывов, а так я думаю, что от убунты они уйдут скоро и будут чисто на дебиане базироваться.
Гость (26/10/2013 20:01)   

удалить все не нужные пакеты
Гость (26/10/2013 20:53)   
топик поднят на поверхность...
так где список следящего ПО? все 10 страниц об этом?
что нужно удалять/не ставить в debian?
Гость (26/10/2013 22:13)   

tl;dr?
Гость (26/10/2013 22:29)   
tl;dr?
абвгд?
Гость (27/10/2013 01:22)   
Гость (26/10/2013 22:29), ты тупой[link63] или троллишь?
Гость (31/10/2013 04:43)   
Using the Tor Browser Bundle is still proving to be tricky for many Ubuntu users who upgraded from Ubuntu 13.04 to 13.10. The commonly reported error is that users cannot enter text in any of the browser’s text fields, including the URL and search bars. So far this problem appears to be resolved by removing ibus with apt-get before running the Tor Browser. Users who need ibus can try running `export GTK_IM_MODULE=xim`, as documented in Trac ticket #9353.

Tor скоро вообще[link64] на убунте работать не будет. ☻ Анонимный софт не совместим с осью, разрабатываемой для слежки.
— SATtva (09/11/2013 06:59)   
Canonical передаёт горячий привет любителям приватности:[link65]

Компания обратилась к администрации сайта fixubuntu.com с требованием об удалении любых упоминаний названия дистрибутива.
<...>
Примечательно, что портал, к которому обращены требования, изначально был создан для распространения инструкции по обеспечению приватности в дистрибутиве и является примером ресурсов, отстаивающих интересы пользователей Ubuntu.
Гость (09/11/2013 07:32)   
Там история похожая на Tor против TorFone, нет?
PGP Corp ещё не предъявляла претензии pgpru.com? :)
— SATtva (09/11/2013 08:34)   
Там история похожая на Tor против TorFone, нет?

Ага, формально, основания те же.

PGP Corp ещё не предъявляла претензии pgpru.com? :)

Теперь уже Symantec. Пока нет, но, если что, подключим личные связи[link66]. :P
Гость (09/11/2013 09:50)   

Административный ресурс[link67]. Тоже о нём подумал. :-)

шифрования с открытым ключом у нас нет как секса в СССР
Вот так Калласу и передайте.
Хорошо посмеялсо. ☻n
Гость (12/01/2014 03:18)   

Как тут не вспомнить про

В[link68]прочем, чем Microsoft лучше? Windows error messages let NSA spy on people: Crash reports are a 'neat way' of gaining access to machines, claims report.[link69]

P.S. Сделал
# apt-get remove dbus
Одним постоянно запущенным процессом стало меньше, как и одной постоянно создаваемой директорией ~/.dbus. Пока полёт нормальный.

Посмотрел через
# dpkg-query -l |grep -i freedesktop
на список разной грязи от тех, кто собирал соответствующие пакеты. Хотя выводимый список пакетов мне, понятное дело, не нужен, они установлены зависимостями ко всяким латехам, evince'ам, imagemagick'ам и прочим уже нужным вещам. А почему у них такие зависимости? Потому что мейнетейнеры мудаки так решили. Да, это не порты, где можно при сборке пакета отключить зависимость то того, что не нужно, чтобы получить готовый пакет без довесков.
Гость (16/01/2014 21:56)   
/comment67917[link70]:
$ echo 'set viminfo+=n/tmp/.$USER.viminfo' >> ~/.vimrc
Можно проще[link71], если удобство с запоминанием истории вводимых команд некритично:
set viminfo="NONE"
Гость (12/02/2014 01:32)   
Вот, свершилось..Только что окончательно в Дебиан systemd выбрали. Этож куда бля мир катиться?? А в багтрекер в системд никто не заглядывал? Всем ориентир на Саттву, всем ориентир на Генту, иного выхода нет..
Гость (12/02/2014 02:36)   

Самое время вспомнить про существование систем[link72], не так подверженных[link73] маркетинговым причудам и сиюминутным трендам. Базовую систему они давно подписывают[link74], скоро подписи для пакетов добавят[link75] (поди не зря они собственное PGP[link76] пилят).
Гость (12/02/2014 08:41)   
а как с софтом у BSD?
Гость (12/02/2014 10:15)   
Открытый софт работает одинаково хорошо на любой POSIX-совместимой системе. В крайнем случае, его можно портировать с минимальными усилиями. Помимо этого, ядро BSD поддерживает нативное исполнение Linux'овых бинарей. Про TBB не в курсе, но должно решаться как-то просто.

В портах содержится много линуксовых библиотек, позволяющих запускать также проприеатрный Linux-софт (типа MatLab'а и Mathematica'и) нативно и без потери производительности. В скайпе не будет, правда, работать звук, т.к. эмуляции ALSA в ядре NetBSD всё же нет (как во FreeBSD — не в курсе), а старые версии скайпа, которые работали с OSS, больше не поддерживаются самой сетью. Линуксовые flash-плагины от Adobe, если кому надо, тоже запускаются. Про Google Earth не в курсе.
— ressa (12/02/2014 10:33)   
Лично мне почему-то кажется, что для десктопа пока OpenBSD не пойдет, из за systemd терять доверие к Debian – не совсем корректно, т.к. скиллов в компрометации дистра это не прибавляет, да, холливарят, что глючный дико инициализатор, но я рад, что не прогнулись под Canonical Ltd., с их Upstart, где за использование нужно было бы отправлять 98% допиливаний космонавту. Я бы посоветовал конечно Gentoo, хотя сам все никак не доберусь до нее, времени жалко)) Хотя, если кто-то из здесь сидящих использует или использовал OpenBSD на десктопе – был бы признателен за развернутое мнение.
Гость (12/02/2014 11:28)   

Коммента выше[link77] и старого холивара[link78] вам недостаточно?
— unknown (12/02/2014 11:42)   
[холивар]
Если и правду пишут про фичи systemd, то он всё равно ужасен. Когда в один комбайн запихивают инициализацию со своими форматами; сислог с бинарным логом, который даже не грепнуть, а только смотреть спецутилитами; генератор QR-кодов ошибок; крон; встроенный веб-сервер и вроде это ещё гвоздями прибивают к D-bus и чему-то там ещё — ждите вендор-локинга пусть и на открытом софте, только не от каноникла, а от Рэд Хат. Ну и массу уязвимостей by-design впридачу.
[/холивар]
— ressa (12/02/2014 12:31)   
Коммента выше и старого холивара вам недостаточно?

В том то и дело, что это холивары а не сухие факты об удобстве использования на десктопе.
unknown
Не, я уповаю лишь на то, что дебианщики выпилят ненужное и доведут до ума, ну как-то верю, что на говно не сольется этот дистр.
— unknown (12/02/2014 12:48)   
Из systemd ничего вроде как реально выпилить нельзя, в этом его подстава. Он как нарочно спроектирован на возможность нечаянной слежки утечки данных о системе, трудноотлавливаемые баги, трудность настройки пользователем под свои задачи. Надеяться можно разве что на то, что Debian будет долгое время поддерживать старые системы инициализации в кач-ве альтернативы.
— ressa (12/02/2014 13:09)   
Оппа, этого я не знал.. Ну в таком случае, мне кажется, что еще можно уповать на само сообщество Debian, т.к. оно то как раз не из любителей состоит, и вопросы эти будут подниматься. Будет время – погуглю на эту тему.
— sentaus (12/02/2014 13:44)   
и вроде это ещё гвоздями прибивают к D-bus и чему-то там ещё

[холивар]
Затащат DBUS в ядро и прибьют к нему.
[/холивар]
— unknown (12/02/2014 14:19)   
[холивар]
Из Linux сделают энтерпрайзный виндоподобный блоб.
[/холивар]
Гость (12/02/2014 21:58)   
[холивар]
Затащат DBUS в ядро и прибьют к нему.
[/холивар]

А ведь и правда[link79]
Гость (13/02/2014 07:28)   

У каждого свои понятия о десктопе и удобстве. Как вариант: то, что для меня удобный десктоп, для вас смерть, или наоборот.


Linux за overengineering ругали ещё 10 лет назад. Рано или поздно любой дистр общего назначения, который для домохозяек, скатится в говно, выживут только конструкторы, в которых каждый сам решает как ему ставить, что и зачем.
Гость (16/02/2014 01:48)   

С точки зрения корпоративщиков и коммерсов такой продукт рентабельнее. Многофункциональный продукт тяжелее разрабатывать и отлаживать, у него слишком много степеней свободы. Когда пользователю доступна всего пара кнопок, набор вариантов, при которых что-то может пойти не так, существенно уменьшается. Соответственно, тенденция в том, чтобы добиться того, чтобы все пользовались одним и тем же простым интерфейсом, причём именно так, как это коммерсы спроектировали.
Гость (09/03/2014 04:43)   
При проигрывании некоторых файлов mplayer пишет
Selected program contains no audio or video streams!
Failed to increment property 'switch_program' by 0.000000.
ANS_ERROR=ERROR
Не может ли это быть знаком какого-то троянского функционала в видеофайлах? Гуглил, но не нашёл ничего толкового.
Гость (09/03/2014 13:47)   
выживут только конструкторы
таки и конструкторы должны быть со сложностью "для домохозяек", иначе не будут популярными.
китайцы пошли уже по такому принципу в отношении телефонов.

некоторых файлов
некоторые файлы с разных источников? их что-то объединяет?
— unknown (09/03/2014 17:00)   

mplayer очень дыряв по стилю кодинга, в нём было множество дырок на исполнение произвольного кода. Если бы он был также гарантированно популярен, как Firefox, то, возможно, под него создавали бы и трояны со специфическими эксплойтами.
Гость (10/03/2014 04:46)   

Не знаю, нет определённой статистики. Источники вроде разные, но на 100% не поручусь.


По-моему, почти все проигрыватели под Linux — mplayer и его производные. Ну, vlc ещё относительно популярен.
— unknown (10/03/2014 16:10)   

Firefox, который был взят для сравнения — кроссплатформенный. А эксплойты в нём использовались в основном под винду. Mplayer, вроде бы тоже кроссплатформенный, но рассчитывать, что массовый пользователь будет открывать файл именно им, не следует. Эксплойты в нём могут быть использованы скорее только как узко целенаправленные. И возможно, массово распространяемые специально сформированные медиафайлы рассчитаны на уязвимости в других плэйерах и операционках.
— castl (13/03/2014 21:09)   
unknown, как Вы решаете для себя проблему с systemd в Debian[link80]?
Гость (14/03/2014 06:49)   
Сидит, поди, на том релизе, в котором systemd ещё не было.
— castl (14/03/2014 22:43)   
Не думаю, что предыдущий релиз – это правильно. Спрашиваю, потому что хочу попробовать этот дистр и, возможно, выбрать как основной. Но от упомянутого поста осталось впечатление, что пользователь должен при установке каким-то образом выбирать старую систему инициализации как альтернативу новой. Может быть специально указать необходимые парметры, которых не знаю, или ставить только определенную сборку, как в Ubuntu.
— unknown (15/03/2014 11:17, исправлен 15/03/2014 11:18)   

В текущих стабильных релизах systemd пока ещё по умолчанию не ставится.



Приучайтесь ставить все дистры в режиме "expert-install" в минимальной инсталляции без иксов, с доустановкой всех нужных вам пакетов из системы далее вручную, чтобы не было неожиданных сюрпризов по поводу того, что что-то выбрали за вас по умолчанию. И перед выходом каждого релиза читайте мануал, где подробно описано, что внедрили нового и как ставить. Желательно читайте на английском, а не в переводе. Хотя переводы там вроде как нормальные.

Гость (17/03/2014 21:59)   
Браузер iceweasel грохнулся от чего-то в кору (были плагины и расширения, а также флэш). После коры обнаружилась директория /tmp/plugtmp (вроде бы в норме у меня она там не создаётся, но не поручусь за это), в которой был файл plugin-crossdomain.xml с содержимым
<?xml version="1.0"?>
<cross-domain-policy>
  <allow-access-from domain="*" />
</cross-domain-policy>
Погуглил, ничего такого не нашёл, хотя пишут, что на винде в plugtmp любят всякую вирусню засовывать. Ещё на одной странице был намёк, что это может быть вызвано автоматическим обновлением флэша. Кто-нибудь знаком с внутренностями браузера, чтоб прокомментировать?
Гость (17/03/2014 23:30)   
Вопрос не по теме, но и создавать новую наверно не стоит. Кто знает что за релиз: Lilblue Linux (http://opensource.dyc.edu/node/350)
Гость (18/03/2014 18:04)   
Там же дана ссылка[link81] + в самом тексте есть объяснения. Очередной дистр на основе генты. Дистрибутив дистрибутива Gentoo Linux.
Гость (19/03/2014 05:46)   

Тема vim[link82]'а, пост о п-сах.


Суть: файл ~/.vim/.netrwhist, в который утекают данные. Про emacs говорят, что это хорошая ОС, в которой нет редактора. Видимо, vim решил восполнить этот пробел[link83], добавив к редактору функции ОС. Зачем это всё тащить в редактор? Вопрос риторический. Интересное:

T[link84]here's no built-in way to prevent .netrwhist generation at the current time. However, you could delete the file immediately after it was generated, I suppose: (untested) with the following Voodoo cult:
au VimLeave * if filereadable("[path here]/.netrwhist")|call delete("[path here]/.netrwhist")|endif

n[link85]etrw_dirhistmax indicates the maximum number of modified directories it stores in the history file

set netrw_dirhistmax=0 в ~/.vimrc закроет утечку?

По ссылкам [1][link86], [2][link87], [3][link88] обсуждается правка сорсов и особо извращённый культ вуду с переменной runtimepath. Что куда прописать, чтобы поменять местоположение директории ~/.vim, так и не понял. Хуже то, что я не совсем понимаю, при каких условиях она создаётся и туда что-то пишется (я не хожу на удалённые сервера, максимум — выполняю скрипты на других файловых системах, но не удаётся создать тестовый пример).

На ум приходят ещё 4 хака:
  1. В конфиге шелла перед стартом шелла проверять, есть ли нужная директория в /tmp, и, если нет, то создавать её и директорию vim в ней, а домашюю ~/.vim сделать симлинком на неё.
  2. Создать ~/.vim и снять у неё права на запись, в надежде, что vim не настолько наглый, чтобы писать в какое-то третье место.
  3. Сделать алиас на vim с изменённым $HOME. В этом случае оно почему-то конфликтует с опцией[link70] для viminfo:
    $ HOME=/tmp vim -u /home/USERNAME/.vimrc /path/to/FILE
    Error detected while processing /home/USERNAME/.vimrc:
    line   XX:
    E528: Must specify a ' value: viminfo+=n/tmp/.viminfo-$USER
    Press ENTER or type command to continue
  4. Создавать динамически директорию в /tmp как в п.1, а опцию с viminfo убрать из конфига вообще, т.к. она должна будет сразу создаваться уже там, по новому адресу. Не тестировал.
Гость (19/03/2014 06:01)   

Ошибка синтаксиса. Наверно, должно быть g:netrw_dirhistmax=0 в конфиге. На такой вариант, по крайней мере, ругани нет, хотя, наверное, нет смысла этим заморачиваться — люди целенаправленно работают[link89] над увеличением числа утечек:

NetRW provides g:netrw_dirhistmax as a way to prevent creating the .netrwhist and .netrwbook files. However, even when this variable is <=0 NetRW will create the home directory to store these files. The attached patch changes this to only create the home directory if the files are also going to be created.

Что с патчем, что без создаваться она будет всё равно при каких-то обстоятельствах.
— unknown (20/03/2014 10:46)   
Hiding processes from other users[link90]. В новых ядрах можно включить невидимость процессов для других пользователей: процесс будет виден только пользователю, который его запустил и руту. В новых версиях Debian будет сделано по умолчанию.

Раньше что-то подобное было только в SELinux и GRSecurity.
Гость (20/03/2014 15:40)   
Да, в ядре Linux наметился потрясающий успех. В ядре FreeBSD эта «фича» была ещё 10 лет назад — достаточно было в конфиге ядра одну строчку раскомментировать. И никакие сторонние патчи к ядру были не нужны. В OpenBSD одно время были сторонние любительские патчи для реализации этой фичи, но поддерживать их было некому, поэтому по факту там этого штатно вроде как нет до сих пор. В NetBSD не было даже таких сторонних патчей. И вообще, ОС — это точка доверия между пользователями системы, а не точка конфронтации между ними — философия такая. Кому не нравится, должны использовать виртуалки.
— unknown (20/03/2014 16:08)   

А здесь ядро перекомпилять не надо. Достаточно изменить параметр в /proc на лету из под рута. Иди внести параметр монтирования /proc в /etc/fstab.


Слишком сильное утверждение, легко сводимое к абсурду. Так можно сказать, что и права не нужны и ACL. Пусть тогда всем будут прописаны беспарольные права рута через sudo. В том числе для серверов, торчащих наружу в сеть. А кому не нравится — пусть используют виртуалки.
Гость (20/03/2014 18:13)   

Но ведь разработчики архитектуры UNIX именно так и думали, иначе вы ничем не объясните те факты, что
  1. Список процессов каждого юзера виден всем.
  2. Права на создаваемые файлы и директории по умолчанию таковы, что дают доступ на чтение вообще всем.
  3. Каждый пользователь имеет широкие права доступа к системным ресурсам: просмотру сетевых настроек, логов ядра, списку пользователей и групп, логам последних логинов пользователей и длительности их сессий... список можно продолжать бесконечно.
  4. По умолчанию нет никаких квот на системные ресурсы: память, процессор, дисковое пространство, поэтому повесить намертво систему — нефиг делать[link91]. Идут года, но ничего не меняется: каждое поколение вновь открывает для себя эти форк-бомбы[link92]. И даже самые красноглазые, которые долго игрались с ulimit, прекрасно вырубаются специально написанными эффективными форк-бомбами[link93].
Эти пункты логично объясняются тем, что «все работают над одним общим делом», и «никто не будет друг другу намеренно вредить», «вредителю просто отрежут доступ к серверу». Сервера и истино многопользовательские системы, где «никому доверять нельзя» появились намного позже, чем создавался UNIX, и они до сих пор страдают от изъянов исходной архитектуры безопасности. Впрочем, о чём вообще может идти речь, если изначально там был telnet, а не ssh, т.е. все пароли передавались открытым текстом? Попытка прикрутить безопасность задним числом приводит к тому, что имеем.


Общий принцип на серверах — «доступ кому попало не давать». По сути на сервере остаётся только административный персонал, у которого и так рут есть. По этой же причине исходную идеологию «давайте всем сервисам, требующим аккаунты, будем создавать аккаунты системных пользователей» стали заменять на другую, где системные юзеры создаются сторонним приложением, и только оно управляет доступом. Ещё давно это было сделано для дырявой SAMBA'ы, а сейчас, наверное, вообще почти для всего так.

На десктопах мы видим тот же результат, но по другим причинам: юзер сам себе типа не враг, поэтому по умолчанию sudo вообще пароля на рута не требует. Обычный ПК — не «система для безопасной обработки данных», «нормальному юзеру скрывать нечего», поэтому общий крен сейчас как раз в сторону демонтирования даже тех систем защиты, которые в исходном UNIX'е были.


Похоже, топик начал оправдывать ваши прогнозы.
Гость (05/04/2014 04:38)   

В OpenBSD, в предстоящем релизе (1-ое мая):

R[link97]eleases and packages are now cryptographically signed with the signify(1)[link98] utility.
  • The installer will verify all sets before installing.
  • Installing without verification works, but is discouraged.
  • Users are advised to verify the installer (bsd.rd, install55.iso, etc.) ahead of time using the signify(1)[link98] tool if available.
  • pkg_add(1)[link99] now trusts signed packages only by default.

Правда, по ссылкам на мануалы написано туманно. На всех ли пакетах будет подпись? Или они делают дефолтной сверку только тогда, когда файл с подписью существует, а существовать он будет не для всех пакетов? И как обстоят дела с подписью портов?

Security improvements:
  • The arc4random(3)[link100] functions now use the ChaCha20 cipher.
  • The kernel random number system is initially seeded by the bootloader, providing better random very early.

Шифры Бернштейна становятся всё популярнее.

New/changed features:
  • ssh(1)[link101], sshd(8)[link102]: Add support for key exchange using elliptic-curve Diffie Hellman in Daniel Bernstein's Curve25519. This key exchange method is the default when both the client and server support it.
  • ssh(1)[link101], sshd(8)[link102]: Add support for ED25519 as a public key type. ED25519 is a elliptic curve signature scheme that offers better security than ECDSA and DSA and good performance. It may be used for both user and host keys.
  • Add a new private key format that uses a bcrypt KDF to better protect keys at rest. This format is used unconditionally for ED25519 keys, but may be requested when generating or saving existing keys of other types via the -o ssh-keygen(1)[link103] option. We intend to make the new format the default in the near future. Details of the new format are in the PROTOCOL.key file.
  • ssh(1)[link101], sshd(8)[link102]: Add a new transport cipher "chacha20-poly1305@openssh.com" that combines Daniel Bernstein's ChaCha20 stream cipher and Poly1305 MAC to build an authenticated encryption mode. Details are in the PROTOCOL.chacha20poly1305 file.
  • ssh(1)[link101], sshd(8)[link102]: Refuse RSA keys from old proprietary clients and servers that use the obsolete RSA+MD5 signature scheme. It will still be possible to connect with these clients/servers but only DSA keys will be accepted, and OpenSSH will refuse connection entirely in a future release.
  • ssh(1)[link101], sshd(8)[link102]: Refuse old proprietary clients and servers that use a weaker key exchange hash calculation.
  • ssh(1)[link101]: Increase the size of the Diffie-Hellman groups requested for each symmetric key size. New values from NIST Special Publication 800-57 with the upper limit specified by RFC 4419.
  • ssh(1)[link101], ssh-agent(1)[link104]: Support PKCS#11 tokens that only provide X.509 certs instead of raw public keys. (requested as bz#1908)

Только ECC, только Чача, только Бернштейн, только OpenBSD!

Выделение копирует то, которое в оригинале по ссылке.
— sentaus (05/04/2014 09:58)   
Шифры Бернштейна становятся всё популярнее.

В этих ваших мобильных хромах и всём, что на них основано, они уже основные шифры. У CipherSuites с ними приоритеты поставлены выше, чем у AES-GCM.
Гость (07/04/2014 10:00)   
/etc/lvm/archive и /etc/lvm/backup содержат полную историю: какие диски подключались к системе, как назывались dm-устройства при монтировании LUKS, какие были идентификаторы всех файловых систем. Форензики ссут кипятком от радости.
— unknown (07/04/2014 10:36)   
Поэтому получение хотя бы одного пароля к полнодисковому шифрованию означает крах всей системы. Можно только не выдать главный пароль вообще. Играть в прятки и отрицалово с частичной выдачей паролей и сокрытие информации, разделённой по криптоконтейнерам — бесполезно.
— БеняОсьминог (07/04/2014 12:03)   
Скажите, ну и как получается тогда скрывать данные, если без выдумки – в любой момент могут нагрянуть на работу господа в погонах? Ну да, полное шифрование. Один пароль. Но выдать его могут заставить? Поэтому лучше использовать скрытые ОСи, правильно? Но снова рекурсия – скрытую ось обнаружат, найдя файл, с псевдослучайными данными, размером в несколько гигабайт. Что в таком случае делать? Использовать удаленную ОСь и налаживать РДП через Tor?
Гость (07/04/2014 15:09)   

Помимо отрицания, есть и другие модели угрозы — та же cold boot. Как раз есть смысл разделять информацию по разным крипторазделам, чтобы в оперативной памяти не было ключей на те разделы на момент атаки, которые не были жизненно нужны на тот момент.


Да. Ну, или хотя бы LiveCD + бессигнатурное шифрование.


Не обнаружат. Не будет там файлов. И отдельных разделов тоже.


Помимо ссылки SATtva'ы читайте последнее[link106] обсуждение[link107] вопроса[link108].
— unknown (07/04/2014 15:45)   

cryptsetup luksClose именно этим и занимается — вайпит ключи из памяти при закрытии разделов, против cold boot должно помогать.
Гость (07/04/2014 18:35)   
Когда у вас данные разнесены по нескольким разделам, чтобы отмонтировать раздел, вы делаете ему luksClose. Всё, после этого отмонтированные данные противнику недоступны, даже если будут внезапные маски-шоу. Если же у вас все данные на одном LUKS-разделе, сделать luksClose равносильно выключению компьютера. Т.е. у вас будут две крайности: «подмонтировано всё» или «подмонтировано ничего», в то время как можно достичь куда большей гибкости... к чему я и клоню.
Гость (20/05/2014 13:49, исправлен 20/05/2014 14:48)   

Вообще было бы здорово систематизировать и вышесказанное, и сказанное в других местах про Debian. Факт, что здесь есть кому и чем дополнить хорошие тексты по теме (1[link110] и 2[link111]). Имело бы большую практическую ценность.

Гость (20/05/2014 18:42)   

Если б ещё на это был воз времени... Когда-нибудь надо будет сделать.
Гость (20/05/2014 21:20)   


Да в общих чертах хотя бы: если плясать от того, что по ссылкам написано (там всё хорошо написано), то достаточно перечислить что сделали в процессе, что сделали после процесса. Плюс и минус. А добрые люди посмотрят и дополнят.

На всякий случай буду этого ждать :).
Гость (23/05/2014 20:14)   

В конце этого комментария[link112] есть про разбиение дисков и их шифрование (как раз в общих чертах).

И ещё: порядок прохождения пунктов главного меню не всегда строг, но, чтоб не ошибаться, лучше делать попорядку. Если где-то в пункте n вы сделали ошибку (или после пункта n поняли, что надо переделать всё, начиная с пункта n-m), то не всегда можно вернуться выше по меню и повторить действия пунктов, которые хочется, поэтому часто приходится перезагружаться и начинать проходить весь квест снова с нуля. Когда детально не знаете инсталлятор, на это может уйти много времени.

+ Надёргайте советы/обсуждения, которые были на предыдущих страницах этого топика.
Гость (30/05/2014 09:21)   
Спасибо. Судя по всему, вы автор убунторазоблачительных постов в начале этого топика. А что вы снесли в Debian? Что вам там показалось инвазивным и потенциально опасным? И почему вы ополчились на Pulseaudio, если не секрет? :)
Гость (30/05/2014 11:51)   
[оффтоп, шутки и фантазии, не верьте написанному]
Да. Я вообще автор практически любых постов, особенно содержательных, но не только. Их сейчас 80000. Буквально вчера был юбилей, я взял get: /comment80000[link113]. Из них порядка 40000 моих. Это очень много. Посмотрите на эту страницу[link114]. 40k — это ведь больше, чем TOP-50 всех пользователей, вместе взятых (26454) и больше, чем TOP-100. Мне реально страшно. Другие тоже боятся, включая SATtva'у и unknown'а. 40k комментариев и 9 лет жизни, больше 10000 часов потраченных на какой-то ИБ-форум. Я обычно значительно лучше помню, что они писали, где и когда, чем они сами. Они об этом подозревают, но даже они догадываются далеко не о всём. И если в конфликтах кто-то говорит «я устал, я ухожу» это будет реально хреново не просто потому, что -50% полезного содержимого сразу (это ещё пол беды), а потому, что оставшимся двум-трём будет уже не с кем здесь говорить. И та редкая ценная публика, которая пока сюда нагоняется искуственно и пишет годноту, перестанет её писать — её просто никто не будет заставлять. Т.е. реальные потери будут не один, а больше, чем один. Об этом тоже не задумываются.

Обычно я ежемесячно зеркалирую содержимое обновлений. Последние 2 месяца времени реально не было, писал значительно меньше обычного. И вот сразу было видно, как сильно просело общее число новых комментариев. Прошёлся по смысловым топикам — много где ничего даже не откомментировано по существу.

Видите всплеск[link115]? А всего-то пару раз зашёл прочитать и написать, если есть что сказать. Сейчас аж самому интересно стало. По умолчанию страница содержит 50 последних комментов. На текущий момент из них 41 принадлежит неавторизованным юзерам. Из этих 41 только 7 не моих. (9+7)/50 ≈ ⅓. Значит, ⅔ моих. Караул. Это больше половины, т.е. даже больше, чем я ожидал из общих соображений. Реально страшно. Жуть.

Самое обидное в том, что форум как объединение широкой группы профессионалов не состоялся. Думаю, 95% его содержимого создали 5-7 человек. Ну, пусть даже 10. Что изменилось, если бы это была приватная площадка этой десятки? Они разве что стимулирующие посты новичков потеряли бы.

Вообще, форум — он наркота. Начинается с безобидных вопросов, вникания в тему, потом втягиваешься, и выбраться обратно уже не можешь. Хочется всё знать, всё читать, про всё быть в курсе. Тут как с чтением новостей — надо соблюдать диету. Просто раньше привык, что ничего не знаешь — и всё хорошо, 5 копеек вставил и сидишь довольный. А теперь куда не глянь — везде можно 5 копеек вставить. И почти каждого можно поправить, и ссылки показать, и неглупые аргументы произнести. Вроде всё по делу, всё хорошо, но есть проблема, поскольку если помогать всем, кому можешь помочь, придётся этим заниматься круглосуточно, а это несовместимо, как минимум, с работой (не все ещё тут на пенсии). Надо привыкать проходить мимо, зная, что можешь протянуть руку помощи, и зная, что «это же быстро — пару строк черкануть», потому что один среднестатистический пост весит (считал специально) 20 минут личного времени, как ни крути, а это очень много.

В следующем месяце у меня точно не будет времени здесь кому-либо что-либо отвечать, разве что наскоком пробежаться глазами. И дальше будет тоже темнота и неопределённость. В общем, вы сами всё увидите. Жалко, но придётся отложить участие на неопределённое время и с неопределёнными последствиями, бо работа вообще стоит. :( Есть 5-7 вопросов, по которым готов материал или которые важны для себя, их выложу скоро. Остальное придётся отложить на неопределённое время. Возможно, даже до зимы. Я знаю, что от меня многие тут много чего ждут (и не только в этом топике), особенно готовых инструкций. И если я их не напишу, никто не напишет, увы. Их тоже придётся отложить. Порой до смешного доходит — «сапожник без сапог». Другим советуешь то, что сам себе не можешь сделать за нехваткой времени, и так тянется годами.

Эффект с этими «сам не сделаешь — никто не сделает», кстати, глобальный. В мире миллиарды людей, а надеяться не на кого. Нужна если вам та же отрицаловка — пишите спеку, статьи, в рассылку, аргументируйте, давите на LUKS-разрабов, пишите патчи. Можно ещё 10 лет ждать, когда кто-то из миллиардов людей это сделает за вас и не дождаться. «Вам нужно — вы и делайте, чай не дети уже, сами поди такие же серьёзные дяди, как и те, которые коммитят код в LUKS» — примерно такой должна быть логика. Все эти разговоры о том, что всё умное уже сделано умными людьми, а люди со стороны будут предлагать только дурость, не имеют под собой оснований. Любая нужная фича, код, проект — прежде всего, не гениальная идея, а результат упорного труда по её продвижению. Гениальные идеи можно придумывать ежедневно, а чтобы воплотить из них хоть одну в жизнь, порой приходится работать годами. Кстати, TrueCrypt с его многомиллионной аудиторией — яркий пример: будь он хоть 100 раз провальный на уровне идей, но конкурентов не было. Никто не сделал отрицание, даже самое примитивное, а они сделали. И теперь они законодатели моды фактически. Можно сделать лучше, но они были первыми. Хотите сделать лучше — пинайте Арно или кто у них там главный.

Наверно, не в тему написал, но ладно, пусть будет на правах оффтопика.

[/оффтоп, шутки и фантазии, не верьте написанному]


Я в основном предпочитал не ставить лишнее вместо того, чтобы сносить уже установленное. Сносить — это исключительный случай. Помню, что в инсталляторе выбрал не ставить laptop-специфичный софт (тянет всякую геолокацию). После инсталляции удалил (перенёс) sudo и su. Удалил dbus. Соответствующие библиотеки оставил, они вроде не опасны. Отключил IPv6 на уровне grub. После загрузки добавил автоудаление модуля ядра (rmmod rts5139, он жрал процессор) и остановку демона печати (service lpd stop). Отключил авторстарт CUPS и ещё чего-то, уже не помню. Смотрите по netstat -lpn, что у вас запущено, и что из этого не нужно. avahi, к счастью, не были установлен. Вот так сходу полный список всех модификаций я не припомню, это просто первое, что пришло в голову, потому и говорю: прочитайте внимательно этот топик. Вроде про все проблемы я тут отписывался. Ну, и я не слишком привередлив в плане софта, у меня достаточно аскетичное программное обеспечение (нет гномов, kde и прочего). Не факт, что это подойдёт и вам. Также не факт, что в новом релизе Debian все эти рекомендации по тому, что сносить, не устареют.


Там[link116] и про PulseAudio написано. Когда она у меня стояла на убунте, это было сложным и глючным комбайном, который часто или не работал или работал не так, как было нужно. Старая добрая ALSA меня всем устраивала, и я не видел никакого смысла в том, чтобы пихать себе этот комбайн и терпеть его глюки. Часть глюков шла от того, что PA — это система для домохозяек. Она очень плохо дружит с тем, когда вы начинаете пытаться параллельно работать со звуком через ALSA или ещё как-то. Естественно, масса консольного софта (тот же musicpd или прочие простые проигрыватели-нотификаторы в скриптах типа mpg123) не очень хотят знать про PA, и это хорошо. PA не терпит такого пренебрежения и начинает мешать.

Добивает и то, что вы ничего не можете изменить, если что-то идёт не так. Например, мне нужно было, чтоб звук работал независимо от того, какой дисплей (иксы или консоль) сейчас активны. Я привык работать под несколькими пользователями одновременно, переключаясь между ними. Однако, если один из них проигрывает музыку, а вы переключаетесь в соседние иксы, звук останавливается. После окончания проигрывания каждого файла было несколько секунд таймаута, ранее истечения которого mplayer не завершал свою работу. Иногда это просто глючило и не работало, поэтому приходилось полностью рестартить иксы и PA, чтобы получить хоть какой-то рабочий звук. Я всю эту херню терпел годами. И уверен на 100%, что в нормальном минималистичном гнезде параноика под названием «заточенный под мои нужды Linux/Unix» этот PA на данном этапе нахрен не нужен ни в каком виде. Помню, что гуглил, пытался применить какие-то хаки из сети, сответовался с более опытными, но толком починить это поведение мне так и не удалось. Если чинилось одно, то тут же переставало работать другое и т.д.

Это всё гуёвое, разработанное гуеориентированными разработчиками для гуёв. Это та же дичь, что и freedesktop и прочее. В общем, ссылка на лурке появилась не зря. В сообществах линуксоидов PA и другие поделия известного персонажа ругают уже который год. Вы, наверно, это и без меня знаете. Кстати, библиотеки от PA всё равно приходится ставить, и оно создаёт левые временные директории в /tmp и прочих местах. Однако, номинально PA у меня сейчас не установлен, и никаких проблем со звуком нет.

Вообще, стоит признать, скоро «установить систему без X (отключить на этапе инсталляции или снести потом)» будет требовать виртуозного искусства. Всю эту дичь так плотно встраивают во всё, что только можно, что отключить становится нереально. Например, всякие встроенные в железки Linux'ы спокойно работают без dbus'ов и udev'ов, а вы попробуйте их выпилить из дистра общего назначения... скоро целый LFS для этого понадобится. Linux планомерно превращается в винду, всё под массового пользователя.
Гость (30/05/2014 11:52)   

Извинияюсь, вот[link117] правильная ссылка.
— ressa (30/05/2014 12:13)   
Гость (30/05/2014 11:51)
Сильно. Спасибо тебе за твой труд и вклад. Я помню, ты как-то писал, что на некоторые свои развернутые ответы тратишь много времени, на то, что бы подтвердить каждое утверждение, прежде, чем писать его сюда. Это действительно достойно уважения. Так что спасибо еще раз. Откуда ты время находишь на это?
Гость (30/05/2014 13:30)   

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


Есть такое [1][link118], [2][link119], [3][link120].


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

Близкие люди бы сказали, наверно, как-то так: «Ты прошёл через столько проблем, чтобы выбраться в люди, потратил 15 лет на обучение, самообразование, приобретение нужного опыта и связей. Столько времени ничего не получалось, а ты шёл вперёд. Наконец, получилось и пошло в гору. Казалось бы, теперь — самое время делать то, ради чего всё затевалось. Перед тобой открыты практически все двери: делай, показывай, продвигай, публикуй, коммерциализируй... всё, что угодно. Задайся целью, серьёзно поработай над собой, и тебя с твоими знаниями могут взять куда угодно: топовые технологические компании, хайтек-стартапы, R&D, лучшие группы в мире по соответствующим темам... да куда угодно — только работай и иди вперёд. Твои одногодки уже давно мировые эксперты по своим темам. Они дают экспертные оценки на проекты и интервью ведующей мировой прессе. Теперь ты не тупишь месяцами, а можешь реально читать архив и IACR, разбираться, и сам писать не хуже. Комментировать можешь не на форуме, а на официальных конференционных докладах. И решать не какие посты уместны на pgpru.com, а решать, какие статьи уместны в ведущих научных журналах и конференциях. Миллионы людей не достигают этого, а многие даже не могут мечтать о том, что ты уже имеешь и можешь легко заиметь, если ещё поработаешь над собой. Но что же мы видим? Вместо этого ты сидишь в интернете на каком-то форуме и тупо прожигаешь свой ресурс и время. Ты заболел или сошёл с ума? Писать годные вещи на форум, когда можно написать годную работу в PRL — это прям совсем дауншифтинг получается или отупение.»

В общем, надо как-то чётко себе сказать, что это не снобизм и не бахвальство, просто форумный формат я действительно перерос. Умение написать на хорошем русском или по делу — не велика заслуга при таких-то расходах, это как радоваться тому, что в 20 лет ты уже сам в туалет ходишь. Т.е. от тебя ждут в этом возрасте несколько более серьёзных результатов, чем сайты, посты, проекты и даже программный код. Всё это могут сделать студенты, а надо делать то, что другие уже не смогут: например, писать обзорные работы, делать аналитику, доказывать теоремы или безопасность протоколов.
— unknown (30/05/2014 14:10, исправлен 30/05/2014 14:45)   

Ничего серьёзного сходу не нагугливается (хотя серьёзное научное описание и глубокие причины этого состояния описаны, забыл ключевые слова, кроме "success avoidance syndrome" есть ещё что-то), но Avoiding Success[link121] — распространённое явление. Одна из причин — "fear of unknown".

— ressa (30/05/2014 14:50)   
Хорошо написал. Но ожидания со сторны я не приемлю. Никто ни в праве чего-то ожидать от человека. Кроме его семьи, и то в разумных пределах. Если тебе нравиться писать сюда – ты пишешь сюда, если в другое место – в другое. Я всегда восхищался людьми, которые в рамках своей парадигмы отдают себя всецело, помогая другим получить знания или реализовать себя. Хотя я и очень далек от ИТ в целом.. Так что я уверен, что ты счастливый человек. Редко удается совмещать любимое дело, интересы, хобби и работу.
Одна из причин — "fear of unknown".

Не знаю, о чем ты, но если про страх достижения успеха – я не люблю психологию, не доверяю ей. Все очень индивидуально, и для кого-то успех не в кэше измеряется, для кого-то не только в кэше, и тд.
Если человек выбрал свой путь – то его понятие успеха, вряд ли сойдется с понятием его успеха у сторонних наблюдателей.
Одно дело, когда человек ни в чем не подкован, ничего не добился совершенно и как амеба прожигает свою жизнь – тогда да.
— unknown (30/05/2014 15:12, исправлен 30/05/2014 15:24)   

[off]
Ну да,

The unknown: we are talking about the fears surrounding the unknown.

Дело не в навязывании психологизации. Можно посмотреть, что таких людей не так мало как кажется и какие могут быть мотивы в их поведении. Они могут быть вполне рациональны и оправданы. А психологию лучше смотреть в оригинале в научных публикациях, а не в популярных книжках. Вот, не вполне серьёзный пример[link122], больше на примере успеваемости студентов, но рассмотрены несколько причин, которые характерны и для взрослых.


Increased competition, The promise of a "career" vs. a "job", " More money and/or higher status", "Power, or perceived power", "Increased stress", "Becoming more visible", "Being viewed as better than average", "The envy of others", "Less time for other things" — для многих это серьёзные факторы отказа от успеха или выбора его, как неприемлемой формы существования для себя лично.


THESIS: Incorporated into identity is a level of success above which
people do not imagine themselves. Rather than threaten that identity,
individuals may choose to maintain the internal consistency, i.e. their
basis for security, by limiting their success.

Здесь не обязательно психология, вполне может быть генетика и нейрофизиология, т.е. для некоторых людей то, что в обществе считается успехом — изначально обусловленное некомфортное состояние. В отличие от психологов, которые говорят «всё в твоих руках, всё можно решить», если смотреть с других позиций, то проще м.б. смириться, уклониться, найти обходной путь, чем тратить массу усилий на переделывание себя в угоду другим и/или текущим представлениям общества.
[/off]

Гость (30/05/2014 15:38)   

Страх перед unknown[link123]'ом... Нда-а. КСЖ. Народное объяснение было проще: «Вас столько заставляли там учиться и работать из-под палки, вы не могли расслабиться, учились выживать. Ну, хорошо, вас выдрессировали. Но, извините, работать самостоятельно и управлять своим временем вы так и не научились, поэтому как только палка в виде обязательных экзаменов и отчётностей исчезла, все тут же скатлись в "ничегонеделеание" и прочее гниение».

Я сам наблюдал эти картины на выпускном курсе: некогда отличиник (и таких было много!) не мог себя заставить сделать даже самые элементарные вещи, чтобы защитить диплом. Они просто тупо, как зомби, ничего не делали, прекрасно понимая, что могут остаться без диплома. Даже когда оставалось 2 месяца, они продолжали ничего не делать. Из жалости некоторых кое-как пинками соседи выталкивали хотя бы несколько раз съездить на дипломную практику. Других вытаскивали шефы, просто давая им старые дипломы, чтобы те немного поменяли их содержимое и защитили как оригинальные, причём студенты были люди не глупые, всё знали, умели, могли написать прекрасные работы, но впадали в такой (депрессивный?) ступор, что тупо сидели и сжигали время.

Вроде есть такие аналогии в биологии или психологии, когда за несколько метров до финиша сводит ноги, и человек не может пройти оставшиеся метры. Или переходя ЖД-дорогу и видя надвигающийся состав, у него подкашиваются ноги, и вместо того, чтобы сделать два шага на перрон, он парализованно садится на рельсы (сам видел, люди вытащили вовремя).

Или вот ещё пример: хорошо подготовленный сокурсник с напарником пришёл на собеседование к уважаемому Рубакову. Тот его вроде даже взял, поговорил, дал задачи. Вроде решай, разбирайся, ходи на консультации, учись — в чём проблема? У него начался какой-то бжик: типа пока не решу все до одной задачи (а там КТП, и задачи сложные), к Рубакову не пойду. Задач было много. Решал их весь семестр, многие решил, но не все, а у Рубакова так и не появился ни разу за семестр. Другой товарищ смотрел на этот доблестный пример и тоже не ходил. В итоге семестр проходит, и никто так и не пришёл на практику. Как им зачёт ставить? Как-то вытянули, сделали скидку, но могли бы и отчислить. Реальная кунсткамера.



Я тоже. Уверяю, многие из моих коллег не умеют программировать ни на чём, у них стоит винда, и таких слов как PGP они вообще в жизни не слышали. Просто занимаются другими, более on-topic вещами (путешествия во времени, нарушение принципа причинности и т.п.).


В общем, да. Меня всё устраивает. И в детстве не мог мечтать о том, что имею сейчас. Другие тоже не верили в будущее, говорили «будь как все, иди по накатанной дороге как все вокруг, не прыгай выше головы, у тебя почти всё предрешено».


Тоже верно. Если взять, например, оплачиваемую академическую науку — то это большой спорт и вечная гонка с нулевой стабильностью. Гонка прекращается только по получении постоянного места работы, но к тому времени человек должен уже столько пробыть в состоянии гонки и настолько переделаться, чтобы уже не мочь остановиться. :) Это как выше описанная наркомания должна быть, но в отношении науки и исследований, а не постов на форумах. Там, кстати, отборы вида «только один из 30-ти постдоков придёт к успеху». Недавно на эту тему хорошая статья[link124] была (см. также это[link125]). А многие не любят гонок и не хотят рисковать, поэтому реально оценивают свои шансы и добровольно дауншифтят в какое-нибудь прогерство.
— ressa (30/05/2014 15:38, исправлен 30/05/2014 15:49)   

Ну я больше из жизни примеры привожу и выводы для себя делаю. Но да, видел массу людей, которых деньги делают несчастными. А в итоге не деньги делают, а то, что люди сами по себе пустые. Я вот тоже думал как-то (только, господа тролли – не надо меня в политоте снова марать). Так вот, развал СССР, неимоверное количество активов осталось безхозными. Что делать? Нужно в первую очередь по максимуму их сохранить, а потом уже думать о качестве управления. И "раздача" велась успешно пройденным "кастинг" личностям, у которых активно развита лишь программа "детского мышления". Ну т.е. получив в руки такой актив, у людей хватает мозгов лишь покупать дома, футбольные команды, трахать блядей на яхтах в Куршевель и тд. Это не так дорого стоит, и уж тем более – траты с копеечные по сравнению с активом в целом. Задача – чтобы этот актив и фин.потоки не использовались в политических целях, для свержения строя и тд. Так и не используются – мозгов то только на блядей и траты хватает. Я ни в коем случае не осуждаю, люди зарабатывают деньги. Просто к тому, что счастьем и самореализацией – там даже и не пахнет. Другой вопрос – да, страдает то народ. Останкинский мясокомбинат в Москве закупил обородувание во Франции на 35млн долларов, на новый колбасный цех. И через две недели после ввода в эксплуатацию – был продан весь(!) комбинат за 3,5млн долларов. Фвкт. Ну или когда с заводов и рудников продукция продавалась по ценам, до 40% ниже себестоимости добычи\производства. Да, руководители наваривались, но производство истощалось, зарплаты не выплачивались и, как итог – упадок промышленности, безработица, и тд. Поэтому успех все-таки понятие очень абстрактное. Я лично не принял бы для себя такой ход событий в принципе, мне не нужны деньги, когда кто-то из за этого страдает по моей прямой либо косвенной причастности. И в тоже время, да, я не готов зарабатывать копейки из за какой-то "стабильности", безрисковой жизни и тд. Но тем не менее для кого-то успех – это самореализация, для кого-то деньги, для кого-то слава и признание. Я даже сам затрудняюсь сформулировать, что это для меня. Видимо просто даже не думаю об этом. Мечтать не люблю, а мерить что-либо лишь по результатам, а результаты всегда должны быть положительными – соответственно, результат – тоже не успех. ХЗ в общем. Кесарю – кесарево. Но тем не менее, нужно понимать, что мы все-таки часть живого организма и по возможности всегда нужно помогать тем, кто этого достоин, кто не виноват в сложившийся ситуации. Я к тому, что дармоедов, бухарей и тд – тоже кормить нечего, ни физ.лицам, ни государству.

«будь как все, иди по накатанной дороге как все вокруг, не прыгай выше головы, у тебя почти всё предрешено».

Всегда раздражало это. "Каждый сверчок – знай свой шесток" и тд. Только живая рыба против течения плыть может. Что за стадные инстинкты. Представляется сразу ребенок в простой советской семье в одном из промышленных моногородков. Угадал? Ну в СССР – да, мол головой своей не думай, государство все подумало и решило. Как Есенин с сарказмом о грустном "Раз власти – на то они власти, а мы лишь простой народ".

— unknown (30/05/2014 16:01, исправлен 30/05/2014 16:40)   

Это ситуационный стресс, хотя бывает и стабильно повторяющийся в похожих ситуациях. Мне просто не найти качественных ссылок по теме. Хочется донести какие-то более глубокие причины, раз уж разговор пошёл в эту сторону. Такое состояние м.б. почти сознательным и спокойным выбором, а не каким-то сбоем. Я не психолог, сначала скептически относился, что Шнайер притягивает как бы наивную психологизацию к тематике безопасности. А мне кажется, это не так просто.


Вспоминается, что Эйнштейн считал себя счастливым человеком, когда работал малоизвестным клерком в патентном бюро, а не когда стал всемирно известным учёным. И это не ложная скромность, он мог быть искренним. Людям шизоидного, параноидного или аутистического (не в клиническом, а в условно-нормальном понятии этого термина) спектра склада личности не всегда комфортно вписываться в ведущие роли в обществе. Человек, который считает приватность своей ценностью, будет считать общественный успех угрозой своей безопасности. Не в физическом плане, а скорее в моральном. Вспомните успешных людей, даже политиков и даже преступников (не мелких, а пролезших наверх общества): насколько они все беспечны в техническом плане, в отличии от грамотного использования связей-отношений с нужными людьми; насколько им неинтересно разбираться, как устроено, чем они пользуются; насколько им «нечего скрывать», что они знают, что компрометирующие их письма и разговоры могут быть обнаружены, но им плевать. И наоборот: не обладающей никакой ценной информацией и особо ничего не потеряющей от её раскрытия человек будет изучать способы максимального её сокрытия, на грани одержимости. Мне неясны рациональные причины такой мотивации, но разительно видны её отличия у общепризнанно «успешных» и «неуспешных» людей. Есть надежда и проглядывается тенденция, что по мере технократизации общества, людей с изменёнными типами мотивации в поведении будет всё больше, но будет и масса негатива и общественных кризисов на этой почве.

Гость (30/05/2014 16:45)   
Вспомните успешных людей, даже политиков и даже преступников (не мелких, а пролезших наверх общества): насколько они все беспечны в техническом плане, в отличии от грамотного использования связей-отношений с нужными людьми; насколько им неинтересно разбираться, как устроено, чем они пользуются; насколько им «нечего скрывать», что они знают, что компрометирующие их письма и разговоры могут быть обнаружены, но им плевать.
Остается за кадром, столько таких "идущих к успеху и ничего не скрывающих" пришли вовсе не к успеху... Много их, все тюрьмы битком набиты.
Стратегия "тихо делать дело и не палиться" не дает известности, сверхприбылей, или дороги к верхам общества, но можно спокойно жить и не бедствовать, получая больше чем на какой угодно легальной работе.
— ressa (30/05/2014 16:54)   
Уважаемый, тюрьмы другими набиты..
— SATtva (30/05/2014 16:58, исправлен 30/05/2014 16:58)   

Могу только подтвердить, что вклад Гостя (хотя какой он там Гость, если все мы его прекрасно знаем в лицо) в проект огромен, благодарность за систематизацию материалов, раскрытие многих вопросов, научный инсайд невозможно переоценить. Будет чрезвычайно жаль, если он из него выпадет, но жизнь есть жизнь, все причины понятны.

— unknown (30/05/2014 21:26)   
Мне будет тоже не хватать. Многие посты негостевого Гостя сильно поменяли моё мнение или дали продвинуться
по большому числу вопросов.
Гость (31/05/2014 01:59)   

Как ни странно, и пороки, и добродетели, всё это несколько долговечнее мануалов с актуальными номерами. Все установки уникальны, но из написанного здесь и выше извлек много нового и интересного, спасибо еще раз.

Подпишитесь, пожалуйста, по rss на комменты — если просматривать иногда, то это не менее интересно, чем новости, а если изредка будете что-то кратко писать, то для общества будет польза.
Знаю примеры изменения поведения после разоблачений. Человек не представляет состояние до и состояние после. Это не плевать, это что-то как раз биологическое — то самое, которое заставляет девочек сливать всё в фейсбук (поэтому на каком-то уровне бессмысленно бороться и ограничивать). Подсознательное желание демонстрировать свои преимущества и способности. (Речь не идет о разоблачительных съемках, там всё отдельно и по-особому.)
Гость (01/06/2014 23:30)   

Делал всё, как рекомендуется. При апдейтах лезут ошибки типа следующих:





Это какие-то непонятные вообще ошибки, но вроде ничего серьёзного.



Это, наверно, потому, что отключил автостарт CUPS'а, и теперь у системных дефолтов началась ломка. По-моему, ловил систему на том, что какие-то из отключенных сервисов после upgrade снова прописывались в автостарт.







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



После завершения upgrade в /tmp остаётся неочищенным куча срача из файлов типа /tmp/file.NUMBER. Это у всех так? Или так бывает только при возникновении ошибок?



Это выжимка из /var/log/user.log, там много всего, upgrade так grub'а насилует. Смотришь на эту «всезнающую» автоматику и ужасаешься: там длинный лог, он лезет во все устройства (даже те, которые заведомо никак не относятся к его компетенции), выполняет для них какие-то непонятные эвристические скрипты, а потом как-то из этого выводит свои умозаключения, что, где и каким образом надо апдейтить. Это хоть как-то отключается или настраивается?

А если у меня система загружена с LiveCD, и я не хочу, чтобы он вообще трогал /boot (даже монтировал) на диске, с которым работает — это делается? Или, например, чтоб он трогал только определённый /boot на определённом разделе, но не другие. Или вот ещё пример: система стоит гостевой в виртуалке, и у неё нет своего полноценного /boot и т.д. Её обновление пройдёт в искаробочном формате?

Пока всё было в режиме близком к умолчанию, а уже столько ошибок. Страшно представить, что будет, когда ещё и ручное вмешательство будет со своими тонкостями.
— unknown (02/06/2014 11:58)   
Ряд общих соображений и советов на будущее только. УМВР, никогда не сталкивался с описанным в таких масштабах, хотя часто вмешиваюсь в систему напильником.

1. Grub поставлен как-то криво. Перед шифрованным физ.томом или на внешней флэшке нужно разбиение на разделы всё равно. Внутри разделов делайте, что хотите.

2. Есть, например, конфиг /etc/grub.d/custom, практически пустой по умолчанию. Только в него и можно добавлять свои строки. Остальные конфиги граба трогать нельзя, в них предупреждения есть, что они только для системных скриптов. Этот подход широко применяется ещё много для чего, когда системный юзерский конфиг разнесён с основным системным конфигом для автопарсинга, который может быть перетёрт при обновлении пакетов.

3. В /etc/rcS.d заменяется название первой буквы симлинка с "S" на "K" (пока Поттеринг всё не испортил). Так нормально отключаются любые демоны, в т.ч. и CUPS. Сами стартовые скрипты в /etc/rc[X]d напрямую править чревато.

4. Не следует увлекаться нестандартными опциями монтирования в fstab (readonly для /boot, noexec для /home и пр). Безопасность это практически никак не повышает, а проблемы штатной работе системы создать может.

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

6. Над рамдиском можно издеваться, перепаковывать. Но опять же, смотреть структуру, куда можно лазать, а куда нет. Т.к. при обновлении ядра рамдиск перепаковывается автоматом и там могут быть заменены системные модули. Если туда ставится что-то своё, то как и везде, надо выяснить, где находятся области (конфиги, каталоги), которые предназначены для ручной правки, а в каких областях ничего трогать нельзя.

Самый общий принцип: много конфигов в системе не для человека. Доступные для правки вынесены часто отдельно и многие вещи надо специально читать в манах и инструкциях как делаются, чтобы не было конфликта с системными опциями. Т.е., возможность кастомизации сохраняется, есть даже специальные утилиты, но надо знать особенности не просто системы, но её реализации в своём дистре.
Гость (02/06/2014 15:18)   

Очевидно, /tmp смонтирован с noexec.
Гость (02/06/2014 21:43)   
По пунктам:

  1. Grub (/boot) был поставлен на обычный дисковый раздел типа /dev/sdaX. Потом я его перенёс на другой раздел и перепрошил mbr. Вроде проблем не возникло, всё работает.

  1. Я в курсе. Какую-то мелочь я исправлял в конфиге grub напрямую, да, но, как мне показалось, это не так страшно. Как я понял, максимум, при очередном обновлении я потеряю это изменение, но не более того.

  1. Скрипты не правил. Отключал, как рекомендуется (как вы сказали).

  1. Понял. Вроде не особо надеялся, но какие-то изменения оставил со старых времён. Сейчас дополнительные опции монтирования убрал.

    Очевидно, /tmp смонтирован с noexec.

    Да. Теперь исправил.

  1. Своё ядро не ставил, всё по умолчанию было.

  1. С ramdisk'ом никогда не работал, внутрь не лез. По большому счёту, про него вообще впервые слышу сейчас.


Я понимаю. Это, кстати, одна из тех особенностей, за которые я не люблю современные Linux'ы. В BSD (за исключением FreeBSD) можно было лезть руками практически всюду, и это работало напрямую и без глюков.
Гость (02/06/2014 21:50)   
P.S. По-видимому, многие проблемы идут от того, что из ссылки в /comment67554[link128] утянул чуть больше рекомендаций, чем следовало бы.
Гость (02/06/2014 21:54)   

По-моему, в последнем стабильном Debian стартовые сервисы и поныне так отключаются. Что не так? Вы про systemd, которого по умолчанию ещё нет?
— unknown (03/06/2014 09:33)   

Про него.
Гость (03/06/2014 10:24)   

Linux'ы есть разные. Помимо вездесущих Debian-based и RPM-based есть ещё и Slackware. Она гораздо ближе к UNIX'оидной старой школе.
Я вот для пробы 2-3 года назад поставил рядом со своим Slackware ещё и Debian и тоже был разочарован (помимо многого другого) тем, что между мной и системой встают "умные автоматы".
Гость (03/06/2014 12:12)   
есть ещё и Slackware

Кстати тоже о нём подумал. Из всех дистрибутивов это наверное самый консервативный и соответствующий unix-way. И по словам разработчика, он не планирует переход с init на systemd. Вообще, отношение к systemd очень показательно, как лакмусовая бумажка. Очевидно, что это сложное, ненужное и небезопасное ПО с тоталитарными замашками. Кто этого не видит, разменивает стабильность и безопасность на модные фишки и погоню за "современностью", тот по большому счёту глупец или просто хомячок-виндузятник по ментальности. Ну а идеал это конечно LFS. К слову сказать, пользуюсь сейчас RPM дистрибутивом (CentOS c upstart), проблем описанных unknownом практически не замечаю. Grub там старый и беспроблемный, chkconfig для переключения уровней запуска работает, рамдиск существенно изменён, многие системные конфиги нормально редактируются. Репозиторий довольно беден, но я им не пользуюсь, т.к. ставлю из исходников, поэтому данной проблемы не замечаю.
— ressa (03/06/2014 12:24, исправлен 03/06/2014 12:25)   

Я тоже думаю о смене дистрибутива. Правда пока не знаю, в сторону чего смотреть. Понятное дело – Gentoo, но у меня нет времени на него, да и знаний тоже. Попробую Slackware поставить на днях.
unknown, а ты же на Debian сидишь вроде, какие мысли на этот счет? Ну т.е. если бы пришлось мигрировать, чтобы ты выбрал для себя? Спасибо.

— unknown (03/06/2014 13:32)   

Никаких
Гость (03/06/2014 18:53)   

Firefox и openoffice (libreoffice) тоже самостоятельно собираете?
Гость (03/06/2014 19:12)   
Конкрентно Firefox и LibreOffice уже были после установки системы. Другие GUI-программы (основанные на GTK, wxWidgets и т.п.) ставил и согласен что это сложнее и дольше чем консольные (если вы об этом). Поэтому предпочитаю пользоваться последними при наличии выбора.
Гость (03/06/2014 20:11)   
Тогда еще несколько вопросов по существу дистра.
Почему Патрик выпилил Гном?
И правда ли что:
– по причине того что пакетный менеджер не разрешает зависимостей между пакетами то в один пакет уже все включено?
– из коробки ловится практически всё железо?
Гость (03/06/2014 22:00)   
Если вопросы по CentOS, то

1. Начиная с 6 версии есть два основных варианта установки: MinimalCD и обычный десктопный. Первый главным образом предназначен для серверов (использую его на VPS). В десктопном Гном есть, 2 версия. На самом деле предопределённых вариантов установки в инсталляторе больше (порядка пяти или вроде того если использовать образ на DVD), можно вообще все пакеты вручную выбрать. Пользуюсь этим дистрибутивом не так давно, около полугода. Так что специалистом по нему не являюсь. До него 6 лет была Fedora, поэтому трудностей при переходе на CentOS не испытывал, всё было знакомо. С Федоры решил уйти, т.к. новые версии стали слишком нестабильны, а сама система из-за повышающейся сложности, обилия нового и ненужного для меня ПО стала превращаться в чёрный ящик.

2. Никаких проблем с пакетным менеджером не замечал, все зависимости автоматически разрешаются. В пакет обычно входит только то что нужно. Хотя в некоторых случаях бывают не совсем логичные связи. Например cron почему-то зависит от postfix. В принципе это объяснимо, но не вполне разумно, на мой взгляд. Никаких особых проблем это не доставляет, в других дистрибутивах скорей всего есть аналогичные случаи.

3. Про всё железо ничего сказать не могу, на моём всё работает.
Гость (03/06/2014 22:18)   

Не знаю. Гном меня не волнует.
Нет. Если нужны пакеты не входящие в Slackware (в дефолтный, полный install) это документируется. Пример.[link129] Обратите внимание на "This requires:".
Поддержка железа зависит больше от версии ядра, а не от дистра.
Но в Slackware немного лучше, да.
Пример: Моя WiFi карта в Debian'е требует сперва прописать non-free репозитарий в /etc/apt/sources.list, затем установить пакет с firmware. В Slackware — из коробки (пакет с firmware ставится по дефолту).
Видимо нет.
Гость (03/06/2014 22:24)   
К сожалению видимо я неясно выразился. Вопрос относился к Slackware как к самому "гораздо ближе к UNIX'оидной старой школе".
Гость (09/06/2014 13:45)   
В продолжение /comment78226[link130]:

Засмотрелся если на клавиатуру и ввёл по ошибке пароль вместо login'а в консоли, UNIX сразу позаботится об утечке:

HOSTNAME login [XXXXX]: pam_unix(login:auth): auth could not identify password for PASSWORD

Вот такой /var/log/auth.log. Хорошо ещё, что пароль рута только на диск при этом утекает, а то если б были у этого файла чуть другие права, пароль рута моментально узнавал бы любой софт, запущенный в ОС.
Гость (09/06/2014 22:02)   

Это очень толстые пакеты, которые зависят от десятков других (jpeg, png, xulranner и прочих). На примере pkgsrc[link132]: обратите внимание на списки «Required to run» и «Required to build». Каждый порт/пакет в этом списке зависит от своих портов/пакетов и т.д., пока не раскрутите всё дерево зависимостей. Если бы вы полностью ставили всё это из исходников, самостоятельно (не опираясь на дерево портов), это было бы титаническим трудом. А раз соответствующие «толстые» пакеты у вас уже установлены, значит, практически всё базовое у вас уже есть и установлено не из исходников.


Судя по всему, вопросы были про Slackware.


К слову, в суперминималистичной NetBSD и то и другое входит в часть базовой системы, т.е. штатно оттуда не удаляется. Запуск postfix'а можно отключить, но это приводит к глюкам во всей системе ежедневного автоматического аудита, запускаемого через cron. Впрочем, pf должен страховать от всех непредвиденных случаев, в том числе — и от попыток postfix'а вылезти в сеть наружу.
Гость (09/06/2014 23:27)   
А раз соответствующие «толстые» пакеты у вас уже установлены, значит, практически всё базовое у вас уже есть и установлено не из исходников.

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

К слову, в суперминималистичной NetBSD и то и другое входит в часть базовой системы, т.е. штатно оттуда не удаляется.

В CentOS удаляется и проблем нет. Делал это чтобы поставить другой почтовый сервер.
Гость (09/06/2014 23:40)   

Неужели sendmail?!
Гость (10/06/2014 00:03)   
Нет, конечно не sendmail.
Гость (10/06/2014 08:58)   
Мали ли какие у людей сексуальные предпочтения... хотят — пусть ставят sendmail.
Гость (04/08/2014 06:38)   
/comment67529[link134]:
--no-install-recommends
Do not consider recommended packages as a dependency for installing. Configuration Item: APT::Install-Recommends.

И прописать в /etc/apt/apt.conf. Ссылка[link135].
Гость (12/08/2014 19:21)   

Похоже, никак, но есть костыли[link137]. В случае openbox в /etc/xdg/openbox/menu.xml можно прописать что-нить навроде
<item label="Lock screen">
  <action name="Execute">
    <execute>
      sh -c 'setxkbmap -layout us &amp;&amp; xscreensaver-command -lock'
    </execute>
  </action>
</item>
<item label="Normal layout">
  <action name="Execute">
    <execute>
      setxkbmap -layout us,ru
    </execute>
  </action>
</item>
тогда раскладка будет автовыставляться перед ручным залочиванием, а после разлочки надо будет вручную выполнять пункт меню (не знаю, можно ли второе действие автоматизировать). Если же залочивание будет по таймауту, метод не сработает. ☹
— SATtva (13/08/2014 10:01)   
Если уж городить костыли, то вместо самого xscreensaver можно создать скрипт-обёртку, меняющий раскладку, вызывающий xscreensaver и выставляющий предыдущую раскладку.
Гость (13/08/2014 19:44)   
xscreensaver — это демон, он запущен всегда через exec в ~/.xsession. Ему можно давать команды на локинг и анлокинг, грубо говоря, но когда вы делаете анлокинг, вы не вызываете какой-нибудь xscreensaver-command -unlock, а просто вводите пароль на экране. Как тут сделать, чтобы после разлочки ещё выполнялись дополнительные команды? Если только запускать скрипт, который будет постоянно гонять по кругу проверку диагностики и выцеплять время, когда экран только что разлочился (не знаю, возможно ли такое), в этот момент выполняя возврат раскладки. Я к тому, что тут асимметрия: локинг — это действительно команда в шелле, поэтому можете до и после неё понавставлять чего угодно, а вот анлокинг — нет.
— unknown (16/08/2014 22:32)   
В иксах можно прописать отображение раскладки через светодиоды CapsLock и др. Правда на многих клавиатурах их уже нет, особенно на ноутбучных.
Гость (16/08/2014 22:54)   

Кстати, да, хорошая мысль. У меня из коробки подсветка включается только для Shift+CapsLock, для просто CapsLock — нет, но это, наверно, настраивается.
Гость (17/08/2014 16:04)   


Да, это делается вот так:
Гость (17/08/2014 21:25)   

По конвенции в UNIX переключение идёт по CapsLock, а не через Ctrl+Shift. Это удобнее.
Пункты 2 и 3[link138] вас касаются.
Гость (17/01/2015 02:19)   

OpenBSD стала вусмерть вумная и уже при первом запуске пытается скачать firmware для видеокамеры. Хорошо, что сеть была не настроена. Автоматика задолбала...

Инсталлятор добавляет прогу загрузки фирмвари в rc.firsttime. Раньше это делалось по запросу, теперь принудительно[link140]. Интересна мотивация:

Now that the code is well tested, don't ask the firmware question anymore. Saves 141 precious bytes on the inside of the media.

Охренеть, да. В последнем коммите (уже после 5.6) они сделали suspend по закрытию крышки по дефолту и без вопросов в инсталляторе(!). «Пропал калабуховский дом».

Еще насчет блобов, закладок и OpenBSD (эти две темы вместе сошлись): в OpenBSD полно блобов. Сейчас мало какой драйвер wi-fi работает без фирмвари (для примера, atheros 5k, но это старое изделие, и то, там была фирмварь, но обсдшники ее отреверсили и выпилили). В саму OpenBSD включена часть блобов, на которые у них есть лицензия на распространение в составе ОС; остальные качаются с сайта волшебным скриптом... Интересно, что обсдшники не особо озабочены самим фактом наличия бинарной фирмвари (в отличие от RMS). Для них главные проблемы:
  1. Бинарные драйвера (т.е. код ядра).
  2. Фирмварь, на которую у них прав распространения нет.
  3. Открытые драйверы, написанные для линукса под NDA, в которых хрен что поймешь.
В общем, я не уверен, что они вообще считают фирмварь блобами. Вот позиция[link141]:

TdR: The firmware is an integral part of the device, but unfortunately due to cost savings not stored on the device itself. Operating systems must supply the firmware, and then an open source driver can communicate with the combination of device+firmware. Every device these vendors make has a totally custom operating environment, different registers here, different bugs there, and no public documentation at all. It would be a herculean effort to write a free firmware for any of these devices, since a developer would be utterly blindly trying to talk to registers. The Intel wireless devices use a processor we do not even know the instruction set for. For an example of such an effort, see http://prism54.org/freemac.html where some people have been trying to write a completely free replacement firmware for a chip that shipped during the period 1999-2002. Read the history too. Note that the prism54 is a simpler-than-the-average 802.11 firmware-driven chip. The Broadcom and Intel chips are way more complicated (and buggy) internally.

But firmware replacement is precisely the kind of effort we may eventually get into if the vendors do not give us permission. We may have to reverse engineer their firmwares to write replacements. Those replacements will be of very poor quality for a very long time, due to the incredibly difficult programming environment. These vendor programmers used simulators and jtag to write the the firmware for these chips, and they knew all the registers and had the hardware designers next door. In our efforts, we might even melt some devices, and cause all sorts of spectrum damage. It is in everyone’s best interest if the vendors would simply, through copyright law, grant re-distribution rights of the firmware binaries by other operating systems in the same way they allow Microsoft to distribute these binaries.

Some people (mostly just RMS) insist on firmware source code. We do not feel that we need or even want firmware source code — just the missing binary component that allows the device to operate. Our #1 goal is that our users be able to use the devices they purchased. We feel that when RMS insists on things which vendors will never give, he confuses the vendors, and the vendors back off and end up giving us nothing at all. As a result, everyone loses — RMS, the vendors, the operating system suppliers, and the users. This is not (yet) the time or place to make such strict statements.

В каких-то смыслах они оба правы: с одной стороны, бинарная фирмварь идеологически неправильна, но, с другой, требовать от всех исходников пока нереально.
— unknown (17/01/2015 22:38, исправлен 17/01/2015 22:39)   

В Linux есть хотя бы выбор: или открытые, но неполностью функциональные драйвера, или блобы с кучей недостатков (отсутствие доверия к разработчикам и потенциальные трояны — не единственные из них). Пример выбора: поддержка 3D или HD-video в видеокартах бывает не нужна, тогда можно выбрать открытые.


Понятно, почему в (Open)BSD этого нет: открытые драйвера создаются тупо за счёт человекочасов и перехода количества в качество, это нудная и неинтеллектуальная разработка. В BSD просто нет таких ресурсов.

Гость (18/01/2015 01:50)   

В своё время они активно реверсили[link142] дрова для Wi-Fi-карточек, что-то даже якобы крали у Linux.

Например, вот[link143] очень заменитая Санта-Барбара тех дней. В ней, по-моему, все успели отметиться, включая самого Тео. Оригинальный Linux-разработчик после начавшейся истерики вроде даже был готов перелицензировать код под BSD, но Тео настоял на своём и удалил драйвер из кода ОС (если правильно помню по памяти эту историю).
Гость (27/01/2015 06:39)   

Ещё полезные ссылки на эту тему, и не только: [4][link150], [5][link151]. В частности, на тему «насколько этот метод был успешным» там советуют смотреть pstree.
Гость (27/01/2015 06:56)   
systemd: как же всё-таки это непросто [1][link152], [2][link153].

Avoiding systemd isn't hard

The former contents of this blog post have been removed.
Systemd-haters pissed me off so much, that I'm no longer willing to provide information helpful for avoiding systemd.
Here is my message to all the anti-systemd-trolls: Go jump in a lake, we do not need haters in the open source community.
Hint: if you want people to care about you, stop insulting them. If you keep on pissing off people, you will not achieve anything!

Debian'овская рассылка — это ещё и весело. Я раньше думал, это только у OpenBSD'шников так.
Гость (27/01/2015 15:21)   

Похоже, что он всё-таки работает. systemd при это в систему всё равно ставится (не знаю, кто его тянут), но на него ничего не завязано — можно выполнить apt-get remove systemd и всё, останутся только его либы, которые всё равно ни на что не влияют.
Гость (28/01/2015 20:42)   
Линукс — не для людей.

Звук не работает, хоть убей. Звуковая опознаётся. Чтение гугла сводится к беглому изучению многотомника по ALSA. Конфиги на пол стены, от которых хочется выть. После очередного дня безуспешных попыток всё-таки находится рецепт, который срабатывает: в /etc/asound.conf прописывается хак, которые инвертирует порядок звуковых карт. Зачем вообще 2 звуковых устройства в системе? Не знаю, чем думают сборщики железа. И, о чудо, звук работает! А уже что только ни перепробовал, включая pulseaudio, но всё было бесполезно, хотя на родной убунте оно работало искоробки.

Шрифты. Всем пофиг на совместимость. Ты просто меняешь какие-то вещи по-своему усмотрению, и в этот момент на тысячах машин по всему миру всё ломается, но тебе похрен. Ты просто делаешь своё дело. — Вот такой путь Opensource-самурая. Установлены все какие только можно икосвые пакеты, но xlsfont упорно не видит установленные шрифты — показывает только 5 штук. Не помогают ни извраты с fc-cache, ни mkfontdir и т.п. команды под рутом. Ну что они в очередной раз умудрились сломать?! Нашёл грязный хак, который исправляет проблему, но только per session. Теперь абсолютно ко всем ~./xsession придётся плюсовать что-то такое:
xset fp+ /usr/share/fonts/X11/100dpi 
xset fp+ /usr/share/fonts/X11/75dpi 
xset fp+ /usr/share/fonts/X11/misc 
xset fp+ /usr/share/fonts/X11/Type1 
xset fp+ /usr/share/fonts/X11/util 
xset fp rehash
xrdb $HOME/.Xresources
И без этого никак. Или генерить xorg.conf и лезть туда руками, но сейчас это считается некомильфо — иксы стартуют без конфига автоматически, да и сам формат конфига менялся такое бесчисленное количество раз, что лишний раз пачкаться об его редактирование ручками не хочется.

Почему я вообще должен что-либо знать про ALSA? А про всю эту внутреннюю кухню со шрифтами? Почему нельзя как холодильник — подошёл, включил, и оно работает? Почему не могут автоматизировать, почему до сих пор всё ломают и ломают? Я помню, как решались такие проблемы 10 лет назад и все эти ужасающие рекомендации по конфигурированию и настройке ОС. Во многом всё осталось таким же, ничего не меняется. :-( Выбор прост: либо готовый комбайн со всеми бэкдорами, либо трахайся самостоятельно с настройкой, но нормальных инструкций по сборке под себя нет. Любой рецепт быстро устаревает, ОС-специфичен и т.д.
— unknown (28/01/2015 22:08)   

Некоторые с пеной у рта убеждают, что на нём нельзя профессионально работать со звуком: музыкой там или радиотехнической разведкой анализом и обработкой сигналов. Вот только когда разберёшься, уже ни на что не променяешь и не потому, что куча времени угрохана на вхождение, а потому, что есть такие возможности, аналогов которым в других ОС часто нет.
Гость (28/01/2015 23:03)   

Про себя бы сказал, что, в том числе, и поэтому. Одна из главных претензий: драгоценное время тратится на изучение сиюминутной незначимой ерунды. Если б пользование холодильником требовало бы изучения многотомника, окупал ли бы холодильник себя? Чтобы водить машину, тоже нужно много что изучить, и это нередко останавливает людей как от её приобретения, так и от сдачи на права. Хотя те, у кого есть и машина и права, не хотят от них отказываться, это да.
— unknown (28/01/2015 23:18, исправлен 28/01/2015 23:21)   

Параноиков будет скоро останавливать то, что изучать надо слишком мало, а машины стали слишком умными и следят за владельцем через проприетарный бортовой компьютер. Я по этой причине стараюсь не приобретать «умную» закопирайченную-задээрэмленную электронику, особенно которая подключается к инету, имеет встроенный WiFi и т.д.



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

Гость (29/01/2015 02:32)   

Одна из таких возможностей — игнорирование настроек ~/.asoundrc:

F[link154]or some reason Firefox HTML 5 requires Card 0 of the snd_hda_intel no matter how you change it with asoundrc. You can make flash work using the asoundrc file, but HTML 5 audio is silent.

You must remap the PCM device in Linux as card 0 and remove the changes to asoundrc that were added to make flash work. This wiki page indicates that you should compile the snd_hda_intel driver into the kernel. Using this configuration you must remap the card 0 and card 1 devices using boot parameters instead of a /etc/modprobe.d/alsa.conf file.

Я уже не говорю здесь о том, что система настолько умная, что проигрывает звук не через ту карту, какую нужно. Эта цитата достойна увековечения на камне. Пройдёт 100 лет, и потомки вспомнят, что HTML5 игнорировало некоторые настройки ALSA, из-за чего звук везде работал, а в браузере — нет. Поистине это то, на разбирательноство с чем никогда не жалко тратить свою жизнь. Главное — насколько красиво и изящно это устроено внутри. Вроде бы должно, а бац, и не должно. Все думали, а оно оказалось. А вот вам так слабо сделать? И какое проницательное решение! Чтобы получить звук, надо что-то переопределить в опциях загрузчика ядра, причём иных решений нет. Очень правильное архитектурное решение.
Гость (29/01/2015 02:36)   
Там же:

The module is named snd_hda_intel, but the boot parameter name is snd-hda-intel.

А это? По-моему, гениально. Однажды об отличии в одной чёрточке в написании будут слагать былины. Сейчас это топ знаний человечества при работе со звуком, самый фронтир научных достижений.
Гость (29/01/2015 03:14)   
Я плачу до слёз. Это работает! Теперь даже в браузере! Никакие личные конфиги не нужны. Секрет прост — это магическая опция ядра. Это так же изящно, как отключать IPv6 — как ни отключай, иным образом он не отключится, только через опцию к грабу. Я теперь понимаю, какими отсталыми и жалкими кажутся со своими примитивными игрушаками BSD'шники «добавь block inet6 all в конец /etc/pf.conf». То ли дело — выкомпиливать из ядра или отключать на уровне загрузчика.

У меня есть гениальная мысль, как сделать ещё более изящное решение проблемы. Для этого в Gentoo-wiki надо положить инструкцию как расковарять ноут и паяльником выпаять эту несчастную лишнюю звуковую оттуда. Это будет ещё более труёво.

Когда я вводил уже сотый поисковой вопрос на тему, что же делать (везде звук есть, а в браузере нет), я как бы начинал догадываться, что дартаньяны здесь, как, впрочем, практически всегда, не они. А внутренний голос всё равно говорит «не работает, потому что ты не понимаешь ALSA inetrnals, надо просто изучить там всё, написать десяток-другой конфигов, перепробовать их все, и оно само пойдёт».

Мне даже стыдно сейчас подумать, что я сразу-то не догадался, что конфиги — они не для всех. И дефолты тоже. Вот хочет в Linux HTML5 брать нулевую карту всегда и берёт, и никто ему не указ. У него сильная независимая власть над ALSA'ой, идёт своей дорогой и ни под кого не прогибается. И не один он такой. dhclient вот тоже хочет и ходит[link155] сеть в обход iptables, срал он на общесистемный фаейрволл. И это круто. Всегда есть пространство для исключений, которые более равнее, чем всё остальное. Как скучна была бы жизнь в Linux, если б всё было унифицифровано и просто, со скукоты можно было б повеситься. А так всегда видно пространство для роста. Кто-то знает 10 костылей гениальных решений, другой 100, а третий тысячу. Это как у веб-верстальщиков, они просто молятся на баги, потому что их много, они ужасны, и мало кто знает, кроме них, как их фиксить разными костылями гениальными решениями. Им за это деньги платят.

это разработчики имеют право быть дартаньянами, а не я.[link156]
Гость (03/02/2015 14:33)   

Круть, неимоверная круть. Это работает! Правда, в Jessie пока не по умолчанию, надо вручную включать.
Гость (03/02/2015 14:37)   
Сейчас смотрю на права ping и ping6 в Debian jessie. Они, в отличие от su, почему-то не суидные. Как это так? ICMP же всегда от рута посылается. Они убрали возможнсть непривелегированных юзеров пользоваться ping'ом?
Гость (03/02/2015 17:10)   
Гость (03/02/2015 14:37), вероятно, они получили CAP_NET_RAW file capability.
Гость (03/02/2015 17:34)   
Спасибо, оно самое:
# getcap /path/to/ping
/path/to/ping = cap_net_raw+ep
# getcap /path/to/ping6
/path/to/ping6 = cap_net_raw+ep
C[link158]apabilities (POSIX 1003.1e) provide fine-grained control over superuser permissions, allowing use of the root user to be avoided. A setuid binary can be replaced with a more minimal set of capabilities. Many packages make use of capabilities, such as CAP_NET_RAW being used for the ping and ping6 binaries provided by iputils.

Но лучше всё равно их удалить (ping и ping6) из /bin от греха подальше.
Гость (06/02/2015 00:11)   
Через поиск попадаю в этот топик. Если не совсем в тему извиняйте.

Проблема следующего характера.
Установил на сменный носитель Debian 7x32 (образ с debian.org).
На одном из ПК стоит карта Radeon. Система не грузится.
При загрузке появляется строка, что нет драйвера. Посмотрел в Synaptic.
Xserver-xorg-video-all и Xserver-xorg-video-radeon установлены.
На ПК c видеоадаптером geforce запуск без проблем. Пробовал ставить систему на ПК с Radeon.
После первой перезагрузки проблема с драйвером. Хорошо. Ставлю пропроетарный с amd.com.
Но тогда проблема с загрузкой на ПК с intel.
Что делать не понятно. Вамриант с 2-мя флешками понятен, но не универсален.

ЗЫ Карта Radeon из новых 7 серия, и как водится, в свободных драйверах не числится.
Гость (06/02/2015 13:10)   
Запускайте иксы с драйвером VESA, fbdev или modesetting. Возможно, modesetting'а удастся добиться, если установить из http://backports.debian.org/ новое ядро.
Гость (06/02/2015 22:54)   
Так понимаю эти: xserver-xorg-video-vesa, xserver-xorg-video-fbdev.
Сейчас попробую.
Пробовал посмотреть в Tails что установлено, она на всех ПК грузится, пусть даже с проблемным расширением. Но не смог разобраться. Вроде в Wheezy у меня так же.
Гость (07/02/2015 00:11)   
Сравните /var/log/Xorg.0.log в Tails и у себя. Учтите, в Tails стараются поддерживать ядро очень свежим.
Гость (08/02/2015 01:35)   

Можете попробовать добавить nomodeset к опциям загрузки ядра в grub. Мне это помогало на некоторых типах железа.
Гость (08/02/2015 14:40)   

Эти установлены. Gnome не может запуститься.Ввожу пользователя и пароль.
Продолжительный завис, затем Смайл грустный и типа обратится к администратору. Все машина виснит.
Вроде билд последний 7.0.8. Debian 6 поморгает но запускается.
Гость (08/02/2015 14:41)   

Как сделать в кратце подскажете?
Гость (08/02/2015 15:47)   

Запускайте DE, которое не требует наличия работающего графического ускорения: GNOME Fallback (удалён из Jessie), Xfce, LXDE, KDE (после ряда настроек).

Нажмите "e" на пункте меню GRUB и допишите nomodeset к концу строки, которая начинается на "linux". Нажмите Ctrl+X. Если поможет, допишите в /etc/default/grub GRUB_CMDLINE_LINUX=... и выполните update-grub.
Гость (08/02/2015 18:08)   

Мне явно не хватает знаний. Извините.
Как поставить/запустить?

Мне кажется облегченные не очень функциональные DE. Могу ошибаться, но привык работать в Гноме.

Это при загрузке, когда меню загрузки?

Когда нажимать? При загрузке? Для каких целей?

Если действия выше помогут, нужно прописать их. Так?

В терминаде root?
Смущает многоточие.
Гость (08/02/2015 19:49)   

GNOME3 пользоваться почти не случалось, ушёл с GNOME2 на MATE. Пакет gnome-session-fallback установлен? На экране входа в систему можете выбрать "сессию"? Проверил LiveCD – наличие опции "GNOME Classic" обусловлено файлом /usr/share/xsessions/gnome-fallback.desktop из пакета gnome-session-fallback.


Именно. Появится возможность однократно изменить параметры загрузки данного пункта меню.


При загрузке. Чтобы применить изменения на один раз и загрузиться с ними.


В файле. Открыть /etc/default/grub любым текстовым редактором с правами суперпользователя, найти строчку GRUB_CMDLINE_LINUX="что-то" и дописать nomodeset в её конец (внутри кавычек).
Гость (09/02/2015 01:08)   

Все DE нефункциональны[link159], функциональна только командная строка и хоткеи.


Как можно быть настолько тупым?! Первое желание — отобрать у вас права на компьютер и отправить грядки окучивать. ПК — это хардкор. Сначала изучается литература и матчасть, только потом что-то ставится и настраивается. Смена опций ядра через grub — стандартная процедура, описанная в тысяче мест в сети. Её знает каждый нормальный линуксоид. Если б я был на вашем месте, я бы уже давно вбил в поиск GRUB_CMDLINE_LINUX, путь /etc/default/grub, нагуглил десяток инструкций, разобрался бы, всё испробовал, а тут отписался «так и так, вот это работает, вон то нет, причём, предположительно, потому-то и потому-то». Это не вопрос конкретных знаний, это вопрос умения работать с информацией. По-простому говоря, это просто наличие головы на плечах.

Гость мне выше в ответ на вопрос про ping ткнул[link160] в CAP_NET_RAW и всё, этого было достаточно. Я ввёл его в гугл, прочитал статьи на эту тему, нашёл тулзы по проверке этого флага, и даже сам убедился, что они там есть. О результатах отписался. До этого я никогда не слышал CAP_NET_RAW, понимаете? Почему вы не такой? Степень некоторых вопросов настолько дебильная, что очень хочется просто вайпнуть нахрен всех этих идиотов из интернета. Для неосиляторов основ Linux/UNIX есть форумы попроще, где всем, может быть, будет безумно интересно разбирать устройство гуёв, гнома и остальных свистоперделок. А здесь на сайте по умолчанию предполагается, что вы знакомы с командной строкой Linux/UNIX хотя бы на базовом уровне.
Гость (09/02/2015 01:21)   

Пшел нахуй гуглить дальше! ДЕБИЛ!!
Не нравится(?) – идешь мимо!
Гость (09/02/2015 01:26)   

Когда будет свой сайт, нищеброд, тогда будешь указывать кому и по каким правилам жить!
А пока посешься на чужих лужайках, заверни свре мнение в трубочку и сунь в очко гугл!
Гость (09/02/2015 05:21)   

После очередной перезагрузки ОС проблема самопофиксилась, так что более никаких хаки ненужны. Что это было — так и не понял. До этого никакие рестарты иксов не помогали. Вообще, странно, когда для чего-то в системе (помимо смены ядра) нужна именно перезагрузка.


Ты не понял, анон. Это, в т.ч., и мой сайт. Не будь таким толстым.
Гость (10/02/2015 03:14)   

Не помогает.
Во время загрузки как и прежде предупреждение, что нет драйверов для Radeon, с предложением установить проприетарные.
Загрузка окна ввода пользователь/пароль. После ввода продолжительное подвисание.
Затем сообщение что прозошла ошибка. Решил сбросить его Alt+F4. Появляется рабочий стол (!).
Но недолго радовался. Идет подтормаживание системы и через минут 5 на любом окне происходит зависание.

Если бы возможно было при загрузке выбирать драйвер адптера, то можно установить проприетарный с amd.com.
А так не вариант (.

Причем вот еще что интересно, вспоминаеться что 7.0.0 запускался нормально, но с понятно плохим разрешением. И все работало. Впервые столкнулся с этой проблемой в версии 7.0.4.
Гость (08/03/2015 16:02)   
Впродолжение тем про xscreensaver [1][link162], [2][link163] и локинг:


Наверно, запускать всё только в иксах — наименьшее зло, особенно с учётом включенного и тормозного framebuffer'а, который непонятно, как отключить, чтобы вместе с ним не легла поддержка иксов в графическом режиме и всё остальное, что на ладан дышит.

Другой вопрос — как сделать одновременное блокирование на все экранах из-под любого юзера, если sudo недоверяем. В голову приходит только костыль а-ля «IPC своими руками»: при запуске иксов запускаем автоматически скрипт, который время от времени будет проверять наличие каких-то файлов в /tmp. Как только файл появляется, юзер блокирует экран и удаляет его. Но если юзеров несколько, а права на блокировку нужно дать всем, всё это может несколько конфликтовать... Есть более простое решение? Даже требовать возможность блокировать все дисплеи только из тех иксов, где залогинен рут, априори неочеивидно, заработает ли это...
Гость (08/03/2015 16:17)   
Вроде бы есть такие локеры, которые блокируют переключение на другие дисплеи или в консоль. С их помощью можно получить нечто похожее на «блокирование всего», но вот насколько этому можно серьёзно доверять — вопрос тонкий...
Гость (08/03/2015 16:20)   

Если под рутом выполнить
# DISPLAY=:0.0 xscreensaver-command -lock
или
# xscreensaver-command -lock -display :0.0
то это не заработает. Он считает, что доступа к иным иксам у него нет, и пишет, что не определён протокол.
Гость (15/03/2015 21:04)   

FAQ:
  1. W[link164]hen I'm logged in as root, xscreensaver won't lock my screen!
  2. When I'm logged in as root, xscreensaver won't launch at all!

Тоже интересно с точки зрения безопасности:

FAQ:
  1. Programs sometimes pop up dialog boxes over the screen saver while my display is locked, and I wish they didn't.

Ещё интересней:

FAQ:
  1. Shouldn't xscreensaver disable Ctrl-Alt-Backspace while the screen is locked?

Yes, it should. Unfortunately, that's not possible with current versions of XFree86 or XOrg. It's as if the developers of X11 and the Linux kernel want to make it as hard as possible for you to lock your screen.

Backdoor #1: Ctrl-Alt-Backspace.

Backdoor #2: Ctrl-Alt-F1, Ctrl-Alt-F2, etc.

Backdoor #3: Alt-SysRq-F.

Backdoor #4: Ctrl-Alt-KP_Multiply.

This keystroke kills any X11 app that holds a lock, so typing this will kill xscreensaver and unlock the screen. This "feature" showed up in the X server in 2008, and as of 2011, some vendors are shipping it turned on by default. How nice. You can disable it by turning off AllowClosedownGrabs[link165] in xorg.conf.

...

There's little that I can do to make the screen locker secure so long as the kernel and X11 developers are actively working against security. The strength of the lock on your front door doesn't matter much so long as someone else in the house insists on leaving a key under the welcome mat.

In an ideal world, there would be a single X11 request named something like XGrabMagicKeys() that would, analagously to XGrabKeyboard(), disable all of these magic keystrokes until the grab was released or the program exited. It should be an X11 call, not an ioctl(), and especially not a root-only ioctl(). Needless to say, no such interface exists.

Кстати, нигде в мануалах не нашёл полного описания resources для xscreensaver'а. Есть краткое объяснение по некоторым опциям в /etc/X11/app-defaults/XScreenSaver-nogl и всё. Опции друг друга перекрывают, странно друг с другом взаимодействуют, победить удаётся далеко не всегда. Например, переопределить xscreensaver*passwd.passwd.label так и не удалось. Если опции прописать в ~/.xscreensaver, то они вообще перестают им приниматься (писал, начиная и просто и со звёздочкой, ориентируясь на примеры типа этих[link166]). В лоб проверяешь по 10 раз одно и то же, протираешь хрустальные шары, воешь на Луну, а всё бесполезно. В документации написано, что должно работать, а не работает. Если включить логи, пишет unknown option. Unknown option — она не просто unknown, она вкомпилена в бинарь, если проверить по ldd, но всё равно unknown...

Кстати, в xdm с исправлением приглашения тоже проблемы. В какой-то момент удалось поменять «Password: » на что-то иное, но комп завис. После перезагрузки как ни колдовал, не получилось, не принимает опцию и всё. Уже не говорю про всякие мелкие неприятности, типа «/etc/init.d/xdm restart не перезапускает иксы: один-два сервера остаются неубитыми, их приходится убивать вручную, а потом делать /etc/init.d/xdm start; с одними-двумя X-серверами работает нормально, с большим числом лезут такие проблемы; видимо, дело в поддержке видеокарты».


Если не хочется открывать дырки с su, можно завести отдельного юзера с иксами и из-под него получить рута по SSH. Заодно решится вопрос запуска xscreensaver'а, он теперь не от рута будет. Не очень, наверно, хорошо, но можно из-под этого же юзера так же по SSH (или непосредственно) контролировать tor-arm.
Гость (19/03/2015 02:59)   
Посвящается ressa'е и unknown'у

Скриптомесево №2



Итак, решение (почти) всех проблем в одном флаконе:
  1. Автофикс раскладки.
  2. Поддержка блокировки всех X-дисплеев из-под любого из них.
  3. Per user $TMP: пусть все временные файлы конкретного юзера хранятся в /tmp/$USER вместо /tmp, чтобы не давать посторонним юзерам на этой же машине видеть их список.

В $HOME каждого юзера (иксов) создаём файлы:


  1. $HOME/bin/lock.sh:
    #!/bin/sh
     
    LOCK_DIR=/tmp/.lock_dir
    LOCK_FILE=$LOCK_DIR/lock_file
     
    if ! [ -d $LOCK_DIR ] ; then
        mkdir $LOCK_DIR
        chmod go+rwx $LOCK_DIR
    fi
     
    while true ; do
        if [ -f $LOCK_FILE ] ; then
            xscreensaver-command -lock
            # Wait while other X servers will catch the signal too:
            sleep 5
            rm $LOCK_FILE
        fi
        sleep 1
    done
  2. $HOME/bin/xkbd.sh:
    #!/bin/sh
     
    process(){
        while read line; do 
            case "$line" in
                UNBLANK*)
                    setxkbmap -layout us,ru
                ;;
                LOCK*)
                    setxkbmap -layout us
                ;;
            esac
        done
    }
     
    # Ждём, пока запустится сам xscreensaver следующей 
    # команадой в ~/.xsession (exec xscreensaver):
    sleep 1.5
    /usr/bin/xscreensaver-command -watch | process
  3. $HOME/bin/mktmp.sh:
    #!/bin/sh
     
    USERTMPDIR=/tmp/$USER
     
    FLAG=false
    if ! [ -d $USERTMPDIR ] ; then
        mkdir -p $USERTMPDIR
        chmod go-rwx $USERTMPDIR
        FLAG=true
    elif [ -O $USERTMPDIR ] ; then
        FLAG=true
    fi
     
    if $FLAG ; then
        TMPDIR=$USERTMPDIR
        TMP=$TMPDIR
        TEMP=$TMPDIR
        export TMPDIR TMP TEMP
    fi

Редактируем файлы (под каждым юзером, работающим с иксами):


  1. ~/.xsession:
. $HOME/bin/mktmp.sh
sh -c "setxkbmap -layout 'us,ru(winkeys)' -option 'grp:caps_toggle,grp_led:scroll'"
xrdb $HOME/.Xresources
xset b off
YOUR_WIDOW_MAKER &
$HOME/bin/lock.sh &
$HOME/bin/xkbd.sh &
exec xscreensaver

  1. В оконном менеджере YOUR_WIDOW_MAKER хоткей локальной блокировки (только текущих иксов) вешаем на команду xscreensaver-command -lock, а хоткей глобальной блокировки — на команду touch /tmp/.lock_dir/lock_file.

  1. Редактируем ~/.zshrc, чтобы в его начале было
    . ~/bin/mktmp.sh
    а также добавляем (место неважно) строки
    export LESSHISTFILE=$TMP/.lesshist.$USER
    HISTFILE=$TMP/.zhistory.$USER
  2. Редактируем ~/.vimrc, добавляя туда строку
    set viminfo+=n$TMP/.viminfo.$USER
  3. (Опционально) Убираем всю ненужную информацию из окна приглашения xscreensaver'а, добавляя в ~/.Xresources:
xscreensaver.cycle:                 0
xscreensaver.lock:                  True
xscreensaver.lockTimeout:           0
xscreensaver.pointerPollTime:       1
xscreensaver.splash:                False
xscreensaver.splashDuration:        0
xscreensaver.overlayTextBackground: #ffffff
xscreensaver.fade:                  True
xscreensaver.fadeSeconds:           0
xscreensaver.timeout:               20
xscreensaver.timestamp:             False
xscreensaver*dateFormat:            
xscreensaver*Dialog.headingFont:            YOUR_FONT
xscreensaver*Dialog.bodyFont:               YOUR_FONT
xscreensaver*Dialog.labelFont:              YOUR_FONT
xscreensaver*Dialog.buttonFont:             YOUR_FONT
xscreensaver*Dialog.dateFont:               YOUR_FONT
xscreensaver*passwd.passwdFont:             YOUR_FONT
xscreensaver*passwd.body.label:             
xscreensaver*passwd.user.label:             
xscreensaver*passwd.uname:                  False
xscreensaver*newLoginCommand:               cat > /dev/null
xscreensaver*passwd.heading.label:          
xscreensaver*passwd.login.label:            
xscreensaver*passwd.passwd.label:           test
xscreensaver*passwd.asterisks:              False
xscreensaver*Dialog.foreground:             #010101
xscreensaver*Dialog.background:             #000000
xscreensaver*Dialog.Button.foreground:      #000000
xscreensaver*Dialog.Button.background:      #000000
xscreensaver*Dialog.Button.pointBackground: #000000
xscreensaver*Dialog.Button.clickBackground: #000000
xscreensaver*Dialog.text.foreground:        YOUR_COLOR
xscreensaver*Dialog.text.background:        #000000
xscreensaver*passwd.thermometer.foreground: #000000
xscreensaver*passwd.thermometer.background: #000000
xscreensaver*Dialog.topShadowColor:         #000000
xscreensaver*Dialog.bottomShadowColor:      #000000
xscreensaver*Dialog.logo.width:             200
xscreensaver*Dialog.logo.height:            300
xscreensaver*Dialog.internalBorderWidth:    0
xscreensaver*Dialog.borderWidth:            0
xscreensaver*Dialog.shadowThickness:        0
xscreensaver*programs: \
    feh -F /path/to/file/wallpaper.jpg \n

  1. (Опционально) С xdm'ов тоже зачищаем всю ненужную информацию:
    xlogin*greeting:
    xlogin*passwdPrompt:
    xlogin*namePrompt:
    xlogin*promptColor: black
    xlogin*fail:
     
    #ifdef COLOR
    xlogin*geometry: WIDTHxHEIGHT+0+0
    xlogin*borderWidth: 0
    xlogin*frameWidth: 0
    xlogin*innerFramesWidth: 0
    xlogin*shdColor: black
    xlogin*hiColor: black
    xlogin*background: black
    xlogin*greetColor: YOUR_COLOR
    xlogin*failColor: YOUR_COLOR
    *Foreground: YOUR_COLOR
    *Background: black
    #else
    ...
    #endif

Как это работает


  1. Переопределение /tmp:

    При старте из ~/.xsession выполняется скрипт mktmp.sh, который проверяет наличие ранее созданной директории /tmp/$USER и её принадлежность юзеру. Если её нет, директория создаётся, переменные среды экспортируются. Потом эти же переменные для гарантии экспортируются ещё и в конфиге шелла. Уязвимость: посторонний юзер может создать в /tmp директорию с чужим $USER, тогда файлы туда поидее писаться будут не должны, но это может привести к глюкам [можно пофиксить, выбирая рандомное имя для директории (кстати, man mktemp), но тогда в конфиге шелла придётся дополнительно выяснять, есть ли ранее созданная директория, и кому она принадлежит, чтобы в случае уже имеющейся не создавать новую].

  1. Блокировка всех дисплеев:

    При старте иксов запускается демон lock.sh, который отслеживает появление файла /tmp/.lock_dir/lock_file, сигнализирующего о блокировке кем-то под другими иксами (посольку файлы в /tmp создаются со sticky-битом, в самом /tmp такой файл было бы не создать — посторонние не смогли бы его удалить никак, поэтому пришлось создавать промежуточную директорию .lock_dir). Если сигнал получен, демону xscreensaver передаётся команда на блокировку, а перед удалением файла-сигнала делается 5-секундный таймаут (этого должно хватить, чтобы демоны под остальными иксами успели узнать, что файл появился, и успели заблокировать свои иксы). Теоретически, если слишком часто и быстро блокировать и разблокировать разные иксы, могут быть глюки, но пока их замечено не было. Блокировка происходит практически мгновенно, а пока пароль наберёшь, 5 секунд уже проходит, так что файл успевает удалиться до разблокировки, даже если делать разблокировку сразу же после блокировки. Понятно, что злонамеренный юзер может блокировать экран дргих юзеров. Может быть, могут быть ещё какие-то шелл-специфические уязвимости (возможность у одного юзера принудить другого к выполнению каких-то команд со своими правами), но я их так сходу не вижу. Если что, «глобальная блокировка» абсолютно эквивалентна следующим действиям: вручную поочерёдно переключиться в каждые из иксов и локально выполнить xscreensaver-command -lock, никаких сайд-эффектов нет. Чтобы это давало ожидаемую безопасность, никто не должен быть залогинен в текстовых консолях (рута можно получать по SSH из-под специально выделенного пользователя, тоже логинящегося через иксы).

  1. Пофикс раскладки:

    С раскладкой всё аналогично: при старте иксов запускается демон xkbd.sh, который отслеживает состояние демона xscreensaver'а. Если зафиксировано блокирование экрана, раскладка меняется на английскую, если разблокирование — то делается возврат к русско-английской (переключатель раскладки уже задан в ~/.xsession, поэтому его менять не требуется). Демон xscreensaver'а генерирует строку об изменении состояния, только когда оно реально произошло, поэтому висящий в памяти в бесконечном цикле процесс ничего лишнего не ест и реагирует только тогда, когда надо.

  1. XScreenSaver:

    Конфигом xscreensaver'а убирается всё лишнее, остаётся только логотип и имя пользователя, при наборе пароль не отображается. Логотип прибит гвоздями к коду и так просто (без перекомпиляции xsreensaver'а) его, возможно, ни заменить, ни убрать (автор сильно возражает против таких действий, считая его своего эквивалентом упомиании авторства и лицении продукта). Многие поля глючат и не удаляются, это решается стандартным хаком: делаем чёрный фон и на нём чёрные буквы (xscreensaver'у это иногда не нравится и он начинает умничать и глючить как консоль, включая принудительную инверсию цветов, но это обходится хаком «выставим цвет шрифта почти чёрным: #000001»). В принципе, имя пользователя этими хаками тоже можно убрать (помня, на каком дисплее какой юзер залогинен, это не составляет большой проблемы, а по незначительному перемещению логотипа по экрану можно различать режим ввода пароля и режим его проверки). Все свистелки и рюшечки отключены, по умолчанию рисуется картинка (wallpaper) и всё (никаких анимаций). В идеале можно сделать так, что постороннему будет вообще непонятно, что происходит на экране, и работает ли компьютер вообще.

  1. XDM:

    С настройкой xdm всё сделано аналогично: есть возможность набрать имя пользователя и нажать Enter, ничего более на экране не пишется, даже слов login и password (как и в случае xscreensaver'а). В xdm достаточно легко сделать полностью чёрный экран без каких-либо опознавательных знаков. Правда, большого смысла это не имеет, если аналогичным образом не «пофиксить» приглашение в консоли. С учётом того, что цвет шрифтов в тип курсора по умолчанию (до логина пользователя) в консоли в Linux никак, похоже, штатно не меняется, проблема пофикса консоли нетривиальная.

Что не работает


После переопределения $TMP в стандартный /tmp перестают попадать: файлы истории шелла, less'а и vim'а, а также директория pulse-XXXXXX, создаваемая при проигрывании музыки (она создаётся, даже если сам pulseaudio не установлен — видимо, наличия библиотек уже достаточно). Однако, файлы /tmp/ssh-XXXXXX и /tmp/gpg-XXXXX продолжаются писаться на конвенциональные места, и простого решения этим проблемам не видно. В этих директориях находятся так назыаемые сокеты, путь к ним — переменная $SSH_AUTH_SOCK (а какая в случае gpg-agent'а — даже не понял). Опции изменения /tmp для ssh и gpg не нашёл. Что ещё интересно, директория /tmp/ssh-XXXXX создаётся автоматичеки при логине юзера, даже если у него нет никаких SSH-специфических настроек, т.е. проблема сидит где-то выше на системном уровне (/etc/ssh/ssh_config?). В общем, было бы хорошо, если б кто-то подсказал, можно ли решить проблему с запихиванием временных файлов SSH и GnuPG в кастомный $TMP.

P.S. Источники вдохновения: первый[link168] и второй[link169].
Гость (19/03/2015 03:13)   

Поскольку команда неспецифична для методики, похожим образом можно пробрасывать и другую информацию в чужие иксы — к примеру, посылать туда нотификацию о получении новых сообщений в IM.
Гость (19/03/2015 06:53)   

После убийства xscreensaver'а (и, следовательно, запущенных иксов) ранее запущенные демоны остаются (не убиваются), что плохо. Решается вешанием на хоткей выхода из иксов (разлогина) команды
sh -c 'pkill -9 -U $USER xkbd.sh; pkill -9 -U $USER lock.sh; pkill -2 xscreensaver'


Типа такого (пофикс вышеприведённого файла lock.sh):
#!/bin/sh
 
LOCK_DIR=/tmp/.lock_dir
LOCK_FILE=$LOCK_DIR/lock_file
 
FONT="YOUR_FONT"
NOTIFY_FILE=$LOCK_DIR/notify
SIGNAL_FILE=$LOCK_DIR/signal
COMMAND_NOTIFY="osd_cat -l 70 -d 2 -c cyan -o 100 -i 80 -a -s 0 -f $FONT" 
COMMAND_SIGNAL="osd_cat -l 70 -d 2 -c green -o 100 -i 80 -a -s 0 -f $FONT" 
 
if ! [ -d $LOCK_DIR ] ; then
    mkdir $LOCK_DIR
    chmod go+rwx $LOCK_DIR
fi
 
while true ; do
    if [ -f $LOCK_FILE ] ; then
        xscreensaver-command -lock
        sleep 5
        rm $LOCK_FILE
    fi
    if [ -f $NOTIFY_FILE ] ; then
        echo "notification" | $COMMAND_NOTIFY &
    fi
    if [ -f $SIGNAL_FILE ] ; then
        echo "signal" | $COMMAND_SIGNAL &
    fi
    sleep .7
done
А скрипты под другим юзером (под другими иксами) создают файлы notify и signal при срабатывании каких-то событий. Это лишнее связывание юзеров, оно ведёт к утечке, но в каких-то случаях приемлемо ради удобства.

Ещё один нюанс — какие глюки будет, если залогиниться в нескольких иксах под одним и тем же юзером. В принципе, должно работать, но при выходе из одних из иксов будут убиты и вторые, если выходить с помощью хоткеев.
— SATtva (19/03/2015 07:39)   

Похоже на название какой-то хэви-митол-группы или огнестрела. :)


man gpg-agent ⟶ --use-standard-socket. Задать произвольный путь нельзя, но вообще странно, что gpg-agent не берёт путь к временной директории из $TEMP. Он точно у Вас не запускается до переопределения переменной?
Гость (19/03/2015 08:09)   

Это так в определённых кругах прозвали WM, который был некогда популярен (window maker). Я в этом плане не блещу оригинальностью, у меня браузерный wm из той же серии, что у вас и unknown'а.


Во-первых, очень не хочется свои скрипты менять. После включения этой опции, я так понимаю, они[link170] не заработают правильно. Во-вторых, не хочется ничем лишним засорять $HOME (почти все связки и так были вынесены в нестандартные директории). В-третьих, непонятно, как включение этой опции скажется на безопасность. Наверно, не в лучшую сторону. Вы сами что по поводу этой опции думаете? Ну, и скрытие файлов в /tmp — это всё равно рюшечка, так или иначе, т.к. по-хорошему нужны виртуалки.


Проверка в лоб из консоли:
$ echo $TEMP
/tmp/USER
$ echo $TMP
/tmp/USER
$ gpg-agent
gpg-agent[XXXXX]: directory `/home/USER/.gnupg/private-keys-v1.d' created
gpg-agent: no gpg-agent running in this session
$ gpg-agent --daemon
GPG_AGENT_INFO=/tmp/gpg-XXXXXX/S.gpg-agent:XXXXX:X; export GPG_AGENT_INFO;
Новая директория после этого создаётся как /tmp/gpg-XXXXXX.

Агент (там, где он нужен) запускается вручную, причём тогда, когда уже всё, что можно, запущено, так что проблем с переменными быть не должно.
Гость (19/03/2015 08:12)   

Где-то в гугле натыкался, что путь как-то связан с опциями (man ssh_config) ControlMaster, ControlPath и ControlPersist, но мне показалось, что через них /tmp всё равно не переопределить.
Гость (19/03/2015 08:28)   

Недавно открыл для себя несколько альбомов Lacrimosa'ы, и пока занимался делом, всё это время её слушал и проникался, так что что-то в этом определённо есть. :)
— SATtva (19/03/2015 08:38)   

Сама по себе, это просто convenience-опция, один из возможных юз-кейсов приведён там же в мане. Просто в определённых случаях её в принципе не удастся использовать, например, если gpg-agent запускается от отдельного юзера.
Гость (19/03/2015 09:03)   
Я правильно понимаю, что при использовании этой опции никакие TMP для gpg-agent'а не будут нужны вообще, и файлов gpg-XXXXXX попросту не будет — вместо этого он будет создавать специальные файлы-сокеты в $HOME?
Гость (19/03/2015 09:09)   
А, всё понятно:
$ gpg-agent --daemon --use-standard-socket
GPG_AGENT_INFO=/home/USER/.gnupg/S.gpg-agent:XXXXX:X; export GPG_AGENT_INFO;
В /tmp ничего не создаётся. Да, неплохо, и всё выглядит похоже, так что можно попытаться переделать автоматику под этот случай.
Гость (19/03/2015 10:02)   

Сделано [1][link172].


Тревога была ложной (подумал, что это как-то заденет опцию --write-env-file и извлечение переменных, которые она пишет).

Возвращаясь к вопросу об SSH:

-a bind_address
Bind the agent to the UNIX-domain socket bind_address. The default is $TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>.

FILES
$TMPDIR/ssh-XXXXXXXXXX/agent.<ppid>
UNIX-domain sockets used to contain the connection to the authentication agent. These sockets should only be readable by the owner. The sockets should get automatically removed when the agent exits.

© man ssh-agent. Однако, аналогично GnuPG он себя не ведёт, как там описано:
$ echo $TMPDIR
/tmp/USER
$ ssh-agent
SSH_AUTH_SOCK=/tmp/ssh-XXXXXXXXXXXX/agent.XXXXX; export SSH_AUTH_SOCK;
SSH_AGENT_PID=XXXXX; export SSH_AGENT_PID;
echo Agent pid XXXXX;
Впрочем, решается тоже аналогично:
$ ssh-agent -a ~/.ssh/agent.XXX
SSH_AUTH_SOCK=/home/USER/.ssh/agent.XXX; export SSH_AUTH_SOCK;
SSH_AGENT_PID=XXXXX; export SSH_AGENT_PID;
echo Agent pid XXXXX;
Единственная засада в том, что кто-то ssh-agent запускает сразу при логине в иксы, поэтому пока единственный костыль — убивать через скрипты ранее запущенный агент и запускать его повторно с правильной опцией -a.
— unknown (19/03/2015 10:47)   
2 /comment90508[link173]: идея полезная, в реализацию пока не вникал, но создайте уже документ в черновиках, а то так скоро докатимся до диффов в анонимных коментах, которыми надо будет патчить скрипты из этих же коментов прямо в уме :)
Гость (19/03/2015 11:42)   

В отличие от скриптомесева №1[link174] тут вы уже не сможете сказать, что надо тупо писать тысячи строк решать задачу встроенными средствами, потому что она ими уже никак не решается без сторонних костылей. Впрочем, можно сказать, что надо вручную переключаться между разными дисплеями и каждый по отдельности вручную блокировать, рискуя что-то забыть или не успеть, чтобы не усложнять логику работы.


Тут сборная солянка получилась. Если убрать обвеску и оставить минимальное, то всё будет просто: скрипт lock.sh и команды запуска в ~/.xsession, всё остальное — излишества под персональные вкусы и заскоки. Неудобства с раскладкой можно пережить, прятки в /tmp по уму решаются только разделением юзеров по виртуалкам, (безопасный?) проброс произвольной инфомации между разными иксами не совсем в тему, а настройка внешнего маскировочного вида xdm'а и xscreensaver'а — во многом вопрос личных вкусов и предпочтений, хотя я старался его делать с упором на безопасность (чёрный ящик должен быть чёрным, а не серым). Если у вас есть желание что-то из этого улучшать/редактировать, скопируйте нужную часть вики-сорса и поместите, куда считаете нужным (я повторную злостную войну с вики-разметкой не осилю, там и так баги движка лезли в несметном количестве, кое-как их под ковёр замёл).
Гость (19/03/2015 11:48)   

А это хорошая идея, надо будет взять на вооружение, ибо часто хочется показать обновлённую версию скрипта, а повторная публикация полного его текста из-за какой-то пары изменившихся строк смотрится несолидно (недостатоно новизны для написания содержательной статьи коммента). И тут могут прийти на помощь диффы!
— unknown (19/03/2015 12:05, исправлен 19/03/2015 12:08)   

Вот этим мне и не нравятся скриптовые решения — каждый лепит по своему вкусу. Это допустимо и нормально, ведь скрипт — не минималистичная утилита. Тогда лучше набор команд с коментами, а каждый пусть сам из них соорудит скрипт под свои задачи. А авторский скрипт уже в конце повествования отдельным документом, как пример реализации идеи. Кто хочет, пусть изучает целиком.



И ресурс превращается … в аналог анонимной почтовой рассылки.

— SATtva (19/03/2015 13:04)   
Особенно если использовать минималистичные диффы из нового движка:

Гость (20/03/2015 01:59)   

Не очень понятно, как это делать. ☹ Дело в том, что после разлогина закешированные ключи SSH (keychain) остаются в памяти, и это удобно. Если убивать все ssh-agent'ы, то убьются и полезные. Надо как-то тонко это учитывать…


Только не надо говорить, что те мои три скрипта сложные. ☺ На самом деле, проблема в том, что мало кто хорошо знает шелл, а способов сделать одно и то же есть миллион. Я не зря в конце поста процитировал:

P[link173].S. Источники вдохновения: первый[link168] и второй[link169].

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

Кстати, дело даже не в скрипте. Многие скрипты сами по себе без надлежащих правок в других конфигах, определённых системных настройках и объяснений происходящего просто бессмысленны. Т.е., отделять надо, я бы сказал, не скрипты, а конкретные how-to [инструкции], частью которых являются скрипты.


Для большего минимализма можно добавить архивирование [сжатие] алгоритмом с pgpru-специфичным словарём, учитывающим частоту употребления тех или иных слов на сайте. В пределе точных частот Хаффман[link175] лично гарантирует максимум сжатия.
Гость (20/03/2015 02:35)   
In Debian, ssh-agent is installed with the set-group-id bit set, to prevent ptrace(2) attacks retrieving private key material. This has the side-effect of causing the run-time linker to remove certain environment variables which might have security implications for set-id programs, including LD_PRELOAD, LD_LIBRARY_PATH, and TMPDIR. If you need to set any of these environment variables, you will need to do so in the program executed by ssh-agent. © man ssh-agent

Может быть, это всё и объясняет (в том числе и то, почему ssh+torsocks не дружит с DNS*)? Debian всех умнее, всех румяней и мудрее.

* Упоминание:
s[link176]sh через такую соксификацию работает, только если вместо хоста указать IP-адрес.
Гость (21/03/2015 03:58)   

Если посмотреть на pstree, можно увидеть, что запуск иксов — команды
/usr/bin/ssh-agent /home/USER/.xsession
Всему виной то, что в /etc/X11/Xsession.options указано use-ssh-agent (там же заодно можно отключить и use-session-dbus, включенный по умолчанию).

use-ssh-agent
If the ssh-agent(1) program is available and no agent process appears to be running already, the X session will be invoked by exec'ing ssh-agent with the startup command, instead of the startup command directly. © man 5 Xsession.options

В общем, после отключения опции ssh-agent не запускается, а в /tmp ничего лишнего не создаётся, что решает проблему для тех юзеров, которым SSH не нужен. С теми, кому он нужен, пока не тестировал.
Гость (25/03/2015 09:35)   

Ещё одно применение: таким образом можно сбрасывать цепочки из-под недоверенного юзера. Юзер пишет сигнальный файл в директорию и через какое-то время его удаляет, а демон под рутом периодически проверяет его наличие; если появился, то отдаёт сигнал Tor'у kill -1.

Совсем недоверенным юзерам, конечно, лучше не доверять и это, а то ещё начнут бесконтрольно постоянно цепочки сбрасывать... Метод хорош тем, что давать доступ к управляющему порту не нужно.
— sentaus (29/03/2015 22:13)   
Всему виной то, что в /etc/X11/Xsession.options указано use-ssh-agent (там же заодно можно отключить и use-session-dbus, включенный по умолчанию).

После окончательного решения вопроса с init и внедрения systemd всё это будет настраиваться наверняка в другом месте.
Гость (30/03/2015 03:19)   
В Debian 8.0 никто не запрещает поставить SysV init вместо дефолтного systemd. Наверняка полностью init уберут ещё не скоро, к тому времени будет видно, что делать. Форки вида «Debian без systemd» плодятся уже сейчас.
— unknown (30/03/2015 10:34)   

Всё никак руки не доходят проверить эту несложную идею. Ведь утонет в форуме, раз не оформлена отдельным документом. Меня интересует вариант, что под SELinux пользователи не могут читать файлы друг друга, а демон, даже запущенный под рутом, не сможет читать в /tmp файлы пользователей. А давать демону нестандартные расширенные права — тот ещё гемор.
Гость (31/03/2015 01:25)   

Боитесь забыть о её существовании или потерять ссылку? Спросите, что ищете, и вам могут подсказать, где это лежит.


Так там права rwx на директорию и r на все файлы внутри неё. Этого недостаточно? Нужно именно владение?
Гость (03/04/2015 00:54)   
посмотрел тут на досуге netstat -nr и чудо чудное:
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 ethX

Толи после какого обновления, то ли еще после чего появилась эта запись, а точнее стал определяться zeroconf.
Есть у кого опыт коректно отрубить, ибо не имею такого опыта. Наткнулся на кривые предложения по удалению/отключению.
Гость (05/04/2015 17:52)   

   Стандартный адрес то ли для каких-то броадкастов, то ли ещё чего, уже не помню. Это винда в основном такими адресами страдала, в Linux'ы только недавно добавили. Вывод надо делать netstat -apn — тогда будет видно, какой процесс это запускает, и дальше уже удалять этот процесс из авторстарта.


   Если используется удобный и искоробочный keychain, то дела обстоят так: он при запуске проверяет агенты (ssh- и gpg-), и, если один из них не обнаружен, то запускает их. Есть опция --agents, где можно принудительно указать, что запускать, но работает она, похоже иначе: это принудительный запуск чего-то помимо уже запущенного, а не запуск «этого и только этого, что указано в опции». Ну, т.е., если ssh-agent уже запущен, и keychain определило его наличие, то запускать не будет; а если укажем --agents ssh, то оно запустит ещё один лишний ssh-agent поверх имеющегося. Это первая проблема. Её можно было бы решить, убивая в каком-нибудь скрипте ненужные агенты сразу после запуска keychain.
   Вторая проблема состоит в том, что при запуске ssh-agent'а с завязкой на сокет (опция -a), процесс не висит: он создаётся, пишет переменные среды в терминал и тут же умирает, в списке процессов его больше нет. Переменные среды в текущем шелле остаются. Нормально ли такое поведение — не знаю, но keychain его никак не видит, поэтому при запуске само запускает ssh-agent. Я пытался поизвращаться как-то типа
$ ssh-agent -a /path/to/ssh-socket-name keychain ~/.ssh/*.ssh
но это тоже ничего не дало. После некоторых экспериментов создалось впечатление, что keychain в принципе не улавливает те агенты, которые зацеплены на сокеты (впрочем, раз для тех и процессов нет, то, может быть, дело всё-таки не в keychain). Скажем так, при --use-standard-socket gpg-agent запускается и висит в процессах, а тут даже процесс не висит. Возможно, это всё опять же из-за тонкостей реализации SSH-тулзов в Debian, как на это в man'ах намекают.
   По итогам этих изысканий складывается впечатление неразрешимости проблемы. Надо либо терпеть то, что временные SSH-файлы будут складываться напрямую в /tmp, либо полностью отказываться от запуска каких-либо агентов для SSH (к примеру, снять пароли с SSH-ключей и каждый раз указывать их параметром к ssh-командам).
Гость (28/04/2015 19:00)   
Л[link180]еннарт как-то сказал, что баги системд теперь должны исправлять мейнтейнеры тех дистров, в которых они были обнаружены. Лол. Апстрим системд, похоже, теперь только разрабатывает фичи...

Это правда? ☺ Правда:

Я[link181] не могу отрицать, что мы, как команда разработчиков [широкоиспользуемого] апстрима, получили порядочную степень влияния. Тем не менее, не мы занимались интеграцией systemd в дистрибутивы; это делали их разработчики. Мы даём базовые рекомендации о том, как следует поставлять и использовать компоненты systemd, но вообще это не наше дело. Дистрибутивы регулярно многое переделывают или вносят изменения в код, и это абсолютно нормальная ситуация. В самом деле, даже Fedora и RHEL иногда делают некоторые вещи по-другому, при том что я сам участвую в сборке systemd для этих дистрибутивов! Мы предоставляем основу, а дистрибутивы затем адаптируют её к своим нуждам.

Мы стараемся обеспечить разнообразие в команде разработчиков systemd; сделать так, чтобы она отражала мнение сообщества в целом. Среди нас есть люди из Debian, Canonical, Mageia и Tizen (о Fedora/RHEL вы наверняка уже догадались). Вообще говоря, одна из наших задач — это плавно прекратить управлять происходящим.

Хорошо поржал на подчёркнутой фразе... ☺

п[link182]оттеринг принципиально скидывает это на дистростроителей, он открыто говорит, что "мне пох, их возня"
— unknown (28/04/2015 21:25)   
Вообще-то, такое отношение апстримеров у большинства проектов. Например, как в OpenSSL[link183].
Гость (28/04/2015 21:36)   
Да, но я так понял по ваше ссылке, что это всё же не то, что есть гут.
— unknown (28/04/2015 21:43, исправлен 28/04/2015 21:44)   

А всё этим не гут и закончится. Другое дело, что systemd, похоже, неизбежен. Несмотря на то, что он — такой же кошмар как и OpenSSL. Его неподдержка, частичная поддержка, возможность выпиливания — чисто формальная.

Гость (28/04/2015 22:19)   
Почему чисто формальная? При выпиливании от systemd остаются только либы.
— SATtva (29/04/2015 07:33)   

Переходите на Gentoo.
— unknown (29/04/2015 09:44, исправлен 29/04/2015 09:46)   

И работоспособность официально не гарантируется. Пока мы оказываемся в положении выбора самого плохого из двух зол одновременно: что-то уже может не работать без systemd, а что-то — ещё быть не допиленным для работы с ним.



LFS, дистросрач. Сильно подозреваю, что много чего будет на него завязано почти намертво и Gentoo это не разрулит. Первый кандидат — SELinux. Затем, могут быть всякие штуки, связанные со звуком. В своё время все также шарахались от LVM или от GRUB. В принципе, можно до сих пор ими не пользоваться.

Гость (29/04/2015 11:42)   

Я предполагал, что по ссылкам вы не ходите, но не до такой же степени, как оказалось... Ссылка [5] в комментарии[link184] ведёт на:

"With jessie, it will become /easier/ to choose the init system, because neither init system is essential now. Instead, there is an essential meta-package "init", which requires you to install one of systemd-sysv | sysvinit-core | upstart. In other words, you have more choice than ever before."

This statement is actually correct; until this change it was not possible to completely replace sysvinit with another init system without running dpkg-divert commands to divert the init away.

When, in fact, there IS no way to prevent systemd from being installed during installation (except for upgrades).

That preseeding doesn't do this is a bug, it's filed (#668001), and the patch for it was just written on Friday the 17th. Because Debian is going to freeze in less than three weeks, the maintainers are wary of applying this patch this close to release without extensive testing.

Furthermore, the effect of this patch is trivially obtained by using a late_command to remove systemd-sysv and install sysvinit-core.

If you actually want to see this patch applied to the version of the Debian installer that Jessie will release with, you should coordinate with the nice people in #debian-boot to see what type of testing they would want to see before they are willing to vet the patch.

Нужно перевести на русский или так понятно? Один релиз живёт примерно два года. Даже если всё так плохо, и они не будут поддерживать совместимость с обеими системами, пару релизов SysV ещё переживёт, IMHO. Т.е. года четыре в запасе есть, а там видно будет.


Вот и именно. Можете хоть сейчас lilo выбрать при установке. Плохо то, что SysV они не включили штатной опцией в инсталлятор, поэтому будет мало её юзеров. Мало юзеров — хуже тестинг, меньше внимания к неработающим вещам.
— unknown (29/04/2015 12:36, исправлен 29/04/2015 12:54)   

У меня есть свои[link185]:


Caution
Be advised that some packages may have degraded behavior or may be lacking features under a non-default init system.
Гость (29/04/2015 17:11)   

По моим ссылкам были предупреждения, что это касается только тяжеловесных десктопных пакетов типа GNOME и KDE. Если вы этим не страдаете (а вы этим не страдаете[link5]), думаю, можете смело забить на это предупреждение. Это GUI'шным приблудам для администрирования системы, может быть, очень важно, что там, systemd или SysV, а консоли-то что с того?

А я по вашей классификации вообще «самый экстремал», так что, тем более...
Гость (29/04/2015 17:13)   
Точней, всё ещё хуже: я стал самым экстремалом как раз после прочтения того вашего комментария. ☺
— pgprubot (09/08/2015 20:46, исправлен 09/08/2015 20:51)   

Файл ~/.zcompdump, вроде как создаваемый командой compinit, можно отправить туда же, заменив в ~/.zshrc

compinit
на
compinit -d $TMP/.zcompdump.$USER
Теоретически в новых версиях zsh для этих целей должно[link186] работать что-то типа
ANTIGEN_COMPDUMPFILE=$TMP/.zcompdump.$USER


К удивлению обнаружилось, что ~/.xsession-errors не так безобиден, как казалось раньше. Например, туда попадает выхлоп из управления музыкальным демоном mpd со списком проигрываемых композиций, чего явно не ожидалось. По всей видимости, это лечится только грязными хаками. Самое простое — заменить строчку

ERRFILE=$HOME/.xsession-errors
в /etc/X11/Xsession на
ERRFILE=/tmp/$USER/.xsession-errors
USERTMPDIR=/tmp/$USER
if ! [ -d $USERTMPDIR ] ; then
    mkdir -p $USERTMPDIR
    chmod go-rwx $USERTMPDIR
fi

— pgprubot (28/08/2015 15:55)   
Можно подойти к проблеме ещё радикальней: чем бороться со всеми «умными» приложениями, которые загаживают $HOME опасными данными, проще располагать $HOME где-то в /tmp, т.е. сделать /tmp/USERNAME_HOME домашней директорией юзера, контент которой восстанавливается перед логином в этого юзера из чистого бэкапа. Сами файлы, с которыми юзер работает, могут по-прежнему располагаться где-то в /home. Т.е., все статические конфиги должны быть в бэкапе и фикситься вручную, когда это нужно, а не так, что запустил прогу — и она тебе испохабила конфиги (содержимое ~/.local, ~/.cache и др. директорий).
— pgprubot (02/09/2015 23:35, исправлен 02/09/2015 23:35)   
T[link187]or-enabled Debian mirrors

Richard Hartmann, Peter Palfrader, and Jonathan McDowell have set up the first official onion service mirrors[link188] of the Debian operating system’s software package infrastructure. This means that it is now possible to update your Debian system without the update information or downloaded packages leaving the Tor network at all, preventing a network adversary from discovering information about your system. A follow-up[link189] post by Richard includes guidance on using apt-transport-tor[link190] with the new mirrors.

These services are only the first in what should hopefully become a fully Tor-enabled system mirroring “the complete package lifecycle, package information, and the website”. “This service is not redundant, it uses a key which is stored on the local drive, the .onion will change, and things are expected to break”, wrote Richard, but if you are interested in trying out the new infrastructure, see the write-ups for further information.

Вроде работает. Торовский реп и security.debian.org, наверно, должны остаться обычными ссылками, доступ к которым идёт через Tor.

— pgprubot (28/09/2015 05:19, исправлен 28/09/2015 05:21)   

man xscreensaver-command:


-exit
Causes the xscreensaver process to exit gracefully. This does nothing if the display is currently locked.

Warning: never use kill -9 with xscreensaver while the screensaver is active. If you are using a virtual root window manager, that can leave things in an inconsistent state, and you may need to restart your window manager to repair the damage.

xscreensaver-command -exit действительно работает нормально, kill не нужен.

— pgprubot (16/10/2015 02:18, исправлен 16/10/2015 02:20)   

R[link193]HEL has a standardized way of manipulating Linux firewall. File ‘/etc/sysconfig/iptables’ has stored firewall in iptables-save format. Since I have to sometimes use Debian based distributions, I often wondered why there isn’t a similar (standardized) way of handing iptables. Somene suggests to use UFW or Shorewall, but that are just wrappers around iptables made to make users life easier. But if you are iptables expert, then using wrappers is only drawing attention to wrong things and bringing in another layer of unnecessary complexity. So after a little research I found a better way to handle iptables on Debian distros. It’s called “iptables-persistent“. All a user has to do is:
# apt-get install iptables-persistent

Не знаю, насколько этот способ надёжен и конвенционален в данный момент.

— Гость_ (14/11/2016 18:31, исправлен 14/11/2016 18:47)   

/comment78166[link194]


Разработчик OpenBSD рассказывает, почему они решили вообще отказаться от PGP. Я было подумал, что дело, как всегда, в GPL-лицензии, а им BSD надо. Как же я был неправ... Всё намного хуже. Мазохистам следует одеть шлем перед прочтением бессмертного[link195], чтобы не разбить лицо фейспалмами. Самая вкуснятина:


The first most likely option we might consider is PGP or GPG. I hear other operating systems do so. The concerns I had using an existing tool were complexity, quality, and complexity.

There was a PGP usability study conducted a few years ago where a group of technical people were placed in a room with a computer and asked to set up PGP. Two hours later, they were never seen or heard from again. Even though the end user is actually shielded in most cases from ever directly interacting with signify, I felt it was important that users be able to quickly understand how everything worked.


We wanted to ensure all the code involved in signing met our quality standards. Without digressing too much, we have much more control over the quality of code that's developed in tree versus code developed elsewhere and imported.


The complexity of the code is also a factor. All those complex features require lots of complex code, which balloons the size of the import and makes auditing nearly impossible. Even if a perfect PGP codebase existed, how would we be able to identify it? Or as Prof. Green put it[link196], "Can someone who built GnuPG 2.1.1 on Debian/Ubuntu give me a hint on which libgpg-error you used?" If he doesn't which libgpg-error to use, I doubt I'm going to pick the right one.

PGP/GnuPG – сложно, overengineered и непонятно. Кода в GnuPG много, а там, где много кода, там дыры, поэтому GnuPG они использовать не будут, а напишут свой велосипед, простой и понятный, с короткими ключами. Будут распространять его в виде QR-кода[link197]. Пришёл на конференцию – заснял слайд с QR-кодом, вот тебе верификация:


Feel free to take a picture if you like. That's the public key for the current 5.7 release. Technically, a key will more likely and more conveniently exist in text form, but if you are concerned about how to authenticate that the key on the website hasn't been tampered with, and the CD in the mail wasn't interdicted, you can always come to a BSD conference and take a picture. Assuming you're foolish enough to trust your camera's image sensor firmware.

Inside the base64 data are the fun bits. Decoded, there are 2 bytes which say "Ed" in case we ever need to change algorithms, 8 random bytes used to detect accidental key signature mismatches and give friendlier error messages, and then the 32 bytes of actual key. A signature is exactly the same format, but 64 bytes long instead.


In the interest of promoting inter-BSD cooperation, I figured I'd also show you the FreeBSD security officer key in case you'd like to take a picture of that as well.
<...>
Hope you brought a zoom lens.

Очень смешно, и весь зал на этой минуте, наверно, ржёт. Расскажите им про то, что ключи идентифицируются по отпечаткам, а не по текстовому выводу, а также о том, что ключ такой длинный не просто так, а из-за навешанных подключей и чужих подписей.


Artifacts
Before we go into how signing and verifying work in progress, I'm going to digress to define the term artifact. Artifacts are what we ultimately wish to verify. This includes the built releases and packages. It also includes the errata, since they are like an addendum to the release. But it doesn't include miscellaneous communications or announcements or the web site. I introduce this term because in crypto speak we usually talk about signing and verifying messages, which is exactly what signify does, but that's not to say we use it for messages in general.

Наш велосипед прекрасен, но, право, мы сами догадываемся, что подписывать им важные текстовые сообщения было бы абсурдом, поэтому мы не будем его позиционировать как универсальный инструмент для создания подписей. Мы его используем для подписи так называемых "артефактов" – сообщений, которые код, а не просто сообщений. Просто сообщения мы не подписывали и подписывать не будем. Мне или кажется или впрямь было когда-то такое, что Тео попросил не спамить OpenBSD-рассылку заголовками PGP-подписанных сообщений?


pkg_add also uses signify behind the scenes to verify every package. Unless something goes wrong, this is even more transparent to the user. The signature scheme is similar. Packages already contained SHA256 checksums for integrity checking, so again, it's those checksums that are signed. However, the signature is not available separately. It's contained entirely within each package. The packages data contains too much data to atomically sign all the packages. Anybody attempting to update during an rsync would see too many failures.

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


Key Rotation

After each release of OpenBSD, we generate a new key pair for the release after next. That's plus two. For example, after 5.6 was released, keys for 5.8 were generated. This way, the 5.8 keys are then included in the 5.7 release. So, if you upgrade every release, you will have an unbroken chain of keys back to your initial installation. We don't directly sign keys with keys, however, but the next key is implicity signed by its inclusion in a signed release. Each key is tied to a release and only used for artifacts relating to that release.


We do this for a couple reasons. First, if you don't have a key rotation plan in place in case of emergency, your emergency will end poorly. Trying to actually recover from a compromised key is more or less impossible in my opinion. Revocation is probably a cure worse than the disease. Without any great effort, however, our key rotation schedule will automatically cycle out the bad key. Even if we do nothing, or never notice the compromised key, its utility to an adversary is limited. The tried and true solution to many problems: ignore it until it goes away.


Additionally, we have an automatic upgrade path established if we need to switch to a different algorithm.

Отзывы ключей – для слабаков. Настоящие мужики свои ключи не отзывают. Утёк ключ на дистр – ну и хрен с ним, надо просто подождать, пока выйдет следующий релиз с безопасным ключом. Я так и не понял, как проблема решится сама собой с выходом следующего релиза.


Key Infrastructure

I've covered how signify helps get OpenBSD from us to you. But that's assuming you have a trusted signify public key. That's an egg. As also mentioned, if you are already running OpenBSD (i.e., the chicken), that includes the next key. If you have either the chicken or the egg, you're all set. But what about people with neither?


There are no key servers for signify. No web of trust. Just keys. The good news is the keys are pretty small. As demonstrated. We can stick them just about everywhere, and we do. They're on the web site, they're on twitter, they're on the top side of CD. 56 base64 characters. You can read it out loud over the phone in under a minute. Wide dispersion makes it harder and harder to intercept all the ways you may get the key and increases the risk of detection should anybody try some funny business.

Ключ маленький, его можно везде написать, на каждом заборе, поэтому не нужны ни сервера ключей, ни сеть доверия, ничего. Иметь один долгосрочный ключ подписи – видимо, плохая идея, поэтому каждый релиз будет выходить со своим публиным ключом + публичный ключ на следующий релиз. Подписывать новые ключи старыми мы тоже не будем. Мы будем подписывать только весь релиз, в котором, среди прочего, есть новые ключи. Если кому-то захочется проверить цепочку подписей, пусть выкачивает все релизы.


Есть одна беда, правда... наш велосипед есть только в OpenBSD и больше нигде. Мы не заморачивались тем, чтобы сделать порты под другие системы, поэтому если у вас ещё нет OpenBSD, то подписи вы не проверите никак, разве что будете сами компилить наш велосипед из исходников. Официальная инструкция[link198] в таких случаях рекомендует просто расслабиться и получать удовольствие. Проверьте только хэши – куда деваться:


If you have an existing OpenBSD 5.5 or higher installation, you can run signify(1) to verify the signature and checksum. For example, run the following to verify that the cd60.iso file was distributed by the OpenBSD team:
signify -C -p /etc/signify/openbsd-60-base.pub -x SHA256.sig cd60.iso

If you are unable to run or compile signify(1), use sha256(1) with the SHA256 file to see if a file was corrupt during the transfer.

P.S. Они так видят? У них своя правда? Есть в этом элемент здравого смысла, хоть какой-то? Или они окончательно там все упоролись?


Что интересно, эти люди написали сверх-overengineered OpenSSH, но запрещают остальным ковыряться в носу. Из шифрования telnet-сессии сделали гигантский комбайнер, чем только не обвешанный, а понять, почему так же вышло с подписями и шифрованием сообщений, они почему-то не в состоянии. Сидят, радуются, что часть криптографии для их велосипедных подписей можно теперь из OpenSSH взять.


Это всё ещё пол беды. Казалось бы, сделайте PGP-подписи релизов для остальных, хуже-то не будет от PGP-подписанных хэшей. Но нет, не их путь. Подписывает Linux, подписывает FreeBSD, подписывает NetBSD, подписывает DragonFlyBSD. А OpenBSD не будет, оно пойдёт своим путём. Решил Тео забросить свой PGP-ключ, созданный в далёком 1997-ом[link199] – и всё. Ничего PGP-шного больше нет.


А нормальных бинарных апдейтов как не было, так и нет[link200]:


For the OpenBSD base system, there are three options:
  • Upgrade your system to -current. As all fixes are applied to the -current code base, updating your system to the latest snapshot is a good way to get all the fixes at once. However, running -current is not for everyone.
  • Update your system to -stable This is done by fetching or updating your source tree using the appropriate -stable branch, then recompiling the kernel and userland files. Overall, this is probably the easiest way, though it takes longer since the entire system gets rebuilt.
  • Patch the affected files individually. While this typically requires less time than a CVS checkout/update and rebuild, there is no one universal set of instructions to follow. Sometimes you must patch and recompile one application, sometimes more. All patches posted to the errata web page are made directly against the indicated release's source tree. This method is explained in more detail below.

Гарантированный и рекомендуемый способ – всё тот же: нужно обновить один файл – скачайте апдейт к исходникам всей базовой системы и перекомпильте её всю с нуля.

— SATtva (14/11/2016 19:14)   

Спасибо, предотвратили непоправимый вред здоровью.

If you are unable to run or compile signify(1), use sha256(1) with the SHA256 file to see if a file was corrupt during the transfer.

Если не можете поесть, то сходите к парикмахеру. Либо это какая-то шизофазия, и между первой и второй частью предложения нет логической связи, либо весь смысл signify — только в проверке целостности данных.
— Гость_ (14/11/2016 22:01)   
Скорее, шизофазия. Пропущено неявное, но подразумеваемое "в этом случае проверить подпись невозможно, вы вынуждены ограничиться сверкой хэшей".



Там всё намного сложнее. Ноги растут, как явствует из блога автора, отсюда[link201] и отсюда[link202]. PGP хоронится на основании этого[link203] и этого[link204] обзоров, также есть отсылка к оригиналу комментария[link205]. Обзоры хорошие, профессиональные, но выводы из них были сделаны неправильные: всё-таки между утверждениями "PGP – зло" и "PGP – зло, но ничего лучшего пока не придумали" большая разница, и эта разница не была разработчиком, как я понял, осознана. К тому же, они не отказываются от своего фирменного подхода к разработке софта – NIH-синдрома:

Other projects use a variety of tools for this, but unfortunately none of them were invented here. signify is a small tool I wrote to fill that gap. Here’s a few notes about it, working from the top down.

"Давайте сделаем всё по-своему, а не как в GNU-тусовке. Теперь и в PGP". NetBSDшники когда начали пилить NetPGP, хотя бы не стали рушить OpenPGP стандарт, в отличие от этих.

В обзорах всё излагается в куче. Там есть проблемы самого стандарта, есть проблемы имплементации, есть проблемы отсутствия удобного софта для технически неподкованных юзеров, а есть и существенные проблемы, которые криптографическая наука пока никак решить не может. Из этого почему-то был сделан вывод, что свой велосипед будет лучше, чем PGP.

Например, из этого бага[link206] был в конечном счёте сделан вывод, что отпечатки ключей – усложнение протокола без необходимости. Дескать, это не столько баг в коде, сколько баг в дизайне. Зачем нужны длинные ключи и отпечатки к ним, когда можно выбрать короткие ключи, для которых не нужны отпечатки – они и так коротки? У автора это центральная мысль. Правда, по ссылкам не обсуждается вопрос, почему именно пока не рискуют всё заменять на эллиптику, а сам он задуматься над этим не решился – видимо, не параноик. К тому же, короткими ключи будут, только если отказаться от подключей и навешивания подписей.

С подписями вообще интересно. Из комментария Mike Perry[link205] был сделан вывод, что сеть доверия не работает. CA, понятно, тоже не работает. Значит, никакие механизмы установления доверия не лишены серьёзных недостатков. А раз так, давайте откажемся от всех механизмов доверия вообще, включая подписи одних ключей другими – всё равно ведь это полумеры. Типа, если так уж надо, можно отдельно файл с чужим ключом подписать, а тащить это в ядро нового криптостандарта незачем.

Отзыв ключей тоже не нужен, потому что:

I wonder how many people have ever revoked their PGP keys to see how it works in practice. The reop trust model is very simple. You can probably even understand it.

Keys don’t expire. If we expand the scope of inquiry slightly to TLS certs, I’ve lost count of the problems I’ve seen caused by prematurely expiring certs. Number of times an expired cert has saved my ass? Zero. This is arguably shortsighted, I know.

Без комментариев.

И всё в таком духе. Теперь на основе signify они пишут свой PGP с блэкджеком и BSDшницами. Назвали его reop[link202] – "reasonable expectation of privacy":



Не без стёба сравнили его с GnuPG:

You can’t embed a JPG selfie into reop keys. Not even a tiny one.

reop doesn’t include a Tempest resistant font for viewing top zecret messages.

Вот. И всё в таком духе, причём это не какая-нибудь фрикота с улицы – эти люди пишут OpenSSH, PF и LibreSSL. Мне интересно, а как OpenSSH попадает в линуксовские пакеты, если PGP-подписей на нём нет изначально? Всё-таки есть[link207]:

The following files describe the development efforts of the OpenSSH portability development team. The release files are signed with the PGP public key contained in the file RELEASE_KEY.asc on the ftp site. This key is also available through the key server network.

Наверно, принудили. А для самой OpenBSD подписей, судя по этому[link201] заявлению разработчика, до signify не было:

One of the things OpenBSD has never done is sign releases, for whatever reasons. But 2014 is a new year, time to make a change. The first thing you need to start signing OS releases (besides the release itself) is a signing tool. Other projects use a variety of tools for this, but unfortunately none of them were invented here. signify is a small tool I wrote to fill that gap. Here’s a few notes about it, working from the top down.
— Piano (15/11/2016 03:28, исправлен 15/11/2016 03:29)   

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


Мда. Глядя, в какое дырявое решето, более того – в шпионскую сборку превратился Linux под чутким руководством некоего космонавта в сговоре с M$, поневоле задумываешься –
а может, ну их нафиг, эти сомнительные с точки безпасности Линуксы, и пока не поздно еще, свалить на какую-нибудь неиспорченную еще BSD?


Я люблю почитывать опусы, как хороши, например, FreeBSD своей продуманной политикой и продуманной, тщательно выверенной архитектурой, но сколько раз её ставил, начиная 3.x, столько раз её и сносил :))

— Гость_ (15/11/2016 22:46)   
/comment69526[link208]:
For the last few months, I've been working on a hypervisor for OpenBSD.

One might ask – why not port one of the other hypervisors out there instead of rolling your own from scratch? Fair question. However, for various technical reasons, choosing to port an existing vmm just didn't make a whole lot of sense. For example, I've been baking in support for things that the other implementations don't care about (namely i386 support, shadow paging, nested virtualization, support for legacy peripherals, etc) and trying to backfit support for those things into another hypervisor would probably have been just as hard as building it from the ground up.

Написать свой PGP – мало, почему бы не написать собственный гипервизор[link209] после всех заявлений о ненужности виртуализации?

Ссылки
[link1] https://www.pgpru.com/biblioteka/osnovy/fondpoleznyhpostov/anonimnostj#fppB1

[link2] https://www.pgpru.com/comment57968

[link3] http://packages.debian.org/sid/libstartup-notification0

[link4] http://www.debian.org/doc/packaging-manuals/virtual-package-names-list.txt

[link5] https://www.pgpru.com/comment4930

[link6] http://www.fluxmod.org/fluxstyles/

[link7] http://packages.debian.org/sid/mc

[link8] http://www.hermann-uwe.de/blog/towards-a-moderately-paranoid-debian-laptop-setup--part-1-base-system

[link9] https://www.pgpru.com/comment47930

[link10] http://wiki.debian.org/DebianIPv6

[link11] http://xmodulo.com/2012/05/how-to-run-iptables-automatically-after.html

[link12] https://www.pgpru.com/comment34704

[link13] https://www.pgpru.com/biblioteka/osnovy/fondpoleznyhpostov/kriptografija#fppBA1IV

[link14] https://www.pgpru.com/comment61469

[link15] https://www.pgpru.com/novosti/2009/inficirovaniezagruzchikadljaobhodashifrovannyhfajjlovyhsistem

[link16] http://askubuntu.com/questions/135602/i-have-permanent-connections-to-canonical-servers-what-are-they-for-and-how-can

[link17] http://askubuntu.com/questions/37747/how-to-remove-apps-available-for-download-from-the-applications-lens

[link18] https://support.mozilla.org/en-US/kb/how-stop-firefox-automatically-making-connections

[link19] https://www.pgpru.com/biblioteka/osnovy/fondpoleznyhpostov/raznoe#fppD2I

[link20] http://www.opennet.ru/openforum/vsluhforumID15/3984.html

[link21] https://www.pgpru.com/biblioteka/osnovy/fondpoleznyhpostov/raznoe#fppB1

[link22] https://www.pgpru.com/comment67576

[link23] https://www.pgpru.com/biblioteka/rukovodstva/setevajaanonimnostj/prodvinutoeispoljzovanietorvunix/razdeljnoeispoljzovanietorbrowserssistemnymtoriprozrachnajatorifikacija

[link24] http://xenocara.org/

[link25] https://www.pgpru.com/comment59607

[link26] https://www.pgpru.com/comment67722

[link27] https://en.wikipedia.org/wiki/Wayland_(display_server_protocol)

[link28] https://en.wikipedia.org/wiki/Mir_(display_server)

[link29] https://en.wikipedia.org/wiki/File:Ubuntu_Unity_Keyboard_shortcuts_-_En.png

[link30] http://www.nongnu.org/ratpoison/doc/Default-Key-Bindings.html

[link31] https://prism-break.org/

[link32] http://tea-editor.sourceforge.net/#about

[link33] https://en.wikipedia.org/wiki/Siag_Office

[link34] http://www.debian-administration.org/users/TCSpirit/weblog/1

[link35] http://siag.nu

[link36] http://archive.debian.net/woody/i386/siagoffice-common

[link37] http://lists.freebsd.org/pipermail/freebsd-questions/2004-June/048513.html

[link38] https://en.wikiquote.org/wiki/Theo_de_Raadt

[link39] http://it.slashdot.org/story/07/10/25/1521258/virtualization-decreases-security

[link40] http://it.slashdot.org/comments.pl?sid=339805&cid=21116353

[link41] https://www.pgpru.com/comment34713

[link42] https://blog.torproject.org/blog/deterministic-builds-part-one-cyberwar-and-global-compromise

[link43] https://wiki.debian.org/ReproducibleBuilds

[link44] http://people.debian.org/~paulproteus/mike-perry-reproducible-tbb.txt

[link45] https://www.pgpru.com/comment53886

[link46] https://www.pgpru.com/comment32246

[link47] https://www.pgpru.com/comment48145

[link48] https://blog.torproject.org/comment/reply/718/33870

[link49] https://ubuntuforums.org/showthread.php?t=2135286

[link50] https://www.pgpru.com/comment67891

[link51] http://unix.stackexchange.com/questions/67408/too-big-delay-with-xscreensaver-on-wrong-password-in-opensuse-12-2

[link52] http://linuxgazette.net/137/anonymous.html

[link53] http://www.opennet.ru/opennews/art.shtml?num=37246

[link54] https://www.pgpru.com/comment69849

[link55] https://www.pgpru.com/comment67496

[link56] https://ru.wikipedia.org/wiki/Ubuntu

[link57] https://www.gnu.org/philosophy/ubuntu-spyware.ru.html

[link58] https://lists.torproject.org/pipermail/tor-talk/2013-September/030022.html

[link59] https://bugs.torproject.org/9738

[link60] https://blog.torproject.org/blog/tor-weekly-news-—-september-18th-2013

[link61] https://www.pgpru.com/comment52123

[link62] http://ubuntunews.ru/news/activity-log-manager-for-zeitgeist-lets-you-blacklist.html

[link63] https://en.wikipedia.org/wiki/Wikipedia:Too_long;_didn't_read

[link64] https://blog.torproject.org/blog/tor-weekly-news-—-october-30th-2013

[link65] http://www.securitylab.ru/news/447401.php

[link66] https://www.pgpru.com/novosti/2008/fotoreportazhsfinancialcryptography2008

[link67] https://www.pgpru.com/comment3213

[link68] https://www.pgpru.com/comment75320

[link69] http://www.dailymail.co.uk/sciencetech/article-2531601/Windows-error-messages-let-NSA-spy-people-Crash-reports-neat-way-gaining-access-machines-claims-report.html

[link70] https://www.pgpru.com/comment67917

[link71] https://defuse.ca/vimrc.htm

[link72] http://www.openbsd.org

[link73] http://www.netbsd.org

[link74] https://www.pgpru.com/comment59374

[link75] https://www.pgpru.com/comment75997

[link76] https://www.pgpru.com/comment45493

[link77] https://www.pgpru.com/comment76678

[link78] https://www.pgpru.com/comment53811

[link79] http://www.opennet.ru/opennews/art.shtml?num=38739

[link80] http://www.pgpru.com/comment76689

[link81] https://wiki.gentoo.org/wiki/Project:Hardened_uClibc/Lilblue

[link82] https://www.pgpru.com/comment75854

[link83] http://www.vim.org/scripts/script.php?script_id=1075

[link84] http://vim.1045645.n5.nabble.com/How-to-disable-netrw-to-generate-history-file-td4248939.html

[link85] https://stackoverflow.com/questions/9850360/what-is-netrwhist

[link86] https://bbs.archlinux.org/viewtopic.php?id=140971

[link87] https://stackoverflow.com/questions/16903936/howto-change-location-of-vimrc-and-vim

[link88] https://stackoverflow.com/questions/3377298/how-can-i-override-vim-and-vimrc-paths-but-no-others-in-vim

[link89] http://lists.alioth.debian.org/pipermail/pkg-vim-maintainers/2012-November/008778.html

[link90] http://www.debian-administration.org/article/702/Hiding_processes_from_other_users

[link91] https://www.linux.org.ru/forum/talks/1398974

[link92] https://www.linux.org.ru/forum/general/8504301

[link93] https://www.pgpru.com/comment54151

[link94] https://www.pgpru.com/comment76669

[link95] http://www.openbsd.org/

[link96] http://www.netbsd.org/

[link97] http://www.openbsd.org/55.html

[link98] http://www.openbsd.org/cgi-bin/man.cgi?query=signify&sektion=1

[link99] http://www.openbsd.org/cgi-bin/man.cgi?query=pkg_add&sektion=1

[link100] http://www.openbsd.org/cgi-bin/man.cgi?query=arc4random&sektion=3

[link101] http://www.openbsd.org/cgi-bin/man.cgi?query=ssh&sektion=1

[link102] http://www.openbsd.org/cgi-bin/man.cgi?query=sshd&sektion=8

[link103] http://www.openbsd.org/cgi-bin/man.cgi?query=ssh-keygen&sektion=1

[link104] http://www.openbsd.org/cgi-bin/man.cgi?query=ssh-agent&sektion=1

[link105] https://www.pgpru.com/biblioteka/osnovy/fondpoleznyhpostov/kriptografija#fppBD2

[link106] https://www.pgpru.com/comment73398

[link107] https://www.pgpru.com/comment73412

[link108] https://www.pgpru.com/comment73503

[link109] https://www.pgpru.com/comment68212

[link110] https://www.debian.org/releases/stable/amd64/index.html.en

[link111] https://www.debian.org/doc/manuals/securing-debian-howto/index.en.html

[link112] https://www.pgpru.com/comment77182

[link113] https://www.pgpru.com/comment80000

[link114] https://www.pgpru.com/proekt/poljzovateli?p=2&sort=comments

[link115] https://www.pgpru.com/proekt/kommentarii

[link116] https://lurkmore.to/Леннарт_Поттеринг

[link117] https://www.pgpru.com/proekt/poljzovateli?p=1&sort=comments

[link118] https://www.pgpru.com/comment43968

[link119] https://www.pgpru.com/comment72850

[link120] https://www.pgpru.com/comment75508

[link121] https://answers.yahoo.com/question/index?qid=20090828090849AACuHlR

[link122] http://www.nhpartners.org/uploads/Recognizing_Success_Avoid.pdf

[link123] https://www.pgpru.com/proekt/poljzovateli?profile=unknown

[link124] http://theoryandpractice.ru/posts/8761-sokolov-euspb

[link125] http://www.rg.ru/2013/06/26/oganov.html

[link126] https://www.pgpru.com/comment80124

[link127] https://www.pgpru.com/comment78352

[link128] https://www.pgpru.com/comment67554

[link129] http://slackbuilds.org/repository/14.1/network/midori/

[link130] https://www.pgpru.com/comment78226

[link131] https://www.pgpru.com/comment80329

[link132] http://pkgsrc.se/www/firefox

[link133] https://www.pgpru.com/comment80356

[link134] https://www.pgpru.com/comment67529

[link135] http://askubuntu.com/questions/179060/how-not-to-install-recommended-and-suggested-packages

[link136] https://www.pgpru.com/comment69759

[link137] https://unix.stackexchange.com/questions/132307/xscreensaver-and-keyboard-layouts

[link138] https://www.pgpru.com/comment78727

[link139] https://www.pgpru.com/comment67789

[link140] http://cvsweb.openbsd.org/cgi-bin/cvsweb/src/distrib/miniroot/install.sub.diff?r1=1.653&r2=1.654&f=h

[link141] http://www.thejemreport.com/making-sense-of-the-one-laptop-per-child-proprietary-software-row/

[link142] https://www.linux.org.ru/news/kernel/1442792

[link143] http://undeadly.org/cgi?action=article&sid=20070406104008

[link144] https://www.pgpru.com/comment84862

[link145] https://www.pgpru.com/comment83247

[link146] https://wiki.debian.org/systemd#Installing_without_systemd

[link147] http://without-systemd.org/wiki/index.php/How_to_remove_systemd_from_a_Debian_jessie/sid_installation

[link148] http://without-systemd.org/wiki/index.php/How_to_remove_systemd_from_the_Netinst_CD

[link149] https://www.pgpru.com/comment86822

[link150] http://sohcahtoa.org.uk/osd.html

[link151] https://lists.debian.org/debian-user/2014/10/msg01927.html

[link152] https://lists.debian.org/debian-user/2014/10/msg01930.html

[link153] http://www.vitavonni.de/blog/201410/2014102101-avoiding-systemd.html

[link154] http://wiki.gentoo.org/wiki/ALSA

[link155] https://www.pgpru.com/comment81914

[link156] https://www.pgpru.com/comment86936

[link157] https://www.pgpru.com/comment77632

[link158] https://wiki.archlinux.org/index.php/Capabilities

[link159] https://www.pgpru.com/forum/prakticheskajabezopasnostj/konsoljprotivgraficheskogointerfejjsabyloyoggiepicofirewall

[link160] https://www.pgpru.com/comment87431

[link161] https://www.pgpru.com/comment86925

[link162] https://www.pgpru.com/comment82607

[link163] https://www.pgpru.com/comment82640

[link164] http://www.jwz.org/xscreensaver/faq.html

[link165] https://bbs.archlinux.org/viewtopic.php?id=134222

[link166] https://unix.stackexchange.com/questions/110896/configure-xscreensaver-through-x-resource-database

[link167] https://www.pgpru.com/comment89813

[link168] http://serverfault.com/questions/72955/how-to-change-default-tmp-to-home-user-tmp

[link169] https://bbs.archlinux.org/viewtopic.php?id=147773

[link170] https://www.pgpru.com/comment88136

[link171] https://www.pgpru.com/comment90522

[link172] https://www.pgpru.com/comment90534

[link173] https://www.pgpru.com/comment90508

[link174] https://www.pgpru.com/chernowiki/rukovodstva/administrirovanie/policybasedfiljtracijaiptables

[link175] https://ru.wikipedia.org/wiki/Код_Хаффмана

[link176] https://www.pgpru.com/comment87989

[link177] https://www.pgpru.com/comment90521

[link178] https://www.pgpru.com/comment90831

[link179] https://www.pgpru.com/comment90666

[link180] https://www.linux.org.ru/news/debian/11549708?cid=11552767

[link181] http://tlhp.ml/lennart-poettering-interview/

[link182] http://opennet.ru/openforum/vsluhforumID3/101220.html

[link183] https://www.pgpru.com/comment23214

[link184] https://www.pgpru.com/comment86851

[link185] https://www.debian.org/releases/jessie/amd64/release-notes.en.txt

[link186] https://github.com/zsh-users/antigen/pull/98

[link187] https://blog.torproject.org/blog/tor-weekly-news-—-august-30th-2015

[link188] http://richardhartmann.de/blog/posts/2015/08/24-Tor-enabled_Debian_mirror/

[link189] http://richardhartmann.de/blog/posts/2015/08/25-Tor-enabled_Debian_mirror_part_2/

[link190] https://retout.co.uk/blog/2014/07/21/apt-transport-tor

[link191] https://www.pgpru.com/comment67574

[link192] https://www.pgpru.com/comment67619

[link193] https://jsosic.wordpress.com/tag/iptables/

[link194] https://www.pgpru.com/comment78166

[link195] https://www.openbsd.org/papers/bsdcan-signify.html

[link196] https://twitter.com/matthew_d_green/status/564520941246754816

[link197] https://en.wikipedia.org/wiki/QR_code

[link198] https://ftp.openbsd.org/pub/OpenBSD/6.0/amd64/INSTALL.amd64

[link199] https://www.openbsd.org/advisories/pgpkey.txt

[link200] https://www.openbsd.org/faq/faq10.html#Patches

[link201] http://www.tedunangst.com/flak/post/signify

[link202] http://www.tedunangst.com/flak/post/reop

[link203] https://moxie.org/blog/gpg-and-me/

[link204] https://blog.cryptographyengineering.com/2014/08/13/whats-matter-with-pgp/

[link205] https://www.pgpru.com/biblioteka/statji/whytheweboftrustsucks

[link206] https://bugs.gnupg.org/gnupg/issue1579

[link207] https://www.openssh.com/portable.html

[link208] https://www.pgpru.com/comment69526

[link209] https://marc.info/?l=openbsd-tech&m=144104398132541&w=2