Ограничени SOCKS5 сервер са Dante-ом
Подесите Dante 1.4.4 са одређеним слушаоцем, једним дозвољеним клијентом и једним циљем и разликујте две фазе правила.
Dante спроводи две провере приступа: клијентско правило прихвата долазни извор, а 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. Проверите конфигурацију инсталираном наредбом пре покретања услуге. На заштитни зид примените одговарајућа ограничења извора, затим тестирајте дозвољени циљ и контролисани циљ који треба да буде одбијен.