Что за параметр SOCKSBindAddress в torrc?


Я не очень понимаю разницу между параметрами TOR'а SOCKSPort и SOCKSBindAddress. Когда я переводил man-руководство для TOR'а (результат см. на http://www.privoxy.asplinux.ne.....ge/tor-man-page.html[link1] ), мне было проще опираться на такую сказочную версию: к SOCKSPort'у подключается всё то, что запущено "по соседству" с TOR (т.е. на localhost c IP=127.0.0.1), а в SOCKSBindAddress прописывается тот IP-адрес системы, который виден извне (к примеру, IP компьютера в локальной сети). Но тогда получается, что номера портов в SOCKSPort и SOCKSBindAddress по идее должны совпадать (т.е могут, конечно, и не совпадать, но тогда получается, что запросы от удалённых клиентов TOR и от клиентов, запущенных на localhost, должны обслуживаться на разных портах, что вроде бы не совсем логично).
Пожалуйста, будьте милостивы, попытайтесь раскрыть "ускользающий" от меня смысл параметров SOCKSPort и SOCKSBindAddress, а то я никак понять не могу, зачем же, собственно, нужен SOCKSPort, если есть наполовину дублирующий его SOCKSBindAddress (ведь в том же Privoxy никаких альтернатив listen-address'у не предусмотрено... )?


Комментарии
— SATtva (20/10/2005 16:24)   
Ну, в общем, Ваши размышления верны. SOCKSPort определяет локальный порт, на котором будет слушать торовский сокс-прокси. SOCKSBindAddress — локальный адрес(:порт), где будет слушать сокс. Вторая опция видимо появилась с развитием программы для более тонкой настройки.

К примеру, можно запустить Тор-клиента в локальной сети и маршрутизировать через него весь или определённый трафик с сетевых машин. В противоположность к SOCKSPort, применимый только на локальной машине. При этом SOCKSPort и SOCKSBindAddress могут слушать на разных портах.
Гость (20/10/2005 19:02)   
Спасибо за столь исчерпывающее пояснение!

А как Вам перевод (не полный, но основное там есть) man-страницы TOR[link1]? Дело в том, что у Вас, как у специалиста, могли появится замечания по качеству перевода и адекватности передачи фактической составляющей исходного материала. Если Вас не затруднит, и Вы сможете поделиться подобными своими соображениями, то я со своей стороны обязуюсь в кратчайшие сроки исправить всё, что потребуется.
Гость (20/10/2005 19:03)   
P. S. А что, я разве BBCode urlнеправильно указал?
— SATtva (20/10/2005 21:05)   
У Вас в строке BBCode после первого тэга пробел получился, видимо опечатка. Я исправил.

Теперь замечания по содержанию материала. :)

1. В некоторых местах текста Вы перевели circuit как кольцо, но правильно — цепочка, цепь. Так предпочтительнее даже семантически.
2. В описании DirFetchPeriod сказано, что каталог (лучше перевести directory как справочник, список, перечень) подписан ключом PGP. Это не так. TOR не задействует PGP, у него свой ключей, шифрованных сообщений и иные процедуры шифрования и подписи.
3. В параметрах команды DirServer переведите fingerprint как отпечаток. Authoritative по контексту вернее "корневой". Directory — опять же, "справочник" или "список".
4. В HttpsProxy опечатка: "Если эта для этой опции указано значение..."
5. Не очень хороший перевод в KeepalivePeriod: padding keepalive cell. Скверная конструкция, трудно перевести корректно. Пожалуй, ближе будет "порожний трафик" (по смыслу).
6. В EntryNodes не совсем ясен смысл опции. Лучше, как и в ExitNodes, более явно отметить, что речь о первом звене цепочки.
7. FascistFirewall: "Tor будет при создании соединения будет обращаться..."
8. LongLivedPorts: "будут содержать только наиболее длительно присутствующие узлы" правильнее — "узлы с высоким аптаймом" или с "стабильные узлы".

Пункты по серверам пока комментировать не буду, там много недопереведено.
Гость (22/10/2005 19:48)   
Ok, приступаю к исправлению (странно, что я очень долго не мог достучаться pgpru.com из Opera, а когда я переключися на FireFox, проблема отпала. Сейчас после 5 минут ожидания сайт всё-таки загрузился, так что я теперь имею возможность писать это сообщение). Но с пунктом 1 я всё ж не могу согласиться: мало того, что circuit – это, как ни крути, кольцо и есть, так ещё и сами разработчики TOR подразумевали под этим словом именно то, что нашло своё недвусмысленное отражение в элементе дизайна главной страницы tor.eff.org'а (картинка с серверами, замкнутыми в нечто сильно смахивающее на окружность). Здесь просто нужно вспомнить о том, что цепочка серверовдействительно может подвергаться ротации, при которой звено, которое наохдилось где-нибудь посередине последовательности, окажется на хвосте/в голове цепи или, наоборот, вообще будет заменено объявившимся в пределах досигаемости сервером с большим среднестатистическим "аптаймом".

5. Не очень хороший перевод в KeepalivePeriod: padding keepalive cell. Скверная конструкция, трудно перевести корректно. Пожалуй, ближе будет "порожний трафик" (по смыслу).


Конструкция скверная – это Вы абсолютно верно подметили. Знали бы Вы, сколько же я над этим недоразумением голову ломал, но, как видите, так ничего достойного упоминания в аналах мировой литературы, подобрать не сумел :-) Огромное спасибо за подсказку!

