Você não precisa escrever código.
Primeiro, gere seu par de chaves por
ssh-keygen
Em segundo lugar, use ssh-copy-id para distribuir sua chave pública
ssh-copy-id username@remote-machine
Observe que você precisa fornecer sua senha ao executar este comando. Depois disso, você pode acessar a máquina remota sem senha.
Aqui estão algumas explicações para os comandos da página de manual:
ssh-keygen
ssh-keygen generates, manages and converts authentication keys for
ssh(1). ssh-keygen can create RSA keys for use by SSH protocol version 1
and DSA, ECDSA or RSA keys for use by SSH protocol version 2. The type
of key to be generated is specified with the -t option. If invoked with-
out any arguments, ssh-keygen will generate an RSA key for use in SSH
protocol 2 connections.
ssh-copy-id
ssh-copy-id is a script that uses ssh to log into a remote machine
and append the indicated identity file to that machine's
~/.ssh/authorized_keys file.