Попробую расписать требования более подробно:
1. Безопасность - передача информации не plain text`ом, а например используя SSL
2. Надежность - важно чтобы сообщения не могли потеряться, если связь между клиентом и сервером вдруг пропала (поэтому выбор пал на RabbitMQ, он вроде с такими случаями справляется)
3. Масштабируемость - ну например будет 10 клиентов, потом 100...если использовать RabbitMQ вопрос вроде решается достаточно легко.
Ну и я не совсем уверен что можно надежно передать файл используя RabbitMQ . Вопрос скорее всего в том, правильно ли выбраны технологии для этой задачи. Расплывчато, потому что это это второе приложение которое я пишу (первое на питоне).