主な理由として次の2点があります。
一点目は、rootというユーザー名は狙われやすいという点。Linuxサーバーだったら普通rootが管理者権限を持ったユーザーとして用意されているので、攻撃者はとりあえずrootでログインできないかどうか試してきます。設定をちゃんとしていれば大丈夫なのですが、rootでログインできないようにしておく方がより安全です。
もう一点は、ログインされた時の被害の大きさ。rootでログインされてしまうと好き放題やられてしまいますけど、一般ユーザーでログインされた場合にはある程度被害を押さえられる可能性があります。
rootログインを禁止する前に、root以外のユーザーでログインができてそのユーザーがroot権限でコマンドを実行できることを確認してください。root以外にroot権限を持つユーザーがいないとシステムの変更ができなくなってしまいます。
SSHでのrootログイン可否は/etc/ssh/sshd_configで設定します。
$ sudo vi /etc/ssh/sshd_config
#PermitRootLogin yesとなっているところのコメントを外して値をnoにします。
#PermitRootLogin yes ↓ PermitRootLogin no
設定を変更したらsshdを再起動します。
$ sudo service sshd restart
Stopping sshd: [ OK ]
Starting sshd: [ OK ]
これでrootでログインできないようになりました。