Dante provádí dvě kontroly přístupu: klientské pravidlo vpustí příchozí zdroj a pravidlo SOCKS povolí požadovaný cíl a příkaz. Tento příklad pro Dante 1.4.4 dovoluje jednomu klientovi dosáhnout na jeden řízený cíl na portu 443.

Identita služby a adresy

Vytvořte vyhrazený účet s malými oprávněními, pokud jej instalace neposkytuje:

sudo useradd --system --no-create-home --shell /usr/sbin/nologin danteproxy

Obě identity mohou tento účet použít v následující konfiguraci s vysokým portem a seznamem povolených zdrojů. Ověřování heslem nebo privilegované funkce vyžadují opětovné posouzení těchto nastavení. Před použitím nahraďte všechny dokumentační adresy.

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 vybírá posluchače pro klienty; external vybírá odchozí adresu. Server s jediným rozhraním může pro obojí použít stejnou přidělenou adresu. Kde je to vhodné, lze použít i název rozhraní; ověřte, na které adresy se rozvine.

Co tato politika povoluje

První pravidlo vpouští zadaný zdroj k posluchači. Druhé povoluje jen CONNECT k určenému cíli. Neodpovídající požadavky zůstávají blokované, včetně BIND a UDP ASSOCIATE.

Nastavení metod neposkytují ověřování uživatelským jménem. Přístup závisí na úzkém zdrojovém pravidle a jeho síťové hranici. Toto uspořádání je vhodné jen tam, kde zdroj identifikuje oprávněného klienta.

sockd -V -f /path/to/sockd.conf

Některé distribuce nazývají spustitelný soubor danted. Před spuštěním služby zkontrolujte konfiguraci nainstalovaným příkazem. Nastavte odpovídající zdrojová omezení na firewallu a poté otestujte povolený cíl i řízený cíl, který má být odmítnut.

Související články