O Quick googling sugere que o ssh-keyscan não honra ssh config file e todos os outros truques ssh. (Embora esse segmento seja bem antigo).
Com o Ansible, você pode delegar a tarefa keyscan ao seu bastião e, em seguida, anexá-lo localmente ao arquivo known_hosts:
- hosts: localhost
gather_facts: no
tasks:
- command: "ssh-keyscan {{ new_host }}"
register: new_host_fingerprint
delegate_to: bastion
- lineinfile:
dest: /root/ssh/known_hosts
line: "{{ item }}"
with_items: new_host_fingerprint.stdout_lines
onde new_host
é o endereço IP do host criado (192.168.0.123 no seu exemplo).