monero-site/_i18n/ru/resources/user-guides/tor_wallet.md

86 lines
7.7 KiB
Markdown
Raw Normal View History

Simplify versioning system for user guides This new approach doesn't require version numbers and make easier for contributors to understand the status of the document. There are only 3 states: - Outdated: The page is outdated and might not work as expected - Untranslated: The page needs to be translated - Translation outdated: The page is translated, but the original (English) document has been updated To mark a guide as outdated, we change the boolean of the front matter entry 'outdated' in /resources/user-guides/GUIDE. If 'False', the guide is updated. If 'True' all versions of the guide (English included) will show a warning at the bottom of the page. The other 2 states are related to the status of the translated pages and we control them from the language-specific user guides: /_i18n/LANG/resources/user-guides/GUIDE. At the top of the page a snippet will include 2 parameters: - translated: "yes" if the page is translated, "no" if it's not. - translationOutdated: "yes" if the translation is outdated, "no" if it's not This new system aims to be simpler than the precedent, avoiding to compare versioning numbers and using a higher level system instead (yes, no, True, False). I also removed the middle way status 'only minor changes', because if there are only minor changes that don't affect the usability of the guide, we don't need to point it out. The old system was complex and people didn't use it. These changes will hopefully make things easier for translators and other contributors.
2020-05-03 16:38:01 +03:00
{% include disclaimer.html translated="yes" translationOutdated="no" %}
2020-05-07 20:22:28 +03:00
Ниже нами приводится пример конфигурации, позволяющей запустить демон Monero (например, на домашнем сервере или VPS), к которому вы могли бы подсоединиться с другого компьютера, на котором будет запущен ваш кошелёк. Для получения информации транзакций, необходимой для вашего кошелька, мы используем анонимную сеть Tor. Преимущество данного подхода заключается том, что демон (`monerod`) может постоянно осуществлять передачу/приём блоков, в то время как кошелёк будет подсоединяться по необходимости и иметь доступ к полному блокчейну. [Monerujo](https://www.monerujo.io/) также должен работать через [Orbot](https://guardianproject.info/apps/org.torproject.android/). Поскольку скрытые службы Tor обеспечивают возможность шифрования и аутентификации, вы можете быть уверены в том, что ваши данные RPC не будут передаваться в открытую. Tor также решает проблемы, зачастую характерные для домашних серверов и связанные с пробросом портов, изменением IP-адресов и т. д. Всё это просто работает. Данная настройка также позволит скрыть тот факт, что вы подсоединяетесь к удалённому узлу Monero. Она была протестирована с версией Monero `v0.15.0.1` В ходе тестирования кошелёк, установленный на ноутбук Mac, соединялся с удалённым узлом Linux (Ubuntu 18.04.2).
## Создание скрытой службы Tor для RPC
Убедитесь в том, что [Tor установлен](https://community.torproject.org/relay/setup/bridge/debian-ubuntu/) и работает надлежащим образом. После этого можно двигаться дальше.
Необходимо только конфигурировать сервер RPC так, чтобы он использовал скрытую службу на порте `18081`.
Файл: `/etc/torrc`
```
HiddenServiceDir /var/lib/tor/monero-service/
HiddenServicePort 18081 127.0.0.1:18081
```
Перезапустите Tor:
```
sudo systemctl restart tor@default
```
Убедитесь в том, что Tor запустился правильно:
```
sudo systemctl status tor@default.service
```
Если всё хорошо, отметьте название скрытой службы (луковый адрес):
```
sudo cat /var/lib/tor/monero-service/hostname
```
2020-05-07 20:22:28 +03:00
Он будет выглядеть примерно так: like 4dcj312uxag2r6ye.onion Используйте его для `HIDDEN_SERVICE` ниже.
2020-05-07 20:22:28 +03:00
### Конфигурирование демона для использования RPC
В этом примере мы не используем Tor для взаимодействия с p2p сетью, а просто соединяемся с узлом Monero, поэтому нам необходима только скрытая служба RPC.
Файл: `~/.bitmonero/bitmonero.conf` (в домашней директории пользователя Monero)
```
no-igd=1
restricted-rpc=1
rpc-login=USERNAME:PASSWORD
```
(Чтобы использовать RPC придумайте ИМЯ ПОЛЬЗОВАТЕЛЯ (USERNAME) и ПАРОЛЬ (PASSWORD))
Перезапустите демон: `monerod stop_daemon; sleep 10; monerod --detach`
Убедитесь в том, что демон запустился правильно:
```
tail -f ~/.bitmonero/bitmonero.log
```
2020-05-07 20:22:28 +03:00
## Подключение к вашему узлу с локального кошелька
Убедитесь в том, что Tor работает локально, после чего можно подсоединиться к сети Tor. Одним из простых способов, в случае с Mac, является простой запуск браузера Tor и использование демона Tor.
Затем следует протестировать простую команду RPC, например:
```
curl --socks5-hostname 127.0.0.1:9150 -u USERNAME:PASSWORD --digest -X POST http://HIDDEN_SERVICE.onion:18081/json_rpc -d '{"jsonrpc":"2.0","id":"0","method":"get_info"}' -H 'Content-Type: application/json'
```
Замените `USERNAME`, `PASSWORD`, и `HIDDEN_SERVICE` значениями, указанными выше. Измените порт `9150` если того потребует ваш локальный демон Tor.
Когда выполняется команда, и если всё работает надлежащим образом, вы должны получить некоторую информацию об удалённом демоне. Если это не так, следует добавить ` -v ` в начале и попытаться выяснить, почему соединение отсутствует, проверить средства сетевой защиты (firewall), правильность пароля и т. д.
Как только всё заработает, можно подсоединяться, используя свой CLI-кошелёк:
```
./monero-wallet-cli --proxy 127.0.0.1:9150 --daemon-host HIDDEN_SERVICE.onion --trusted-daemon --daemon-login USERNAME:PASSWORD --wallet-file ~/PATH/TO/YOUR/WALLET
```
По необходимости можно заменить значения, указанные выше.
## GUI
Если вам хочется поэкспериментировать с соединением GUI через Tor, вы можете попытаться воспользоваться `torsocks` (следует отметить, что это может привести к утечке информации — не стоит особо полагаться на этот вариант, если от вашей анонимности будет зависеть ваша жизнь). Мы приводим пример для MacOS, который при необходимости можно адаптировать по Linux GUI:
```
torsocks --port 9150 /Applications/monero-wallet-gui.app/Contents/MacOS/monero-wallet-gui
```
Это позволит GUI связаться с сетью Tor. Как только будет открыт GUI и кошелёк будет запущен, будет необходимо конфигурировать его для соединения с вашей скрытой службой Tor, добавив соответствующий луковый адрес: "Settings > Node > Remote node > Address".
Мы надеемся, что в следующих версиях GUI будет добавлена прямая поддержка Tor / I2P, и необходимость в использовании командной строки и `torsocks` отпадёт.
# Дополнительные ссылки
* [ANONYMITY_NETWORKS.md](https://github.com/monero-project/monero/blob/master/ANONYMITY_NETWORKS.md)
* [Используем Tor](https://github.com/monero-project/monero#using-tor) (Monero README)