3. В параметрах команды DirServer переведите fingerprint как отпечаток. Authoritative по контексту вернее "корневой". Directory — опять же, "справочник" или "список".


В смысл этого я, к сожалению, так и не въехал, но поправить- поправил (пока что для меня это тёмный лес, так что, если не затруднит, поясните, пожалуйста, что такое DirServer, языком, более доступным для понимания человека, не занимающегося сетевыми технологиями по роду своей профессиональной деятельности, а лишь интересующегося ими, да и то лишь в очень ограниченно контексте).
<[
Пункты по серверам пока комментировать не буду, там много недопереведено.
<[
Ну а как по Вашему – стоит переводить или все эти архиважные сведения просто никому не нужны?

В общем, я там ещё кое-какой отсебятины добавил (прим .перев :-) ). Посмотрите, пожалуйста, http://www.privoxy.asplinux.ne.....page/tor-manual.html[link2], если что не понравится – обязательно скажите, и я немедленно внесу исправления в те "участки", которые вызывают сомнения.

Ещё раз большое спасибо за помощь!
— SATtva (22/10/2005 21:52)   
странно, что я очень долго не мог достучаться pgpru.com из Opera, а когда я переключися на FireFox, проблема отпала

Сервер может кратковременно пропадать в этом время суток. Это нормально и не связано с используемым браузером.

Но с пунктом 1 я всё ж не могу согласиться

Можете не соглашаться, но сути дела это не изменит. :) Вот, что говорит Lingvo[link3]:
г) электр. цепь, контур; схема
to break a circuit — разобрать цепь
to close a circuit — замкнуть цепь


Кольцо — это всегда ring. Здесь смысловая нагрузка ближе к схеме интегральной. Если говорите об этих[link4] картинках, то и на них я никаких колец не вижу, а вижу ряд последовательно связанных элементов — интегральную схему, circuit, цепь.

3. В параметрах команды DirServer переведите fingerprint как отпечаток. Authoritative по контексту вернее "корневой". Directory — опять же, "справочник" или "список".

