Raspbian is installed on two partitions: a fat32 boot partition for kernel and firmware and an ext4 partition for the root filesystem. To disable password authentication and only use public/private keys you always have to modify files on the ext4 filesystem at least one time. The ext4 filesystem is not readable by MS Windows or by iOS without additional helpers. If you want to modify files on the root filesystem before booting the RasPi you have to use a Unix like operating system. Because you want to preconfigure some RasPis you may consider to use just one of them for configuration if you do not have a device available with a Linux like operating system.
To disable password authentication you have to set
PasswordAuthentication no
in /etc/ssh/sshd_config
on the root filesystem and copy at least the ssh public key to /home/pi/.ssh/authorized_keys
.
You may consider to do it only one time and take an image of this installation. Then you can just flash it to other SD Cards. But this has the disadvantage that all clones have the same ssh server key and you will get error messages and warnings from the ssh client of dubious server connections. You have to generate new server keys with:
~$ sudo rm -v /etc/ssh/ssh_host_*
~$ sudo dpkg-reconfigure openssh-server
~$ sudo systemctl restart sshd.service
But this can be done with a script on first boot up of the cloned RasPi.
/lib/systemd/system/sshswitch.service
to copy (or append)/boot/ssh.txt
to/home/pi/.ssh/authorized_keys