Voice over TOR
Предлагаю для тестирования кипто VOIP-утилиту для работы через TOR (в режимах TOR -> доменное имя и TOR->скрытый сервис). Переделал с старого PGPFone: заменил транспорт на TCP и добавил адаптивный буфер для компенсации высокого jitter в TOR-туннеле. Также добавил обмен сообщениями и файлами.
Win98-XP-7-8. Полностью портируема. Работает peer-to-peer (звонить на доменное имя или TOR-hidden service). Использует DH4096+3DES.
Приветствуются замечания и пожелания.
Сайт проекта http://torfone.org (англ./рус.), там же доступны исходники (Visual C 6).
комментариев: 9796 документов: 488 редакций: 5664
Действительно, они в одном пакете, так что по отдельности штатно не удалить, да и смысла получается нет. Но ip(6)tables не обеспечивают работу протокола, они только управляют фильтрацией уже включенного (если он всё таки есть и включен). Вообще, это уже оффтопик в теме. На сайте приведено масса способов отключения IPv6, да и на обычном линуксовом сайте или в мануале к своему дистрибутиву найти конкретный и наиболее подходящий вам ответ проще. И результаты действий надо тщательно проверять. И не пользуйтесь его конфигами. Изучите всю систему инициализации сети с потрохами, чтобы написать свой скрипт управления файрволлом вместо неудобного ip(6)tables-save и ip(6)tables-restore. Прострелить себе при этом ногу — очень просто, поэтому опять же, не забывайте про тщательные проверки.
У меня IPv6 отключен через grub, как советовал unknown. Посмотрел, какая будет реакция на попытку загрузить его (есть в статье):
Зачем пытаться вручную отключить IPv6 в несметном количестве сервисов? В одном-двух свежеинсталлированных вы это сделать забудете, и вся методика станет очередной полумерой. Смысл — отключить в одном месте, но с глобальными последствиями, чтобы после этого даже те сервисы, которые могут работать с IPv6, после этого не смогли. Там предлагают отключать через sysctl. Вот не знаю почему, но лично у меня этот метод не работал. Я проверял.
В мире жопоруких кодеров надо самому всё перепроверять. Ошибку сделают они, а сидеть придётся вам, если не повезёт.
К unknown'у: предлагаю комментарий /comment78555, затем комментарии от /comment78600 и до /comment78631 включительно, а также от /comment78646 и до конца треда включительно перенести в более подходящую тему, где как раз шло обсуждение и того, как правила iptables писать, и того, как IPv6 выключать. В указанных диапазонах комментриев практически ничего нет про TorFone. Все комменты по теме я исключил из списка на перенос.
Сделайте человеческий порт на линукс, github.com, там сейчас, иесли чо, вся планета шарит сырцы таких проектов.
Очень будет здорово !
Уже died, полторы недели как...
Но её призрак будет бродить по сети и железу еще не один год.
Wine или CrossOver не поможет?
1-2 не важно, где Вы сейчас 95 или 98 найдете? А openbsd 3.9, а линукс 2.4?
Нет.
Порт с сырцов Visual C 6 в GNU environment будет лишь на пользу проекту, и обеспечит долгое существование.
Порт, порт и ещё раз порт. И в github всё сложите, не поленитесь. Вам не нужна свежая кровь в проекте?
Раритеты-то найти проблем не составит. Вот только их актуальность в 2014?
ХР — на мой взгляд, лучшее, что вышло в свет из застенок Майкрософта. По ощущениям, на фоне остальных продуктов, начиная с тех же 95 или 98 и заканчивая 7 и 8.
ХР актуальна уже более 10 лет. И думаю будет актуальна еще, если не столько же, то как минимум несколько лет. В зависимости от софта под неё.
Мне трудно её сравнивать с 7 или 8, по субъективным ощущениям и то, и другое отстой, хоть и не пользовался, но... даже желания не возникало, не говоря о потребности, в отличие от ХР.
комментариев: 393 документов: 4 редакций: 0
Поддерживаю. И 98 – тоже весьма неплохой вариант: разрешен прямой доступ к физическим портам ввода-вывода. Embedded-разработчику это часто нужно для написания всяких утилит для отладки проектов на микроконтроллерах: я обычно в борландовском С++ билдере (среда программирования для домохозяек) пишу короткие ассемблерные вставки с быстрым доступом к физическим портам. Вообще для подавляющего большинства удобство всегда было важнее безопасности, поэтому я все же предпочитаю Windows.
Особенно прочувствовал это в последние дни, пока портировал Торфон под линукс. К счастью, с положительным результатом: пропатчил код оригинальной SpeakFreely for Unix, теперь Linux-вариант совместим с ранее пропатченной мною Win32-версией и уже работает через Tor под моей Ubuntu (думаю, и другими nix). Чуть зашлифую, немного потестирую код и выложу на своем сайте. Т.к. Tor обеспечивает оконечное шифрование к HS, то даже в таком виде ее можно использовать для защищенной связи, не смотря на слабость родной криптографии.
Превращение в задуманный OnionPhone планирую осуществить в три этапа:
На первом добавить три варианта крипто (стандартый – AES256-OCB, альтернативный – Serpent128+HMAC256 и модерн Keccak-SpongeWrap), CSPRNG, а также провести аудит кода на предмет крипто-надежности.
На втором добавить кодеки, поддерживаемые TorFone (Opus, Codec2, MELPE), вокодер и шумоподавитель.
На третьем добавить возможность переключения с Tor на прямое UDP-соединение с проходом NAT (используя Tor в качестве SIP), а также оптимизацию Tor-латентности за счет смены цепочек.
Будем надеяться, что все задуманное будет реализовано. Советы и пожелания весьма приветствуются.
Подавляющее большинство на этом сайте предпочитает безопасность – основной мотив, ради которого мы здесь собрались.
Не пойму, зачем этот зоопарк – для количества? Так оно вряд ли кому надо.
Лучше оставьте минимум методов и протоколов, но наиболее востребованных и с наилучшими характеристиками.
А можно это сделать самым первым вариантом? Жду- не дождусь, когда заработает надежное прямое соединение!
Не взлетит. В том смысле, что бренд OnionPhone неудачен, плохо выговаривается и звучит гораздо хуже, чем TorFone.
Поменяйте эти названия местами, что ли. Или назовите TorFone Pro или еще как-то, но OnionPhone никуда не годится.
К сожалению, XP не умеет ряда полезных вещей, которые появились в W7/W8.
Например: попробуйте поднять телефонию в виртуальной машине XP.
XP неплохая и скромная по ресурсам система по сравнению с 7 и особенно 8; однако чем дальше, тем больше требуется усилий, чтобы тянуть совместимость.
комментариев: 393 документов: 4 редакций: 0
Мне кажется, это и есть необходимый минимум. Я не сторонник жесткого ограничения пользователя в выборе. Чтобы не конфузить обычных пользователей, установки по умолчанию будут определены в ini-файле.
Прямое соединение доступно без всяких патчей: SpeakFreely for UNIX слушает по умолчанию на UDP-портах 2074 и 2075, их необходимо пробросить в роутере для приема входящих звонков. Можно выбрать два соседние порты, изменив параметр 'INTERNET_PORT' в MakeFile и собрав версию под себя. При выполнении звонка вводите IP-адрес или доменное имя абонента. Возможно использовать PGP/GPG для автоматического согласования ключей (я пока не изучал этот фрагмент кода, но, думаю, авторы внимательно отнеслись к безопасности). Смотрите документацию на SpeakFreely.
То, о чем я писал выше, подразумевает использование Tor для первичного поиска абонента средствами TorChat и прохода NAT без ручного проброса портов, а также для согласования ключей (PFS) под прикрытием Tor (т.е. использование Tor вместо SIP-сервера: без регистрации и сбора метаданных).
Роджер опять будет недоволен.
Кстати, вопрос по ходу: какой вариант TorChat лучше использовать в Linux?