В смысл этого я, к сожалению, так и не въехал, но поправить- поправил (пока что для меня это тёмный лес, так что, если не затруднит, поясните, пожалуйста, что такое DirServer

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

Ну а как по Вашему – стоит переводить или все эти архиважные сведения просто никому не нужны?

Если есть время, можно перевести. Но я бы на Вашем месте этим не занимался, как не стану в будущем писать руководство для операторов TOR-узлов или приводить описания команд для управления TOR-сервером. Это весьма специфическая область, где, помимо непосредственно процедур управления, немаловажными являются и юридические аспекты этого предприятия, и многое другое. Как правило, если уж человек действительно хочет этим заняться, т.е. запустить свой exit node, он всё равно должен быть в ладах с английским, чтобы хотя бы зарегистрировать сервер в директории. Полагаю, он и сам с переводом инструкций разберётся.
Гость (23/10/2005 13:18)   

Кольцо — это всегда ring. Здесь смысловая нагрузка ближе к схеме интегральной. Если говорите об этих картинках, то и на них я никаких колец не вижу, а вижу ряд последовательно связанных элементов — интегральную схему, circuit, цепь.


Убедили (см.http://www.privoxy.asplinux.ne.....ge/tor-man-page.html[link1] ). Исправил все "кольца", благо мне это, прямо скажем, совсем не трудно было сделать (простой глобальной заменой :-) ).
А как по-вашему, перевод какой документации по TOR может быть целесообразен с точки зрения реальной поддержки русскоязычных пользователей его анонимных сервисов? Вот, например, то же Overview (введение фактически) стоит переводить или нет?
— SATtva (23/10/2005 13:39)   
Стоит. Ещё стоит инструкции по установке для основных ОС, кое-что из FAQ. Это реально полезное дело (смотрите даже здесь[link5]). А если ещё решите на нашем сайте опубликовать, вообще была бы сказка. :)
— unknown (23/10/2005 15:12)   
!!(blue)

unwrapped by a symmetric key

!!

!!(green)

декодируется с помощью симметричного ключа

!!

Кодирование и (рас) шифрование нельзя путать. Кодирование – это когда происходит преобразование информации без ключа (архивирование, сжатие mp3 и т.д.).

Тут намек на раскрытие луковицы, снятие луковичного слоя. Лучше "раскрывается с помощью симметричного ключа". Хотя раскрывается тут же вводит в заблуждение – раскрывается не весь траффик, а только нужный слой. Не знаю, как правильно, но только уберите слово декодирование. Оно тут не к месту. Все равно как если бы замОк открывали без ключа, а все желающие его бы использовали просто как дверную ручку.

###

"Слой шифровки" – лучше "слой зашифрованных данных". "Шифровка" – это у Штирлица и радистки Кэт.

###

"difficulty tracking" – "должны приложить титанические усилия для того, чтобы отследить"?

Ну уж вы загнули! Оно может так и есть, но может просто "трудноотслеживаемые"?

###

"любой процесс, запущенный на localhost сможет в меру собственного разумения управлять работой TOR."

"Собственное разумение у процессов"? У них разум есть или чутье? В оригинале я этого вообще не нашел.

###

fingerprint – это не стигмат и не отпечаток пальца, а в данном контексте "
цифровой отпечаток". Key fingerprint – это не ключевой отпечаток, а цифровой отпечаток ключа.

Вспомнилась песенка: "Bye, Bye baby! Baby, good by!"
"Купи, купи ребенка! Ребенок – это хорошая покупка!"

###

"сервер-перечислитель" – может "сервер распределения списков"? Не знаю даже какой термин подобрать.

###

"forks and daemonizes to the background" – вот это хорошо переведено, когда с такими вещами работаешь, даже не думаешь, как они звучат по-русски. Один слэнг: "форкнуть", "демонизировать", "зомбировать", "чрутить".

###

haven't authenticated as "verified" – может быть не аутентифицированы как достоверные?


###
Узлы я бы называл:

s/«входные»/"входящие"/g

s/«выходные»/"исходящие"/g

###
The named Tor servers constitute a "family".
list the family itself (with MyFamily)

Серверы объединяются в семьи? Может они еще и в брак вступают?.
MyFamily – это майонез такой? "Моя семья"?

Или все-таки лучше заменить на что-то более нейтральное:

s/"семьи"/"семейства"/g

###

В целом, перевод вроде правильный, только немного корявый (я вот тоже не умею аккуратно переводить, не всем это дано. Мне проще привыкнуть к значению слов прямо в оригинале, а потом изъясняться мешаниной из английских из русских слов и терминов).
— SATtva (23/10/2005 16:05)   
Не знаю, как правильно, но только уберите слово декодирование.

Unwrap дословно — "разворачивать". В принципе, не будет ошибкой перевести как "расшифровывается".
— unknown (23/10/2005 18:16)   
Unwrap дословно — "разворачивать".

Вот и получилась "непереводимая игра слов" – намек на обертку из луковых слоев.

Пункты по серверам пока комментировать не буду, там много недопереведено.

Ну а как по Вашему – стоит переводить или все эти архиважные сведения просто никому не нужны?

man принято переводить целиком. Это документ, сопровождающий программу, включаемый в пакет. Можно не перевести отдельные файлы – FAQ, TODO, и т.д., но каждый файл, который взялись переводить, должен быть переведен полностью.
(Хотя бывают конечно исключения).
Гость (24/10/2005 08:55)   

man принято переводить целиком


ну.. не знаю, я вот видел немало man'ов переведённых частично (по крайней мере, в составе ASPLinux я с такими man'ами не раз сталкивался). Впрочем, я как раз хочу хотя бы отдалённо передать смысл разделов по серверам TOR и серверам-перечислителям (на днях придуманный лично мной термин, никому его теперь в обиду не дам :-) ). На самом деле основная проблема как раз в том, что мой перевод – это вовсе и не сам man, а документ, написанный "по мотивам" оригинала, представленного в формате man-страницы. Вот если бы, например, Вы, unknown, согласились конвертить html-страницу обратно в формат man (а ведь утилиты html2man, AFAIK, пока ещё не создали :-) ), тогда был бы ещё хоть какой-то смысл говорить о том, насколько корретно оставлять базовое руководство к программе в недопереведённом в виде (да и то сначала пришлось бы добиться того, чтобы такой man был официально признан именно как перевод и включен в дистрибутивный пакет), а так... в общем, я действительно руководствуюсь в первую очередь тем, что разделы по конфигурированию этих самых перечислителей и серверов никому на русском языке даром не нужны (я тут как-то прочёл в одной статье о TOR, что реально действующих серверов OR по всему миру до сих пор насчитывается всего лишь 195 штук. Если это правда, то, видимо, и на английском языке вышеозначенные разделы man'а оказались невостребованными) и во вторую очередь – тем, что я, как человек, далёкий от всей этой серверной тематики, но имеющий опыт конфигурирования своей машины в качестве клиента TOR, мог перевести более-менее корретно (ну не без помощи представителей community на pgpru.com, разумеется) только, что есть сейчас, т.е. собственно то, что мы обсуждаем. Остальное – пожалуйста, я не против перевести всё до конца, но перевод серверной части у меня по определению может быть только дословным (хотя, если Вы будете активно поправлять эти мои безграмотные вирши, возможно, нам совместными усилиями скорее всего удастся "подарить OpenSource-сообществу" вполне серьёзный документ)

Кодирование и (рас) шифрование нельзя путать. Кодирование – это когда происходит преобразование информации без ключа (архивирование, сжатие mp3 и т.д.).

Тут намек на раскрытие луковицы, снятие луковичного слоя. Лучше "раскрывается с помощью симметричного ключа". Хотя раскрывается тут же вводит в заблуждение – раскрывается не весь траффик, а только нужный слой. Не знаю, как правильно, но только уберите слово декодирование. Оно тут не к месту. Все равно как если бы замОк открывали без ключа, а все желающие его бы использовали просто как дверную ручку.


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

"Слой шифровки" – лучше "слой зашифрованных данных". "Шифровка" – это у Штирлица и радистки Кэт.


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

fingerprint – это не стигмат и не отпечаток пальца, а в данном контексте "
цифровой отпечаток". Key fingerprint – это не ключевой отпечаток, а цифровой отпечаток ключа


Цифрового? Странно, а каким ещё может быть отпечаток ключа, представляющего собой всего лишь битовую последовательность? По крайней мере, у того, кто будет читать этот man может сложиться впечатление, что речь идёт не об идентифицирующей сервер подписи, а о том слепке с ключа от "квартиры, где деньги лежат", который делают медвежатники для осуществления бесшумного проникновения в жилище жертвы.

haven't authenticated as "verified" – может быть не аутентифицированы как достоверные?


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

The named Tor servers constitute a "family".
list the family itself (with MyFamily)

Серверы объединяются в семьи? Может они еще и в брак вступают?.
MyFamily – это майонез такой? "Моя семья"?

Или все-таки лучше заменить на что-то более нейтральное:

s/"семьи"/"семейства"/g


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

Стоит. Ещё стоит инструкции по установке для основных ОС, кое-что из FAQ. Это реально полезное дело (смотрите даже здесь). А если ещё решите на нашем сайте опубликовать, вообще была бы сказка.


OK, постараюсь участников нашего проекта на это дело сподвигнуть (не всем же мне самому заниматься), так что, перевод рано или поздно будет. Кстати, коли уж перевод будет одновременно "экспонироваться" не только у нас на сайте, но ещё и на pgpru.com, приглашаю коренное население Вашего портала активно участвовать в процессе. Кстати, мой email можно посмотреть [url=http://privoxy.asplinux.net/en.....ut_us.html]здесь[url[link6]] (да и у Вас я зарегистрировался под ником DRVTiny, только ведь лень мне каждый раз "входить", а с автоматической авторизацией через куки проблемы возникают).
— SATtva (24/10/2005 15:12)   
я тут как-то прочёл в одной статье о TOR, что реально действующих серверов OR по всему миру до сих пор насчитывается всего лишь 195 штук. Если это правда, то, видимо, и на английском языке вышеозначенные разделы man'а оказались невостребованными

Всего порядка четырёх сотен, но сейчас с ростом популярности TOR'а стало много трансиентных, появляющихся на короткое время. Ядро состоит из примерно трёхсот, из которых совсем немного замыкающих узлов (exit nodes). На самом деле это совсем не мало для распределённой анонимизирующей сети.

я как раз хочу хотя бы отдалённо передать смысл разделов по серверам TOR и серверам-перечислителям

Ну кого они там перечисляют? Вы как телефонный справочник называете, тоже книгой-перечислителем? :)

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

Таблица кодовых подстановок, равно как и правила кодирования, не обязаны держаться в тайне, это не ключ (или, точнее, не обязательно ключ; подстановочные военные шифры XVII-XVIII веков использовали секретные кодовые книги). Кодирование и шифрование — разные понятия. Я уже настолько свыкся с тем, что их повсеместно путают, что уже даже не поправляю. Посмотрите оба определения в Словаре[link7], я постарался достаточно чётко их разграничить.

На самом деле это скорее домены (если использовать сие понятие в несколько нетрадиционном смысле), а не семейства или семьи.

Если не хотите всех совершенно запутать, не используйте традиционные термины в нетрадиционном смысле. Домен — это домен, как ими управляет ICANN. Были когда домены королевские, но применительно к ИТ — это прежде всего доменное имя. "Семейство" или "группа" — вполне корректный перевод.
Гость (24/10/2005 20:43)   

Ну кого они там перечисляют? Вы как телефонный справочник называете, тоже книгой-перечислителем?


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

Таблица кодовых подстановок, равно как и правила кодирования, не обязаны держаться в тайне, это не ключ (или, точнее, не обязательно ключ; подстановочные военные шифры XVII-XVIII веков использовали секретные кодовые книги). Кодирование и шифрование — разные понятия. Я уже настолько свыкся с тем, что их повсеместно путают, что уже даже не поправляю. Посмотрите оба определения в Словаре, я постарался достаточно чётко их разграничить.


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

Если не хотите всех совершенно запутать, не используйте традиционные термины в нетрадиционном смысле. Домен — это домен, как ими управляет ICANN. Были когда домены королевские, но применительно к ИТ — это прежде всего доменное имя. "Семейство" или "группа" — вполне корректный перевод.


OK, согласен, пусть будет "семейство"!
— SATtva (24/10/2005 21:16)   
Дискуссия слишком далеко уходит от корректив по чисто словарным статьям в филологию. Со своей стороны продолжать не вижу смысла, все предложения изложил.
— unknown (25/10/2005 20:44)   
я тут как-то прочёл в одной статье о TOR, что реально действующих серверов OR по всему миру до сих пор насчитывается всего лишь 195 штук.

cat /var/lib/tor/cached-directory | grep "router " | nl | awk {'print $1'} | tail -n1

335
Гость (26/10/2005 22:42)   
По поводу SocksPort и SocksBindAddress: спрашиваю что называется "в лоб ": правильно или нет извлекать именно таким образом (см. ниже) номер порта, который слушает TOR?:
Гость (28/10/2005 22:32)   
Такое впечатление, что меня не совсем правильно поняли. Объясняю человеческим языком: я предполагаю, что при задании порта в SocksBindAddress значение SocksPort (пусть даже эта опция используется "ниже по тексту") попросту игнорируется (по аналогии с парой ORPort:ORBindAddress). Это так или нет?
Кстати, тот код, который я привёл выше – всего лишь кусочек из из моего скрипта на bash (называется "tor_pvx", предназначен для синхронной правки конфигов TOR'а и Privoxy)
— unknown (29/10/2005 13:39)   
SOCKSPort PORT – это по умолчанию.

SOCKSBindAddress IP[:PORT]

This directive can be specified multiple times to bind to multiple addresses/ports.

Так можно задать дополнительные порты для разных адресов. Мне кажется, вторая комманда имеет больший приоритет. (ну по аналогии с /etc/hosts/deny и /etc/hosts/allow).
Гость (29/10/2005 16:28)   
Тогда предлагаю такой вариант: скрипт для того, чтобы определить, какие сейчас IP:Порт используются TOR'ом (с Privoxy, к счастью, всё намного проще), определяет, есть ли в torrc незакомментированная строка SocksBindAddress. Если такая строка есть, скрипт берёт значение порта оттуда и ставит # перед открытыми строками SocksPort = ... , а если SocksBindAddress'а нет, то: 1-й вариант – просто взять значение порта, а torIP приравнять к 127.0.0.1; 2-й вариант – сделать то же, что в 1-м варианте + закомментировать SocksPort и вставить новую строку SocksBindAddress = 127.0.0.1:<порт из SocksPort=>
Как Вы думаете, так правильно будет или нет? Кстати, unknown, Вы на bash'е скрипты пишете? А то, может, я для наглядности прямо сразу соответствующий код выдавать буду (с комментариями)?
— unknown (29/10/2005 20:32)   
Кстати, unknown, Вы на bash'е скрипты пишете?

Ну как же в Линуксе и без баша? :-)

А то, может, я для наглядности прямо сразу соответствующий код выдавать буду

Мы так распугаем всех посетителей этой ветки.

Может в Линукс-разделе форума создать тему-проект по скриптованию tor? Опишите подробнее в начале поставленную задачу. Хотя эти две ветки будут между собой пересекаться.

И мне ваш стиль показался не очень наглядным. Я привык по-другому. Вместо трудночитаемого перечисления классов на sed мне проще работать с полями в awk.

Я бы делал как-то по-своему проще и нагляднее что-ли:



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

Я вот только не очень понимаю, зачем это нужно? Если кто-то будет расшаривать tor по локалке или привязывать к разным адресам и портам, то разбирая все такие случаи мы увязнем в скриптописательстве. Пусть они лучше ручками или сами скрипты пишут.
Гость (29/10/2005 22:13)   

И мне ваш стиль показалс[]я не очень наглядным. Я привык по-другому. Вместо трудночитаемого перечисления классов на sed мне проще работать с полями в awk.


На самом деле sed использутся постольку поскольку он имеет вполне полноценную поддержку т.н. "расширенных" регулярных выражений. А регулярные выражения нужны для того, чтобы стало возможным отбирать строки по признаку соответствия чётко определённому синтаксису. Именно описанием синтаксиса с последующим извлечением несущих требуемую смысловую нагрузку частей по сути и является последовательность из соединённых программным каналом экземпляров потокового редактора sed. Недостатком Вашего метода является как раз то, что Вы чётко определяете корректное положение значащих полей относительно соответствующих разделителей, но не проверяете содержимое собственно самих полей. Т.е. строка, в которой допущена ошибка или опечатка будет пропущена "дробящим" фильтром awk, но забракована сканирующим фильтром регулярного выражения. На самом деле, даже мой вариант не является абсолютно защищённым от ошибок, поскольку регулярными с помощью ргулярнх выражений всех проблем не решишь, наглядный тому пример: пользователь может оставить в torrc такую запись: SocksBindAddress 192.168.0.0:443 По сути – это прото надругательство над здравым смыслом, но по формальным признакам соответствия синтаксису, определяемому на уровне классов символов никакго криминала вроде бы и нет. Но подобная ошибка может быть совершена пользователем разве что по злому умыслу (ну что делать, если человек сам себя решил без надёжного прикрытия анонимайзера оставить), так что подобные безнадёжные клинические случаи, возможно, и не стоит принимать во внимание... Откровенно говоря, меня в значительно большей степени волнует другая, гораздо более серьёзная, проблема: ведь пользователь без всякого зазрения совести может указать в конфигурационном файле множество строк SocksBindAddress и множество SocksPort. Если со 2-м можно хоть как-то бороться (оставить только последнее (или первое) значение SocksPort, напрочь закомментировав всё остальное), то над тем, что же, собственно, можно извлечь из torrc при неудачном стечении обстоятельств под номером 1 – ума не приложу, хотя голову над этим ломаю уже давно. Аналогичная ситуация иеет место в случае, когда нужно извлечь адресуемый SOCKS-пор, адресуемый Privoxy, из значения опции forward-socks4a Этот треклятый forward на вполне легальных основаниях может быть задан в различных вариациях бесконечное число раз (например, меня бы не удивил миллион строк forward в одном config'е, хотя в этом случае спасёт то, что Privoxy просто "рухнет" в тот момент, когда он попытается передать такой файл на вход парсера), так что по сути автоматическое редактирование файлов конфигурации torrc и config теоретически даже при 2-х forward-socks4a'ях или 2-х SocksBindAddress'ах может привести к совершенно непредсказуемым результатам, что вообще говоря очень сильно меня удручает. такое впечатление, что для идеального решения задачи нужно написать полноценный парсер этих конфигов или... склеить (объединить) те парсеры, которые используются собственно кодом Privoxy и TOR'а. Не слабая задачка, однако....
.
Кстати, если в качестве разделителей для awk использовать регулярные выражения, наши антагонистические концепции синтаксического разбора практически будут полностью совпадать.

Я вот только не очень понимаю, зачем это нужно? Если кто-то будет расшаривать tor по локалке или привязывать к разным адресам и портам, то разбирая все такие случаи мы увязнем в скриптописательстве. Пусть они лучше ручками или сами скрипты пишут.


Идея в другом состоит: нужно создать программу-переходник (я назвал её "мостом") между TOR и Privoxy, позволяющую распознавать (при старте) и менять текущее состояние связки этих прокси: замкнута она или разомкнута, идёт ли передача пакетов данных в направлении от TOR к Privoxy (очевидно, данные при этом не должны бы (хотя при отключенной фильтрации Privoxy это не имеет значения) претерпевать криптографических изменений на стороне TOR) или наоборот – в направлении от Privoxy к TOR, какой адрес (пресловутая пара IP:Порт ) используется для приёма и фильтрации на уровне HTTP-протокола, а какой – для работы на уровне прокола TCP/IP с шифрованием данных и конструированием маршрута передачи пакета через цепочку из 3-х анонимных серверов сети OR и т.д.
При чём определение состояния моста (0=разведён, 1-наведён, передача от Privoxy к TOR, 2 – наведён, передача от TOR к Pirvoxy, 3 – ошибочное состояние моста, коллизия, разрешаемая аварийным завершением отработки запроса по тайм-ауту ожидания ответа удалённого хоста) и переключение направления передачи данных между TOR и Privoxy уже сейчас реализует cкрипт tor_pvx в сопряжении с простеньким фронтэндом к нему, написанным на Gambas (Это по сути Visual Basic 4 Linux, пусть и не умеющий компилировать до машинного кода (но создающий промежуточный байт-код, аналогично тому, как это делает компилятор javac )).
Итак, хотелось бы знать, что Вы думаете по поводу всего вышеизложенного: есть в этом хоть какое-то разумное зерно или мне давно уже надо было 03 на дом вызывать?
Гость (29/10/2005 22:23)   
Прошу извинить меня за неудовлетворительный вид первого абзаца: в данном случае по количеству опечаток и ошибок набора я умудрился сам себя превзойти! :-( В следующий раз надо будет под учётной зписью DRVTiny входить на форум (дабы иметь возможность редактировать свои сообщения).
— unknown (29/10/2005 23:15)   
пользователь может оставить в torrc такую запись: SocksBindAddress 192.168.0.0:443 По сути – это прото надругательство над здравым смыслом, но по формальным признакам соответствия синтаксису, определяемому на уровне классов символов никакго криминала вроде бы и нет.

Если пользователь не придерживается синтаксиса конфига, значит он "сам себе злобный буратино", как вы и начали замечать. Пусть правит свои конфиги ручками и для tor'a и для privoxy. Может он будет расшаривать тор по разным локалкам или еще как извращаться.
Может написать программу, которая бы выводила обидные сообщения и выбрасывала пользователя из консоли, если он залезет в /etc/shadow и матерные слова в полях там напишет?

Зачем нужна эта автоматическая парсилка-конфигурялка-переключалка для tor'a? Какие реально она проблемы решит?
Она облегчит использовать tor неподготовленным пользователям?
Или это postinstall скрипт для deb-пакета? Чтобы набрать dpkg-reconfigure?

есть в этом хоть какое-то разумное зерно или мне давно уже надо было 03 на дом вызывать?

Ну есть повод подумать о профилакте. Это не конкретно вам совет, а всем нам: сочувствующим и участвующим.
Я честно говоря так и не понял где тут спрятана разумное зерно и в чем конкретно идея.
Гость (30/10/2005 08:59)   

Зачем нужна эта автоматическая парсилка-конфигурялка-переключалка для tor'a? Какие реально она проблемы решит?
Она облегчит использовать tor неподготовленным пользователям?
Или это postinstall скрипт для deb-пакета? Чтобы набрать dpkg-reconfigure?


Идея состоит в том, чтобы использовать TOR в связке с Privoxy как 1 составной прокси, занимающий 1 SOCKS-порт и 1 HTTP-порт. Выглядеть всё это должно так: из одного пакета устанавливается сразу и TOR, и Privoxy, а фронтэнд для управления этим конгломератом, опирающийся на функциональность скрипта tor_pvx, помогает пользователю абстрагироваться от подробностей внутреннего устройства программы, позволяя представлять её единым монолитным прокси, обеспечивающим super privacy за счёт расширенных возможностей фильтрации контента+заголовков HTTP (Privoxy) и предоставления анонимных сервисов (TOR)
Проблема состоит в том, как обрабатывать множественные вхождения строк SocksBindAddress и forward-socks4a в torrc и config'е соответственно, а также возникают определённые трудности в связи с тем, что gambas не является компилятором, так что по-видимому его модуль интерпретирующий байт-код модуль gbx придётся включать в пакет, после чего в целом программа будет "весить" уже где-то около 1,5Мб и тянуть за собой довольно много зависимостей..
— unknown (30/10/2005 12:18)   
возникают определённые трудности в связи с тем, что gambas не является компилятором,

Что-то я его не нашел в Debian. Если его там нет, то это наводит на мысли, что у него проблемы с лицензией или еще чем-то.

возникают определённые трудности в связи с тем, что gambas не является компилятором,

Выводить предупреждение: обнаружено столько то портов-адресов, сами выберите тот, который будете использовать. Раз пользователь замутил себе такой сложный конфиг, то ему уже некуда абстрагироваться.

Идея состоит в том, чтобы использовать TOR в связке с Privoxy как 1 составной прокси,

Все равно это костыли какие-то. Если пользователь вручную правит настройки, то сам за них отвечает. А здесь – лишняя автоматизация – больше вероятность упустить нестандартную ситуацию – больше вероятность ошибки – больше вероятность дыры в безопасности всей схемы.

Возможно сам privoxy форкнут и включат в него поддержку tor?



так что по-видимому его модуль интерпретирующий байт-код модуль gbx придётся включать в пакет, после чего в целом программа будет "весить" уже где-то около 1,5Мб и тянуть за собой довольно много зависимостей..



tor специально написан в маленьком объеме кода. А здесь получается громоздкое решение, в котором уже на этапе создания не просчитать все возможные нестыковки и ошибки. Лучший фактор безопасности – разумный минимализм.
Гость (30/10/2005 19:25)   

Что-то я его не нашел в Debian. Если его там нет, то это наводит на мысли, что у него проблемы с лицензией или еще чем-то.


В Debian, насколько я знаю, включаются исключительно "идеологически выверенные" программы, в число которых Gambas не попадает по одной простой причине: это не игрушечный BASIC наподобие yabasic, это – мощный полнофункциональный объектно-ориентированный язык программирования, по сути представляющий BASIC как реальную альтернативу C-подобным клонам наподобие Java или C++ (к тому, наверное, же нездоровые ассоциации с вездесущим Microsoft Visual BASIC возникают). К сожалению, многие адепты Linux'остроительства относятся с откровенным пренебрежением ко всяким языкам программирования, не являющимися диалектами C. Я как раз наоборот с большим уважением отношусь к оригинальным самостоятельным языкам, таким как Intel Assembler, Fortran, BASIC, Pascal, Ada, REXX (скриптовый), встроенный язык Shell оболочки BASH. В общем, так вот и получается, что идеология Debian'овцев на все 100% является для меня чуждой, неприемлемой (вообще у меня очень много претензий идеологического плана к Debian'овцам (о чём я уже неоднократно говорил на раличных форумах), так что предлагаю не развивать далее эту тему). На самом деле Gambas[link8] распространяется на условиях GPL почти исключительно в исходных кодах (хотя раньше для дистрибутива Mandrake собирались rpm'ки).


Возможно сам privoxy форкнут и включат в него поддержку tor?


Вся проблема как раз в том, что разработчики Privoxy окончательно бросили своё детище в связи с "высоким уровнем занятости и семейными обстоятельствами", так что развивать и "форкать" Privoxy – теперь удел заинтересованных лиц. Я таким лицом являюсь, но мне совершенно не хочется лезть в код Privoxy, поскольку, как я уже отмечал, мне совершенно "не улыбается" писать что бы то ни было на диалектах C (для меня мукой является даже создание кода на PHP, поскольку в этом языке признаки "тяжёлой наследственности" проявляются практически во всём (за исключением работы с переменными, что вполне понятно, поскольку PHP-язык интерпретируемый, а не компилируемый)).

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


Ну тогда нужно собрать отдельный бинарный пакет с Gambas'ом, тем более, что в "полные комплекты" многих популярных дистрибутивов (SuSE, Mandriva) Gambas и так уже включен.
Гость (30/10/2005 19:28)   
Между прочим, вот Gambas для Debian (при чём совсем недавно был собран): http://www.linex.org/sources/l...../gambas/binary-i386/[link9]
— unknown (04/11/2005 14:35)   
Претензии к Debian отпадают[link10]. Пройдет "еще три года" и мы увидим этот гамбас в стабильной ветке.

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

Может у Gambas ниша офисных приложений "под заказ", как у delphi/kylix? Я просто думаю, что многих серьезных разработчиков/пользователей такой выбор отпугнет.

Хотя – это всего лишь фронтенд-переключалка, решать все равно вам.

что идеология Debian'овцев на все 100% является для меня чуждой, неприемлемой

Ну что вы так серьезно сразу! Отошли от генеральной линии Столлмана. Прямо правый уклонист! Может Вы еще выступаете за коммерческие драйвера в ядре и бинарную совместимость? ;-)

(полный offtopic)
Гость (29/01/2006 14:56)   

Может Вы еще выступаете за коммерческие драйвера в ядре и бинарную совместимость?


Угадали, попали что называется в точку :-)!

У нас здесь сайт, посвящённый tor'у наклёвывается на базе asplinux.net (tor.asplinux.net). Не желаете присоединится и разместить там свой контент (любой, лишь бы к TOR'у имел отношение)?
— unknown (29/01/2006 19:38)   
А Вы наш местный культурный полуфлейм читали?

