Почему в файле auth.log множество попыток входа по SSH?
Потому что не надо открывать SSH на весь интернет - хоть по ключу, хоть на нестандартном порту. Это изначально порочная практика, не приводящая к катастрофическим последствиям ровно до обнаружения очередной серьёзной 0-day уязвимости openssh-server.
Expect отлично умеет трогать подобные глупые железки, про которые написано у вас в пп. 1-3. Вполне можно всё это засковородить в рамках какого-нибудь Ансибла и т. п.
Лучше - потому что ключ на порядки длиннее и соответственно сложнее для подбора. Хуже - потому что ключ могут спереть (например, с помощь вируса на рабочем компьютере или телефоне) и если он у вас не запаролен, вы легко можете долгое время не догадываться о компрометации. Поэтому для продукционных сред рекомендую сочетать запароленный ключ, двухфакторную авторизацию (например, с помощью PIN-кода из приложения) и ограничение по точкам входа.