It depends on the situation, if you will have only specific computers connecting to the server, than public/private keys works great. But if you have a lot of traveling sales people who sometimes connect to the server from their home computer, sometimes from laptop on the road and sometimes from hotel computer, passwords is the only way you can accomplish this.
So there is no one solution, it depends on the situation.