http://www.pgpru.com/forum/viewtopic.php?p=8023#8023
http://www.pgpru.com/forum/viewtopic.php?t=1550
http://www.pgpru.com/forum/viewtopic.php?p=8043#8043
http://www.pgpru.com/forum/viewtopic.php?p=8193#8193

У меня к сожалению глобальный "out of time".
Было бы время, то разместил бы возможно что-то свое про tor. Но скорее на www.pgpru.com. Мне уже проще решать большинство вопросов с SATtva.

А у вас там еще небось " ...идеология Debian'овцев на все 100% является ... чуждой, неприемлемой" ;-)

И "коммерческие драйвера в ядре и бинарную совместимость" идеальны для продавцов красивых коробочек.
Впрочем, к оригинальному коммерческому PGP у меня тоже не много уважения. Но www.pgpru.com вышел за рамки этой марки и официально компанией PGP не поддерживается. А ASP-Linux сайт поддерживается продавцом коробок. Хотя эти идеологические тонкости – это не более чем шутка. Не принимайте всерьёз.

Криптография, так же как и создание базового софта, стандартов и протоколов – мне интересна как чистая наука, и в последнюю очередь как бизнес. У Дебьяновцев и Столлмана взгляды похожие.

Про ALT/ASP я тактично молчу, т.к. этими дистрибутивами не пользовался, не сталкивался и не планирую.
Могу только предположить, что он нужен по тем же бюрократическим соображениям, что и шифр ГОСТ – чтобы были чисто российские сертификаты на использование и соотвественно возможность занять работой некоторое количество людей.

