Se a caixa Unix estiver executando um servidor ssh, você pode configurar um par de chaves públicas privadas na caixa Windows e adicionar a chave pública a $HOME/.ssh/authorized_keys
na caixa Unix. Isso deve permitir que seu programa do Windows execute comandos ssh sem digitar uma senha.
Nesse ponto, você pode fazer algo parecido com isso no programa C:
system("ssh user@host 'perl /path/to/script.pl'");
Eu estou deixando de fora um grande número de detalhes ... você vai querer prestar atenção à segurança da conta do Windows que está chamando o arquivo perl; para executar o script sem digitar qualquer senha, você precisará manter a senha da chave ssh em branco, mas isso significa que você deseja bloquear a chave privada para que ninguém mais tenha acesso de leitura a ela, caso contrário Eve estará executando código perl arbitrário em sua caixa Unix, e isso nunca é uma coisa boa.
Para um cliente Windows SSH, eu recomendo o CopSSH; é uma das várias portas do Windows do OpenSSH; Ele lida com o gerenciamento de pares de chaves ssh de forma mais adequada que as outras portas que eu usei.