У меня есть платная подписка на Google Cloud Platform, и я хочу запустить ретранслятор Tor и узлы выхода. Я использую образ Docker квантовый объект / докер-тор-выход-реле, просто подключи и работай.
Вкратце, согласно полученным ответам:
Мое первоначальное обоснование
Поскольку вытесняемые виртуальные машины намного дешевле, я хотел использовать группы экземпляров с вытесняемыми виртуальными машинами. Затем, чтобы иметь узлы высокой доступности, я планирую использовать балансировщик нагрузки GCP, чтобы в любой момент работал только один IP-адрес и хотя бы одна виртуальная машина.
Кроме того, я изначально планировал использовать виртуальные машины типа g1-small (1/2 общего виртуального ЦП и 1,7 ГБ ОЗУ) для затрат, и я сравниваю с другими альтернативами, такими как виртуальные машины обычного класса с «обязательным использованием» (которые применяют скидки ).
Инвестиции
Ниже приведены ориентировочные затраты на виртуальные машины (согласно калькулятору):
Config. | Class | vCPU | RAM | C. usage | Price/Mo
----------------------------------------------------------------
g1-micro | Regular | 0.2 | 600MB | Not set | US$3.88
g1-small | Preemptible | 0.5 | 1.70GB | Not set | US$5.11
g1-small | Regular | 0.5 | 1.70GB | Not set | US$13.80
n1-standard | Regular | 1 | 3.75GB | 3 years | US$15.60
Custom | Regular | 1 | 1GB | 3 years | US$11.78
Custom | Regular | 1 | 2GB | 3 years | US$13.17
ВЦП - Intel Xeon @ 2,3 ГГц, микроархитектура Haswell.
Кроме того, нам нужны предполагаемые затраты на исходящий трафик (ежемесячно потребляемая пропускная способность) (полезно для групп, а не для отдельных виртуальных машин):
BW | Zone 1 | Zone 2 | Zone 3 | Zone 4 | Price
-----------------------------------------------------
70GB | 40GB | 15GB | 5GB | 10GB | US$9.42
80GB | 80GB | 30GB | 10GB | 20 GB | US$19.27
350GB | 200GB | 75GB | 25GB | 50 GB | US$48.82
700GB | 400GB | 150GB | 50GB | 100 GB | US$98.07
Zone 1: Americas/EMEA
Zone 2: Asia/Pacific
Zone 3: Australia
Zone 4: China
Характеристики ВМ
В настоящее время я тестирую виртуальную машину со следующей конфигурацией:
run -d -p 2222:22 -p 80:80 -p 9050:9050 -p 9001:9001 quantumobject/docker-tor-exit-relay
Наконечник: Перейти к Сеть VPC > Брандмауэр и создайте правило под названием "allow-tor" и установите:
При создании ВМ / шаблона перейдите в Управление, безопасность, диски, сеть, единоличное владение, Выбрать Сети, и установите тег вы устанавливаете в настройках брандмауэра.
Контрольный показатель
Кроме того, я провел тест openssl (openssl speed aes
в течение 3 секунд каждый cbc) в экземплярах g1-small и Custom 1 GB RAM 1 vCPU, и я получил следующие результаты:
g1-small:
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes 16384 bytes
aes-128 cbc 102714.85k 114937.26k 118729.12k 119713.45k 120548.01k 120684.54k
aes-192 cbc 87781.72k 96917.15k 99274.67k 100145.83k 100463.96k 100515.84k
aes-256 cbc 76597.38k 83198.89k 84709.38k 85080.02k 85516.29k 85859.83k
Пользовательский:
aes-128 cbc 100811.34k 114144.42k 116054.50k 117985.42k 119586.42k
aes-192 cbc 85914.78k 95220.79k 98367.39k 98994.68k 99095.15k
aes-256 cbc 76171.38k 82969.05k 84497.50k 85145.08k 84728.69k
Производительность почти такая же, возможно потому, что общий виртуальный ЦП получает полную мощность в определенные моменты, когда это необходимо, но не всегда, по сравнению с выделенным 1 виртуальным ЦП.
Мои вопросы:
Какая пропускная способность рекомендуется для каждого экземпляра?
Безопасно ли запускать один или несколько узлов ретрансляции / выхода Tor за одним балансировщиком нагрузки в GCP? Нет.
Безопасно / полезно ли запускать вытесняемые узлы, которые выключаются через 24 часа работы или меньше? (Назначение IP-адресов динамическое, и тот же IP-адрес для нового узла не гарантируется) Безопасно, но бесполезно.
Являются ли g1-micro или g1-small Достаточно ли спецификаций виртуальной машины для запуска узла с достойной производительностью? Пользовательская виртуальная машина с 1 ГБ ОЗУ дешевле и мощнее.
Заранее спасибо.
Запуск нескольких вытесняемых узлов для резервирования - плохой план. Если вытесняемые узлы работают в одном и том же регионе, вполне вероятно, что они будут остановлены одновременно из-за увеличения спроса в регионе.
Вытесняемые узлы в разных регионах с меньшей вероятностью будут отключены одновременно, но риск все еще существует и может зависеть от того, что делают другие клиенты GCE, что полностью вне вашего контроля.
Не используйте вытесняемые узлы, если вам важна доступность. Они подходят для пакетной обработки, где вытеснение не представляет большой проблемы, и вы можете просто выполнить обработку позже.
Безопасно ли запускать вытесняемые узлы, которые выключаются через 24 часа работы или меньше? (Назначение IP-адресов динамическое, и тот же IP-адрес для нового узла не гарантируется)
Сейф? Конечно. Но вы никогда не увидите к ним никакого трафика. Здесь есть отличная статья о том, как Tor проверяет новые реле и выходные узлы: Жизненный цикл нового реле
По сути, любое новое реле «тестируется» в течение 60+ дней, прежде чем обнаружит реальный трафик. Я могу поручиться, что это верно, поскольку я использую реле Tor около 2 лет. Вы вряд ли увидите какой-либо реальный трафик, если ваши узлы не будут сохранять одни и те же идентификаторы при каждом перезапуске, и если ваш узел не может оказаться надежным, он, вероятно, будет помещен ниже в пищевой цепочке.
Кроме того, если узел переходит в автономный режим на долгое время, вам, возможно, придется пересадить эти периоды ожидания. Мой ретранслятор был отключен в течение 3 месяцев, поскольку я переезжал в другую страну, и я еще не видел, чтобы трафик вернулся к тому, что было раньше.
Вы можете узнать, что Tor думает о вашем ретрансляторе, просмотрев его на их странице показателей. Например, вот мой.
Достаточно ли спецификаций виртуальной машины g1-small для запуска высокопроизводительного узла?
Идея Tor о высокой производительности отличается от всего Интернета в целом. Например, я запускаю свой на довольно старом Intel NUC с довольно старым процессором Intel Celeron и печальным объемом оперативной памяти, и он ограничивается примерно 70 Мбит / с - потому что это все, что OpenSSL может протолкнуть через процессор. 70 Мбит / с - это очень много для ретранслятора Tor (возможно, не для выходного узла). Я полагаю, что даже простая полусовременная небольшая виртуальная машина сможет превзойти ее.