Un servidor SOCKS5 restrinxido con Dante
Configura Dante 1.4.4 cun punto de escoita concreto, un cliente permitido e un destino permitido, distinguindo as dúas etapas de regras.
Dante aplica dous controis de acceso: unha regra de cliente admite a orixe entrante e unha regra SOCKS permite o destino e o comando solicitados. Este exemplo de Dante 1.4.4 deixa que un cliente acceda a un destino controlado no porto 443.
Identidade do servizo e enderezos
Crea unha conta dedicada con poucos privilexios se a instalación non proporciona unha:
sudo useradd --system --no-create-home --shell /usr/sbin/nologin danteproxy
Ambas as identidades poden usar esta conta na configuración seguinte, con porto alto e lista de orixes permitidas. A autenticación por contrasinal ou as funcións privilexiadas esixen revisar eses axustes. Substitúe todos os enderezos de documentación antes de usala.
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 selecciona o punto de escoita orientado ao cliente; external escolle o enderezo de saída. Un servidor cunha soa interface pode usar o mesmo enderezo asignado para ambos. Tamén se pode usar un nome de interface onde encaixe; comproba a que enderezos se expande.
Que permite esta política
A primeira regra admite a orixe indicada no punto de escoita. A segunda só permite CONNECT ao obxectivo indicado. As peticións sen coincidencia seguen bloqueadas, incluídas BIND e UDP ASSOCIATE.
Os axustes de método non ofrecen autenticación por nome de usuario. O acceso depende da regra de orixe estreita e da súa fronteira de rede. Esta disposición só é apropiada onde esa orixe identifica un cliente autorizado.
sockd -V -f /path/to/sockd.conf
Algunhas distribucións chaman danted ao executable. Comproba a configuración co comando instalado antes de iniciar o servizo. Aplica no cortalumes restricións de orixe equivalentes e despois proba o obxectivo permitido e un obxectivo controlado que debería ser rexeitado.