Вопрос или проблема
Я пытаюсь настроить socks-прокси-сервер на сервере Ubuntu AWS Lightsail. Я установил
sudo apt install dante-server
обновил конфигурацию
logoutput: syslog
internal: ens5 port = 1080
external: IPv4.OF.MY.SERVER
socksmethod: pam
user.privileged: proxy
user.notprivileged: nobody
user.libwrap: nobody
client pass {
from: DYNAMIC.IP.1.0/24 to: 0.0.0.0/0
log: connect disconnect
}
client pass {
from: DYNAMIC.IP.2.0/24 to: 0.0.0.0/0
log: connect disconnect
}
socks pass {
from: DYNAMIC.IP.1.0/24 to: 0.0.0.0/0
log: connect disconnect
}
socks pass {
from: DYNAMIC.IP.2.0/24 to: 0.0.0.0/0
log: connect disconnect
}
и запустил службу, убедился, что она работает и активна
sudo systemctl start danted
sudo systemctl status danted
ни один удаленный запрос из whitelista IP, ни local curl test не работают, для локального теста:
curl --socks5 username:password@localhost:1080 https://example.com
и всегда заканчивается на
Unable to receive initial socks response
для удаленного доступа (я убедился, что учетные данные установлены правильно и работают)
curl --socks5 username:[email protected]:1080 https://example.com
curl: (97) Recv failure: Connection reset by peer
Я убедился, что порт добавлен и проверен с помощью
sudo netstat -tuln | grep 1080
tcp 0 0 0.0.0.0:1080 0.0.0.0:* LISTEN
danted -v
Dante v1.4.2. Copyright (c) 1997 - 2014 Inferno Nettverk A/S, Norway
Я проверял системные журналы danted каждый раз перед и после того, как пытался что-то сделать, например, перезапустить danted, сделать локальный запрос и т. д.
sudo journalctl -u danted
но все журналы не показывают ошибки
Oct 13 06:43:50 ip-172-26-8-18 systemd[1]: danted.service: Deactivated successfully.
Oct 13 06:43:50 ip-172-26-8-18 systemd[1]: Stopped SOCKS (v4 and v5) proxy daemon (danted).
Oct 13 06:43:50 ip-172-26-8-18 systemd[1]: danted.service: Consumed 3.071s CPU time.
Oct 13 06:43:50 ip-172-26-8-18 systemd[1]: Starting SOCKS (v4 and v5) proxy daemon (danted)...
Oct 13 06:43:50 ip-172-26-8-18 systemd[1]: Started SOCKS (v4 and v5) proxy daemon (danted).
Oct 13 06:43:50 ip-172-26-8-18 danted[83664]: info: Dante/server[1/1] v1.4.2 running
Oct 13 07:08:59 ip-172-26-8-18 danted[83664]: info: sigterm(): exiting on signal 15
Oct 13 07:08:59 ip-172-26-8-18 systemd[1]: Stopping SOCKS (v4 and v5) proxy daemon (danted)...
затем я попытался переустановить danted и повторить попытку, результат тот же.
danted сводит меня с ума, я буду очень благодарен, если вы можете помочь мне
Ответ или решение
Решение проблемы "Danted: Unable to receive initial socks response"
Чтобы устранить ошибку "Unable to receive initial socks response" в Danted, следует учитывать несколько аспектов настройки и конфигурации SOCKS-прокси-сервера на вашем сервере AWS Lightsail с Ubuntu. Рассмотрим каждую потенциальную проблему и решение.
1. Проверка конфигурации danted.conf
Ваши настройки конфигурации Danted выглядят почти правильно, однако есть несколько моментов, на которые следует обратить внимание:
-
IP-адреса: Убедитесь, что
IPv4.OF.MY.SERVER
в строкеexternal: IPv4.OF.MY.SERVER
заменен на фактический внешний IP-адрес вашего сервера. Измените его в конфигурации и перезапустите службу. -
Динамические IP-адреса: Убедитесь, что
DYNAMIC.IP.1.0/24
иDYNAMIC.IP.2.0/24
правильно указывают на ваши действительные IP-адреса клиентов, которые должны иметь доступ к прокси. Вы можете временно заменить их на0.0.0.0/0
, чтобы протестировать подключение с любых IP-адресов и убедиться, что проблема не связана с ограничениями по IP.
2. Убедитесь, что используемые порты открыты
Вы проверили, что Danted слушает на порту 1080, но также необходимо убедиться, что этот порт открыт в настройках брандмауэра вашего сервера:
- Используйте
sudo ufw status
для проверки текущих правил. - Если порт 1080 не открыт, добавьте его командой:
sudo ufw allow 1080/tcp
- После этого выполните
sudo ufw status
еще раз, чтобы убедиться, что правило было добавлено.
3. Проверка сетевых подключений
Поскольку у вас есть ошибка "Recv failure: Connection reset by peer" для удаленных запросов, это может указывать на проблемы с сетью:
- Проверьте, что удаленные клиенты могут связываться с сервером по этому порту:
telnet YOUR_SERVER_IP 1080
- Если подключение не удается, возможно, проблема в конфигурации сети или в брандмауере на стороне AWS.
4. Проверка логов
Хотя вы проверили логи Danted и не нашли ошибок, стоит обратить внимание на более детализированные файлы логов:
- Убедитесь, что вы включили более подробный уровень логирования в конфигурации Danted для получения дополнительной информации:
logoutput: /var/log/danted.log
- Далее, проверьте
/var/log/danted.log
на наличие предупреждений или ошибок, которые могут указывать на проблему.
5. Аутентификация и доступ
Проверяйте правильность аутентификации:
- Убедитесь, что данные для входа (username:password) указываются правильно и соответствуют вашим настройкам PAM.
- Попробуйте временно отключить метод аутентификации (
socksmethod: none
) для тестирования подключения, чтобы исключить проблемы с аутентификацией.
6. Тестирование с помощью curl
Попробуйте выполнять тестовые запросы с использованием более простых форм curl
, например:
curl --socks5-username=username --socks5-password=password localhost:1080 https://example.com
Также проведите тестирование с использованием простой команды curl
без аутентификации, чтобы определить, работает ли это должным образом в минимальной конфигурации.
Заключение
Определение причины возникновения проблемы "Unable to receive initial socks response" в Danted может потребовать последовательной проверки всех вышеперечисленных аспектов. Подходите к делу методично, проверяя каждый элемент конфигурации, сетевые настройки и логи. Если вы выполните все эти шаги, у вас должна появиться возможность выявить и устранить возникшую ошибку. Если проблема продолжает оставаться, возможно, стоит рассмотреть возможность обращения в сообщество или подробнее изучить документацию Danted.