Но я не хочу пустого флейма (для этого другие форумы есть), так что за предложение спасибо. Имею право хранить молчание (как называлась тема вверху).
Гость (31/01/2006 09:43)   
Имею право хранить молчание (как называлась тема вверху).

Дело в том, что ASPLiux. Net создан и поддерживается исключительно на добровольных началах нашим ASP'овским community, так что "продавцы коробок" к нам имеют довольно посредственное отношение. Кстати, ASPLinux свободно можно закачивать с FTP (порядка 4-х дисков), так что я не очень понимаю, при чём тут коробки. Собственно, Debian, записанный на диски, стоит ничуть не дешевле ASP'а (любой труд денег стоит). А сюда нужно ещё прибавить стоимость книжек, которые в "коробках" содержатся.
Но дело не в этом, а том, что у вас ведь наверняка на pgpru.com найдутся какие-нибудь полезные материалы о TOR. Давайте я их у себя размещу, если, конечно, вас проблемы бесценности интеллектуальной собственности не замучали вконец (хотя в любом случае я буду ссылаться на ваш сайт, так что претнезий быть не должно, как мне кажется).
Ещё мне нужен какой-нибудь примитивный движок для сайта, дабы свести к минимуму написание HTML-кода вручную. Можете что-либо порекомендовать?
Гость (31/01/2006 10:06)   

