Home directory on the server should not be writable by others: chmod go-w /home/$USER
SSH folder on the server needs 700 permissions: chmod 700 /home/$USER/.ssh
Authorized_keys file needs 644 permissions: chmod 644 /home/$USER/.ssh/authorized_keys
Make sure that user owns the files/folders and not root: chown user:user authorized_keys and chown user:user /home/$USER/.ssh
Put the generated public key (from ssh-keygen) in the user's authorized_keys file on the server