SSHで"No supported authentication methods available"と表示される理由は様々ですが、よくあるオチはパーミッションの設定が間違っていることです。
例えばこちらで解説されているように、
http://blog.livedoor.jp/mochikoastech/archives/4721276.html
authorized_keysのパーミッションは、600のように「オーナーのみにwの権限がついてて、他の人が書き込めない状態」じゃないとログインできない。公開鍵を自分以外のユーザがへいほい追加できるような状態は不安全なので当然と言えば当然。
みたいな話。
ところが、一見したところパーミッションの設定が正しいのにまだ接続できない場合、SELinuxの設定に問題がある可能性があります。
つまり、
ls -Z /home/foo/.ssh/authorized_keys
を実行した時に、
-rw-r--r--. foo foo unconfined_u:object_r:ssh_home_t:s0 authorized_keys
という表示にならない場合、ラベルを上記の通り修正するか、SELinuxをOFFにする必要があります。