http://www.pgpru.com/forum/viewtopic.php?p=8023#8023
http://www.pgpru.com/forum/viewtopic.php?t=1550
http://www.pgpru.com/forum/viewtopic.php?p=8043#8043
http://www.pgpru.com/forum/viewtopic.php?p=8193#8193


Прочитал (не всё, конечно...) Не понял только одного: что именно от вас хотел Mimino? Кстати, Debian же ведь, насколько я помню, тоже использует SysV – скрипты в /etc/rc.d/init.d Если так, то проблема в принципе касалась абсолютно любого дистрибутива, в котором /etc/rc.d/init.d/functions обновился из пакета init-scripts. Дело было в том, что оригинальный стартовый скрипт TOR'а (из официального rpm-пакета) написан явно непрофессионально, т.е. вообще говоря просто коряво. Я его поправил. Со старыми init-script'ами он работал нормально, а с новыми – нет. Я только одного не понимаю: зачем, собственно, Mimino вдруг решил привлекать к решению чисто внутренней проблемы (которая и решилась-то довольно быстро) всех подряд. По крайней мере я его об этом точно не просил...
— SATtva (21/02/2006 20:30)   
у вас ведь наверняка на pgpru.com найдутся какие-нибудь полезные материалы о TOR. Давайте я их у себя размещу

