SOCKS5-сервер з абмежаваным доступам на Dante
Наладзьце Dante 1.4.4 з канкрэтным слухачом, адным дазволеным кліентам і адным прызначэннем, адрозніваючы два этапы правіл.
Dante выконвае дзве праверкі доступу: правіла client дапускае ўваходную крыніцу, а правіла SOCKS дазваляе запытаныя прызначэнне і каманду. Гэты прыклад для Dante 1.4.4 дазваляе аднаму кліенту звяртацца да аднаго кантраляванага прызначэння на порце 443.
Уліковы запіс службы і адрасы
Стварыце асобны ўліковы запіс з нізкімі прывілеямі, калі ўсталёўка яго не дае:
sudo useradd --system --no-create-home --shell /usr/sbin/nologin danteproxy
Абедзве працоўныя ідэнтычнасці могуць выкарыстоўваць гэты запіс у прыведзенай ніжэй канфігурацыі з высокім портам і спісам дазволеных крыніц. Парольная аўтэнтыфікацыя або прывілеяваныя функцыі патрабуюць перагляду гэтых налад. Да выкарыстання замяніце ўсе дакументацыйныя адрасы.
logoutput: stderr
internal: 192.0.2.10 port = 1080
external: 192.0.2.10
clientmethod: none
socksmethod: none
user.privileged: danteproxy
user.unprivileged: danteproxy
client pass {
from: 198.51.100.27/32 to: 192.0.2.10/32 port = 1080
log: connect error
}
socks pass {
from: 198.51.100.27/32 to: 203.0.113.20/32 port = 443
command: connect
log: connect error
}
internal выбірае слухача для кліентаў, external — выходны адрас. Сервер з адным інтэрфейсам можа выкарыстоўваць адзін прызначаны адрас для абодвух. Пры патрэбе можна паказаць імя інтэрфейсу; праверце, у якія адрасы яно разгортваецца.
Што дазваляе гэтая палітыка
Першае правіла дапускае паказаную крыніцу да слухача. Другое дазваляе толькі CONNECT да паказанай мэты. Неадпаведныя запыты застаюцца заблакаванымі, уключаючы BIND і UDP ASSOCIATE.
Налады метадаў не даюць аўтэнтыфікацыі па імені карыстальніка. Доступ залежыць ад вузкага правіла крыніцы і яе сеткавай мяжы. Такая схема прыдатная толькі там, дзе гэтая крыніца ідэнтыфікуе аўтарызаванага кліента.
sockd -V -f /path/to/sockd.conf
У некаторых дыстрыбутывах выканальны файл называецца danted. Праверце канфігурацыю ўсталяванай камандай да запуску службы. Ужывіце адпаведныя абмежаванні крыніцы на міжсеткавым экране, а потым праверце дазволеную мэту і кантраляваную мэту, якая мусіць быць забароненай.