The remote machine has already registered the rsa key, and the password-free login cannot be successful. I checked that the permissions of the .ssh and authorized_keys files of the remote machine are 700 and 600 respectively, and there is no problem. Check the log to find the following errors:
SELinux is preventing /usr/sbin/sshd from read access on the file authorized_keys.
After a bit of google, the following command can solve the problem:
/sbin/restorecon -v ~/.ssh/authorized_keys