The solution to this problem is to use the -i flag when connecting to the server: ssh user@host -i ~/.ssh/id_dsa You can also make this permanent for all servers by adding this line to your ~/.ssh/config: IdentityFile ~/.ssh/id_dsa The above solution is courtesy of Allan Odgaard, author of the excellent http://macromates.com/ TextMate editor. He also has a theory about the cause of the problem:
ssh has some default search path for private keys, this string includes escape codes for user name, user folder and such. so by default it will expand that string to find your key, and on leopard, one of these variables expands to NULL and hence you get that error. so giving -i «private key» bypasses this search path string.
-- View this message in context: http://www.nabble.com/ssh%3A-percent_expand%3A-NULL-replacement-tf4701144.ht... Sent from the MacPorts - Users mailing list archive at Nabble.com.