tsocks
permite vários serviços SOCKS, você os configura para usar um serviço SOCKS diferente (por exemplo, ssh -D
diferente em uma porta diferente) para cada destino desejado. man tsocks.conf
para mais detalhes.
assumindo /etc/tsocks.conf
contendo:
path {
server = localhost
server_port = 1081
reaches = <ip-address-of-server-b>/32
}
path {
server = localhost
server_port = 1082
reaches = <ip-address-of-server-d>/32
}
Então você executaria
ssh -fND :1081 server-a & sleep 1 ; tsocks ssh server-b
ssh -fND :1082 server-c & sleep 1 ; tsocks ssh server-d