FAQ

Ответы на наиболее частые вопросы.

  1. Зачем городить огород со своим VPN сервером? За те же деньги можно арендовать платный VPN-сервис.
  2. Как через VPN сервер качать торенты?

1. Зачем городить огород со своим VPN сервером? За те же деньги можно арендовать платный VPN-сервис.

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

Что касается стоимости: в своём Telegram-канале я постоянно публикую информацию о скидках на хостинги VPS. Вполне реально платить за аренду от $6 в год.

2. Как через VPN сервер качать торенты?

Через VPN качать торенты не нужно. Это медленно и за это вас могут забанить на хостинге VPS. Вы можете заходить на заблокированный в РФ трекер через VPN и скчивать .torrent файл. А вот загрузку контента нужно делать без VPN (на отдельном компьютере-качалке или на своём компьютере с выключенным VPN). Торент-клиенту нужно только получить список пиров/сидов от ананосера, дальше он качает сам. Но вот анонсеры, как правило, находятся в спсике запрещенных сайтов на территории РФ.

Можно сделать на своём VPS socks5 прокси, прописать его в настройки торрент-клиента и запретить клиенту использовать прокси для P2P-соединений.

Тогда клиент будет ходить через прокси только к анонсерам.

А ещё можно применить реверс-прокси. Как установить и настроить — описано в этой статье. Есть два сценария.

Первый: сделать полное зеркало трекера на своём доменном имени. В настройках трекера указать, что в .torrent-файле прописывать альтернативное доменное имя. Например, на сайте RuTracker опция называется «Доменное имя для трекера:» и находится в разделе редактирования профиля. У большинства других трекеров есть аналогичная настройка:

Второй сценарий: сделать зеркало только для анонсеров. Можно заглянуть внутрь .torrent файла или посмотреть, откуда пытается тянуть анонсы торент-клиент. Опять же на примере RuTracker: используются адреса

bt.t-ru.org

bt2.t-ru.org

bt3.t-ru.org

bt4.t-ru.org

Делаем финт ушами. Для реверс прокси добавляем конфиг с таким содержимым:

server {
	listen 80;
	server_name bt.t-ru.org;
	access_log null;
	error_log null;
	client_max_body_size 0;
	underscores_in_headers on;
	location / {
		proxy_headers_hash_max_size 512;
		proxy_headers_hash_bucket_size 64;
		proxy_set_header Host $host;
		proxy_set_header X-Forwarded-Proto $scheme;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		add_header Front-End-Https on;
		# whatever the IP of your cloud server is
		proxy_pass http://bt.t-ru.org;
	}
}
server {
	listen 80;
	server_name bt2.t-ru.org;
	access_log null;
	error_log null;
	client_max_body_size 0;
	underscores_in_headers on;
	location / {
		proxy_headers_hash_max_size 512;
		proxy_headers_hash_bucket_size 64;
		proxy_set_header Host $host;
		proxy_set_header X-Forwarded-Proto $scheme;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		add_header Front-End-Https on;
		# whatever the IP of your cloud server is
		proxy_pass http://bt2.t-ru.org;
	}
}
server {
	listen 80;
	server_name bt3.t-ru.org;
	access_log null;
	error_log null;
	client_max_body_size 0;
	underscores_in_headers on;
	location / {
		proxy_headers_hash_max_size 512;
		proxy_headers_hash_bucket_size 64;
		proxy_set_header Host $host;
		proxy_set_header X-Forwarded-Proto $scheme;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		add_header Front-End-Https on;
		# whatever the IP of your cloud server is
		proxy_pass http://bt3.t-ru.org;
	}
}
server {
	listen 80;
	server_name bt4.t-ru.org;
	access_log null;
	error_log null;
	client_max_body_size 0;
	underscores_in_headers on;
	location / {
		proxy_headers_hash_max_size 512;
		proxy_headers_hash_bucket_size 64;
		proxy_set_header Host $host;
		proxy_set_header X-Forwarded-Proto $scheme;
		proxy_set_header X-Real-IP $remote_addr;
		proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
		add_header Front-End-Https on;
		# whatever the IP of your cloud server is
		proxy_pass http://bt4.t-ru.org;
	}
}

А на компьютере с торент-клиентом в файле hosts (в Windows-системах по пути c:\windows\system32\drivers\etc\, в Linux в папке /etc/) прописать

111.111.111.111 bt.t-ru.org
111.111.111.111 bt2.t-ru.org
111.111.111.111 bt3.t-ru.org
111.111.111.111 bt4.t-ru.org

где 111.111.111.111 — это IP-адрес вашего VPS.

И вот, что получается в итоге: торент-клиент читает .torrent файл и обнаруживает там адрес анонсера (в случае RuTracker это будет один из: bt*.t-ru.org). Он пытается соединится с ним, но для этого нужно узнать его ip-адрес через системный DNS. Так как файл hosts имеет высший приоритет над любым DNS, то торент-клиенту возвращается ip-адрес вашего VPS. Он идёт туда с http-запросом. На VPS стоит реверс-прокси, который знает, что http-запросы на адреса bt*.t-ru.org нужно отправлять, как ни странно, на адеса bt*.t-ru.org (смотрим в опцию proxy_pass в приведённом выше конфиге). Вот только в файле hosts у реверс-прокси ничего не прописано и он обращается к DNS за настоящим ip-адресом, получает его (VPS же не в РФ, там Роскомнадзора нет) и далее пересылает запросы торент-клиента и возвращает ответы. Наш торент-клиент получает аноаны (т.е. адеса пиров/сидов) и дальше уже соединятеся с ними и качает.

Обязательно включите принудительное шифрование трафика в торент-клиенте.

Вы можите оставить комментарий, или поставить трэкбек со своего сайта.

Написать комментарий

XHTML: Вы можете использовать эти теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>