Как Вы можете видеть, бОльшая часть всех материалов по тематике Tor'а находится в форуме; некоторые я попытался структурировать и опубликовать в Вики, чтобы позднее перенести в FAQ. Содержимым форума можете пользоваться на здоровье. :) С готовыми статьями пока напряг... как и со временем на их написание.

Ещё мне нужен какой-нибудь примитивный движок для сайта, дабы свести к минимуму написание HTML-кода вручную. Можете что-либо порекомендовать?

Я некоторое время назад подумывал о переводе всего сайта на движок Вики. Отказался от затеи из-за её радикализма. Но вообще идея самоорганизуемой открытой среды разработки материалов интересна.
— yGREK (07/04/2006 22:11)   
_DRVTiny_, думаю неплохо было бы русский перевод man'а выложить и на официальный сайт (tor.eff.org в смысле). Если неохота возиться – я могу это сделать – оформить wml'ку и выслать им на мыло. Естественно указав настоящего автора.

Ссылки
[link1] http://www.privoxy.asplinux.net/man-page/tor-man-page.html

[link2] http://www.privoxy.asplinux.net/man-page/tor-manual.html

[link3] http://lingvo.yandex.ru/en?text=circuit&st_translate=1

[link4] http://tor.eff.org/overview.html.en

[link5] http://www.pgpru.com/cgi-bin/todo/result.pl?id=4

[link6] http://privoxy.asplinux.net/en_ru/about_us.html]здесь[url

[link7] http://www.pgpru.com/glossary/

[link8] http://gambas.sourceforge.net

[link9] http://www.linex.org/sources/linex/debian/dists/cl/gambas/binary-i386/

[link10] http://packages.debian.org/cgi-bin/search_packages.pl?keywords=gambas&searchon=names&subword=1&version=all&release=all