O iSCSI Enterprise Target (iet) é o que você quer.
No final do servidor, você diz ao Iet para pegar um arquivo ou dispositivo de bloco e expô-lo como um alvo iSCSI.
No final do cliente, você executa um iniciador iSCSI. Você poderá montar o alvo como um dispositivo de bloco, por exemplo, /dev/iscsi_target_1
Você pode usar esse /dev/iscsi_target_1
e criptografá-lo usando cryptsetup
ou truecrypt
do seu lado. Somente os dados criptografados vão e voltam pela sessão iSCSI, semelhante a como apenas dados criptografados passariam por um SATA ou outro link de armazenamento na mesma situação com um dispositivo conectado localmente.
Algo um pouco mais simples que pode funcionar para você também: basta criar um arquivo grande no servidor e compartilhá-lo usando NFS ou samba e usar truecrypt
para criptografá-lo no cliente final - a criptografia / descriptografia ocorre no sistema truecrypt
está sendo executado e nenhum dado não criptografado seria transferido. Eu acredito que você também poderia montar esse arquivo grande como um dispositivo de loopback e usar cryptsetup
para fazer um volume LUKS.