Я пытаюсь активировать аутентификацию по имени пользователя и паролю для моей установки tor, используя поля SOCKS5Имя пользователя и SOCKS5Password в файле /etc/tor/torsocks.conf. Я перезапустил службу после изменения конфигурации и проверил, действительно ли она перезапустилась. Но tor все еще доступен на моей машине без имени пользователя и пароля.
Я установил Tor из репозитория EPEL. Подробнее об установке:
Installed Packages
Name : tor
Arch : x86_64
Version : 0.2.7.6
Release : 5.el7
Current OS
CentOS Linux release 7.2.1511 (Core)
Tor Configuration
[root@torproxy ~]# cat /etc/tor/torsocks.conf | grep -v "^#"
TorAddress curl 10.0.0.43
TorPort 18009
OnionAddrRange 127.42.42.0/24
SOCKS5Username test
SOCKS5Password 1234
[root@torproxy ~]# cat /etc/tor/torrc | grep -v "^#"
ControlSocket /run/tor/control
ControlSocketsGroupWritable 1
CookieAuthentication 1
CookieAuthFile /run/tor/control.authcookie
CookieAuthFileGroupReadable 1
SOCKSPort 10.0.0.43:18009
SOCKSPolicy accept *
Фактически Tor не предпринимает никаких попыток проверить информацию аутентификации, которую ему предоставляет клиент SOCKS. Его можно использовать полностью без аутентификации, и он не имеет конфигурации для принудительной аутентификации. Таким образом, вам настоятельно рекомендуется не откройте порт SOCKS для любого IP-адреса, к которому вы не хотите подключаться напрямую.
На странице руководства:
NOTE: Although this option allows you to specify an IP address
other than localhost, you should do so only with extreme caution.
The SOCKS protocol is unencrypted and (as we use it)
unauthenticated, so exposing it in this way could leak your
information to anybody watching your network, and allow anybody to
use your computer as an open proxy.
Какой Тор делает Что касается аутентификационной информации, то это изоляция потока. Tor можно настроить для использования совершенно разных каналов для клиентов, которые «аутентифицируются» с разными учетными данными.
IsolateSOCKSAuth
Don’t share circuits with streams for which different SOCKS
authentication was provided. (On by default; you can disable it
with NoIsolateSOCKSAuth.)