Ваш подход правильный, только смысл подключать телефоны в офисе на отдельный физический порт в Asterisk? Вы не используете VLAN'ы дабы разделить голосовой трафик и данные?
Если у вас неуправляемые свитчи, где нет возможности нарезать VLAN'ы, тогда этот подход имеет смысл.
По поводу сложных логинов/паролей - все правильно.
Не понял только начало схемы, вы городские номера где принимаете? Если на аналоговой АТС - тогда проблем нету, выход в/на город у вас все равно будет проходить через аналоговую АТС. В этом случае у Вас Asterisk выступает просто в роли расширения функционала АТС до уровня "цифра в локалке" и вы не принимаете из города SIP-звонки напрямую.
Крутим "гайки" дальше. На тунеле микротика можно разрешить только SIP-трафик (разрешайте TCP/UDP 5060). Если не будете использовать SSL, то можно только UDP/5060 - это стандартный порт для SIP.
Не забываем про файервол в самом CentOS (вроде бы в вебке Elastix вожно настраивать доверенные узлы).
Так что подводя короткий итог, если вы не принимаете напрямую SIP из интернета и пользователи у Вас в периметре безопасности локалки, то Ваша схема имеет место "быть".