Neat project. What we've been doing is using provider (software) firewalls for whitelisting IPs at the bastion level.
In AWS we have a security group just for the Bastion inbound, and adding/removing IPs to that on-demand to allow access. I kind of assumed this was standard practice by now?