Почему Ubuntu произвольно завершает работу скрипта на python?
Вероятнее всего вы просто выходите из ssh сессии и бот выключается,нужно что бы бот работал в фоне.Используйте например screen.
Открываете новый screen,запускаете бота,нажимаете ctrl a d(выходя тем самым из screen).
Готово бот работает в фоне.

Установка:
apt install screen

Подробнее о screen
вписать бота в скрипт менеджера сервисов systemd или upstart
он тебе и перезапускать процес при краше будет и логи попутно собирать, что б понять че с процессом случилось.