Страница 3 из 6
SOCKS proxy
Добавлено: 21 мар 2023, 12:39
Olej
Olej писал(а): ↑21 мар 2023, 11:48
Сегодняшний день проводим под знаком: сливаем всех прокси-халявщиков в сортир нахер
Итак ... поехали!
Я знаю, на пока,
3 способа ограничить использование прокси сервера для посторонних:
1. изменить стандартный порт 1080 ... на малоизвестный ...
2. установить авторизованный доступ к прокси пользователей ... по паролю или PAM;
3. разрешить доступ к прокси только для группы исходящих IP доступа ... или, в предельном случае - для одного IP себя любимого
Причём, они могут использоваться и не по "или", а по "и": и 1 и 2 и 3 ... одновременно.
Поскольку мне может понаобится каждый из них, то опробую
все по очереди.
Всё это, естественно, делается через конфиг-файл /etc/danted.conf
SOCKS proxy
Добавлено: 21 мар 2023, 13:30
Olej
Olej писал(а): ↑21 мар 2023, 12:39
Поскольку мне может понаобится каждый из них, то опробую все по очереди.
Всё это, естественно, делается через конфиг-файл /etc/danted.conf
Но прежде почистить журнал:
Код: Выделить всё
root@277938:/var/log# ls -l daemon.log*
-rw-r----- 1 root adm 1294299010 мар 21 13:09 daemon.log
Код: Выделить всё
olej@277938:~$ df /dev/vda1
Файловая система 1K-блоков Использовано Доступно Использовано% Cмонтировано в
/dev/vda1 15389720 7933284 6653680 55% /
Как его усечь, чтобы сохранить себе 20-30 последних строк не придумал ... поэтому:
Код: Выделить всё
root@277938:/var/log# ls -l daemon.log
-rw-r----- 1 root adm 0 мар 21 13:24 daemon.log
Код: Выделить всё
olej@277938:~$ df /dev/vda1
Файловая система 1K-блоков Использовано Доступно Использовано% Cмонтировано в
/dev/vda1 15389720 6774416 7812548 47% /
Ну так так - гораздо лучше
Особенно для удалённого VDS сервера с очень ограниченными ресурсами.
SOCKS proxy
Добавлено: 21 мар 2023, 13:41
Olej
Olej писал(а): ↑21 мар 2023, 12:39
3. разрешить доступ к прокси только для группы исходящих IP доступа ... или, в предельном случае - для одного IP себя любимого
Начну с вот этого...
Тут любопытно получается - прежде всего чтоб экспериментировать нужно знать
свой IP который
провайдер выкидывает в сеть.
Ну ...
https://2ip.ru/
Ваш IP адрес:
193.28.177.124
И так:
Код: Выделить всё
olej@R420:~$ curl ifconfig.co
curl: (7) Failed to connect to 90.156.230.27 port 1080 after 115 ms: В соединении отказано
О-ба-на
Это
все браузеры производные от Chromium так тупо устанавливают
для себя прокси через
системный прокси. См. в NetManager :
- Снимок экрана от 2023-03-21 11-15-46.png (36.66 КБ) 508 просмотров
Убрать!:
- Снимок экрана от 2023-03-21 11-16-05.png (21.96 КБ) 508 просмотров
Отключить и включить сетевые интерфейсы...
Хрен вам
:
Код: Выделить всё
olej@R420:~$ curl ifconfig.co
curl: (7) Failed to connect to 90.156.230.27 port 1080 after 115 ms: В соединении отказано
Он прописал в shell окружении:
Код: Выделить всё
olej@R420:~$ env | grep proxy
no_proxy=localhost,127.0.0.0/8,::1
all_proxy=socks://90.156.230.27:1080/
И только открыв
новый терминал (с новым environment):
Код: Выделить всё
olej@R420:~$ curl ifconfig.co
193.28.177.124
SOCKS proxy
Добавлено: 21 мар 2023, 14:06
Olej
Olej писал(а): ↑21 мар 2023, 12:39
в предельном случае - для одного IP себя любимого
Было:
Код: Выделить всё
root@277938:/etc# grep -A3 ^client /etc/danted.conf
client pass {
from: 0/0 to: 0/0
log: connect disconnect error ioop
}
Стало:
Код: Выделить всё
root@277938:/etc# grep -A3 ^client /etc/danted.conf
client pass {
from: 193.28.177.124/0 to: 193.28.177.124/0
log: connect disconnect error ioop
}
Запуск:
Код: Выделить всё
root@277938:~# systemctl status --no-pager --full danted
● danted.service - SOCKS (v4 and v5) proxy daemon (danted)
Loaded: loaded (/lib/systemd/system/danted.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-03-21 14:03:37 MSK; 1s ago
Docs: man:danted(8)
man:danted.conf(5)
Process: 1934 ExecStartPre=/bin/sh -c uid=`sed -n -e "s/[[:space:]]//g" -e "s/#.*//" -e "/^user\.privileged/{s/[^:]*://p;q;}" /etc/danted.conf`; if [ -n "$uid" ]; then touch /var/run/danted.pid; chown $uid /var/run/danted.pid; fi (code=exited, status=0/SUCCESS)
Main PID: 1938 (danted)
Tasks: 20 (limit: 1149)
Memory: 6.6M
CGroup: /system.slice/danted.service
├─1938 /usr/sbin/danted
├─1939 danted: monitor
├─1940 danted: negotia
├─1941 danted: request
├─1942 danted: request
├─1943 danted: request
├─1944 danted: request
├─1945 danted: request
├─1946 danted: request
├─1947 danted: request
├─1948 danted: request
├─1949 danted: request
├─1950 danted: request
├─1951 danted: request
├─1952 danted: request
├─1953 danted: request
├─1954 danted: request
├─1955 danted: request
├─1956 danted: request
└─1957 danted: io-chil
мар 21 14:03:37 277938.local systemd[1]: Starting SOCKS (v4 and v5) proxy daemon (danted)...
мар 21 14:03:37 277938.local systemd[1]: Started SOCKS (v4 and v5) proxy daemon (danted).
мар 21 14:03:38 277938.local danted[1938]: Mar 21 14:03:38 (1679396618.059830) danted[1938]: info: Dante/server[1/1] v1.4.2 running
SOCKS proxy
Добавлено: 21 мар 2023, 14:12
Olej
Olej писал(а): ↑21 мар 2023, 14:06
Запуск:
Проверка ... такого вот ...
персонального прокси :
Код: Выделить всё
olej@R420:~$ curl -x socks5://90.156.230.27:1080 ifconfig.co
90.156.230.27
Код: Выделить всё
olej@R420:~$ time curl check-host.net/ip
real 0m0,516s
user 0m0,006s
sys 0m0,011s
Код: Выделить всё
olej@R420:~$ time curl --socks5 90.156.230.27:1080 check-host.net/ip
real 0m0,657s
user 0m0,007s
sys 0m0,008s
SOCKS proxy
Добавлено: 21 мар 2023, 14:31
Olej
Olej писал(а): ↑19 мар 2023, 22:44
Сравнение времени доступа - без прокси и с прокси ...
Olej писал(а): ↑21 мар 2023, 13:41
olej@R420:~$ env | grep proxy
no_proxy=localhost,127.0.0.0/8,::1
all_proxy=socks://90.156.230.27:1080/
Так как (оказалось), при установке системных переменных (environment) для прокси, curl
использует прокси по умолчанию, и в этом случае оценивать/сравнивать время доступа можно
только так (режим "без прокси"):
Код: Выделить всё
olej@R420:~$ time curl --noproxy '*' check-host.net/ip
real 0m0,122s
user 0m0,009s
sys 0m0,005s
Через прокси (явно указано):
Код: Выделить всё
olej@R420:~$ time curl --socks5 90.156.230.27:1080 check-host.net/ip
real 0m0,627s
user 0m0,009s
sys 0m0,005s
В данном случае переменная окружения прокси не установлена:
Код: Выделить всё
olej@R420:~$ time curl check-host.net/ip
real 0m0,112s
user 0m0,000s
sys 0m0,012s
P.S. Режим "без прокси", как пишут, работает только в версиях curl после 7.19.4 :
Код: Выделить всё
olej@R420:~$ curl -V
curl 7.81.0 (x86_64-pc-linux-gnu) libcurl/7.81.0 OpenSSL/3.0.2 zlib/1.2.11 brotli/1.0.9 zstd/1.4.8 libidn2/2.3.2 libpsl/0.21.0 (+libidn2/2.3.2) libssh/0.9.6/openssl/zlib nghttp2/1.43.0 librtmp/2.3 OpenLDAP/2.5.14
Release-Date: 2022-01-05
Protocols: dict file ftp ftps gopher gophers http https imap imaps ldap ldaps mqtt pop3 pop3s rtmp rtsp scp sftp smb smbs smtp smtps telnet tftp
Features: alt-svc AsynchDNS brotli GSS-API HSTS HTTP2 HTTPS-proxy IDN IPv6 Kerberos Largefile libz NTLM NTLM_WB PSL SPNEGO SSL TLS-SRP UnixSockets zstd
SOCKS proxy
Добавлено: 21 мар 2023, 14:45
Olej
Olej писал(а): ↑21 мар 2023, 12:39
3. разрешить доступ к прокси только для группы исходящих IP доступа ... или, в предельном случае - для одного IP себя любимого
Этот способ настроен, проверен и состоялся:
Код: Выделить всё
olej@R420:~$ curl ifconfig.co
193.28.177.124
Код: Выделить всё
olej@R420:~$ curl --socks5 90.156.230.27:1080 ifconfig.co
90.156.230.27
Пусть теперь так день-другой поработает, а я понаблюдаю...
SOCKS proxy
Добавлено: 21 мар 2023, 14:47
Olej
Olej писал(а): ↑21 мар 2023, 14:45
а я понаблюдаю...
Нет!
Это так не работает:
Код: Выделить всё
root@277938:/etc# tail -n5 /var/log/daemon.log
Mar 21 14:45:47 277938 danted[1938]: Mar 21 14:45:47 (1679399147.334588) danted[2735]: info: pass(1): tcp/connect -: 95.142.206.145.443 90.156.230.27.40160 -> 90.156.230.27.1080 193.28.177.124.40160 (5792)
Mar 21 14:45:47 277938 danted[1938]: Mar 21 14:45:47 (1679399147.334818) danted[2735]: info: pass(1): tcp/connect -: 95.142.206.145.443 90.156.230.27.40160 -> 90.156.230.27.1080 193.28.177.124.40160 (5792)
Mar 21 14:45:47 277938 danted[1938]: Mar 21 14:45:47 (1679399147.337318) danted[2735]: info: pass(1): tcp/connect -: 95.142.206.145.443 90.156.230.27.40160 -> 90.156.230.27.1080 193.28.177.124.40160 (689)
Mar 21 14:45:47 277938 danted[1938]: Mar 21 14:45:47 (1679399147.360807) danted[2735]: info: pass(1): tcp/connect -: 193.28.177.124.53036 90.156.230.27.1080 -> 90.156.230.27.53036 92.53.116.191.443 (726)
Mar 21 14:45:47 277938 danted[1938]: Mar 21 14:45:47 (1679399147.631963) danted[2735]: info: pass(1): tcp/connect -: 92.53.116.191.443 90.156.230.27.53036 -> 90.156.230.27.1080 193.28.177.124.53036 (846)
Моментально посыпались халявщики:
Код: Выделить всё
root@277938:/etc# whois 95.142.206.145 | grep ^address
address: Prem.1-N, Bld. 12-14, Lit. A, Khersonskaya str.
address: 191024
address: Saint-Petersburg
address: RUSSIAN FEDERATION
address: 39/79, Leningradsky prospect
address: Moscow, Russia,125167
Код: Выделить всё
root@277938:/etc# whois 185.240.242.35 | grep ^address
address: Marco Witzgall Internetdienstleistungen
address: Lindenstr. 1
address: 91217 Hersbruck
address: Germany
За 1-1.5 часа:
Код: Выделить всё
root@277938:/var/log# grep ": tcp/connect -:" /var/log/daemon.log | wc -l
37229
Будем искать на них конфигурации!
SOCKS proxy
Добавлено: 21 мар 2023, 19:35
Olej
Olej писал(а): ↑21 мар 2023, 14:47
Будем искать на них конфигурации!
ОК ... ребяты-демократы
Olej писал(а): ↑21 мар 2023, 12:39
2. установить авторизованный доступ к прокси пользователей ... по паролю или PAM;
Довольно долго пришлось повозиться с конфигурацией...
- добавить пользователя (любого, только для прокси и без логина):
Код: Выделить всё
root@277938:/var/log# useradd --shell /usr/sbin/nologin proxy_user_01
- создать его пароль:
Код: Выделить всё
root@277938:/var/log# passwd proxy_user_01
Новый пароль :
Повторите ввод нового пароля :
passwd: пароль успешно обновлён
- добавить пользователя в группу proxy (она уже существует, может при инсталляции):
Код: Выделить всё
olej@277938:~$ sudo usermod -a -G proxy proxy_user_01
Код: Выделить всё
olej@277938:~$ cat /etc/group | grep proxy
proxy:x:13:proxy_user_01
proxy_user_01:x:1003:
- проверить
все значимые поля конфига (у меня только при таких настройках всё запустилось ... ну не считая client pass - это с прошлого раза осталось):
Код: Выделить всё
root@277938:/etc# grep ^socksmethod: /etc/danted.conf
socksmethod: username
Код: Выделить всё
root@277938:/etc# grep -A3 ^client /etc/danted.conf
client pass {
from: 193.28.177.124/24 to: 0/0
log: connect error ioop
}
Код: Выделить всё
root@277938:/etc# grep -A3 ^"socks " /etc/danted.conf
socks pass {
from: 0/0 to: 0/0
log: connect disconnect error ioop
group: proxy
Код: Выделить всё
root@277938:/etc# grep eth0 /etc/danted.conf
internal: eth0 port = 1080
external: eth0
Код: Выделить всё
root@277938:/etc# grep ^user\. /etc/danted.conf
user.privileged: root
user.unprivileged: nobody
user.libwrap: nobody
Только после этого ... с 5-6 перезапуска
... оно у меня стартонуло как надо!
SOCKS proxy
Добавлено: 21 мар 2023, 19:39
Olej
Olej писал(а): ↑21 мар 2023, 19:35
Только после этого ... с 5-6 перезапуска
... оно у меня стартонуло как надо!
Код: Выделить всё
root@277938:/etc# systemctl status --no-pager --full danted
● danted.service - SOCKS (v4 and v5) proxy daemon (danted)
Loaded: loaded (/lib/systemd/system/danted.service; enabled; vendor preset: enabled)
Active: active (running) since Tue 2023-03-21 19:12:12 MSK; 6s ago
Docs: man:danted(8)
man:danted.conf(5)
Process: 12726 ExecStartPre=/bin/sh -c uid=`sed -n -e "s/[[:space:]]//g" -e "s/#.*//" -e "/^user\.privileged/{s/[^:]*://p;q;}" /etc/danted.conf`;
Main PID: 12731 (danted)
Tasks: 20 (limit: 1149)
Memory: 16.5M
CGroup: /system.slice/danted.service
├─12731 /usr/sbin/danted
├─12732 danted: monitor
├─12733 danted: negotia
├─12734 danted: request
├─12735 danted: request
├─12736 danted: request
├─12737 danted: request
├─12738 danted: request
├─12739 danted: request
├─12740 danted: request
├─12741 danted: request
├─12742 danted: request
├─12743 danted: request
├─12744 danted: request
├─12745 danted: request
├─12746 danted: request
├─12747 danted: request
├─12748 danted: request
├─12749 danted: request
└─12750 danted: io-chil
мар 21 19:12:12 277938.local systemd[1]: Starting SOCKS (v4 and v5) proxy daemon (danted)...
мар 21 19:12:12 277938.local systemd[1]: Started SOCKS (v4 and v5) proxy daemon (danted).
мар 21 19:12:13 277938.local danted[12731]: Mar 21 19:12:13 (1679415133.168613) danted[12731]: info: Dante/server[1/1] v1.4.2 running
Код: Выделить всё
olej@R420:~$ curl -x socks5://proxy_user_01:xxxxxx@90.156.230.27:1080 ifconfig.co
90.156.230.27