1、首先确保客户端和服务端都已安装SSH 2.X及以上的版本;
2、在客户端用以下命令创建密钥对(遇到输入提示时,一路敲回车即可)
$ssh-keygen -d
此时系统自动创建.ssh目录并生成相应密钥对文件(注意目录和生成文件的权限必须跟如下一致)
drwx------ .ssh
-rw------- id_dsa
-rw-r--r-- id_dsa.pub
3、在服务端
创建.ssh目录(如果该目录已存在则不用创建,权限必须同下)
drwx------ .ssh
创建authorized_keys文件(如果该文件已存在则不用创建,权限必须同下)
-rw-r--r-- authorized_keys
拷贝步骤2中生成的id_dsa.pub文本内容,然后追加到authorized_keys文件尾(这个文件支持多条记录,即对应多个客户端连上来,输入一条以后输入下一条键入Enter,然后继续加到后面即可)。
例如:
ssh-dss AAAAB3NzaC1kc3MAAACBAPkCthaBklskBK0O90q5/WciOCHMqTRYNNNC/fMke+RXLVugHBw8w9iF+O9hdZhTR5WSA8ghZKBvxfsF3P3wCZgQZqtscLMVE7PDnc5W3zpA64oBY/B+fcpDSjc8mM3DWWjA2Hr+VYXFTOJTrgI7Hlx8DrOGvpAmyJ9SSxSiI25BAAAAFQDijIRfPayUnBxI196icAekfZkgBwAAAIBaXUcC7PIJxnG/IJgLjtu7UZ5/tkDK9bicLWrFBxASiO90koZBi/CuxJiivSd6/SWfHGvmLl4+aKqxMC/hyB28loC4do4fMDF+19Q8jb88cABk+3WmaZO255kLV0kSHg0Ah8E8bLJVG9/zyJrcF2k/mGRmyUv3MDLJTv0JLPVtcgAAAIEAlUSHqfBtQGufuo2VGNu9ezC75irzzSCu8YfRTdkZhJ/MJb58YrtnOpMA1EWKrVERBuupYCvQGNeQ8n4LXUM+JbcS9lab4R/noCuUxwgbR25GH7guxeLdw6/+mLEXvNO9dUAfsmqrQspOXhYPJcv14lE9UatsPGS24GFghL5OODk= root@IBMSrv82
ssh-dss AAAAB3NzaC1kc3MAAACBAOx4WsTxLRW99Kxa1a8c2fC8CgjZLD/3AMQmp7dZiVHCctWJXr/xPuSnnl1C3fHfGQuyS3ue5LcNw7cK14gPnnhIl4nFK+VKmzv5p7EcYjjz6hZvXO5QY2dV/hiArlQ6clYtDCPZN/q1RqrkYaS43Uw6Mfng2uzVoDa5eb6yaC0jAAAAFQDDQkzFa8rVSSZroWNQF5620F9DBwAAAIEA0AOLHxZ1pARtZLLstPDPURgpl17Q56sFmoq5go9BvA6h/sDBu1FiMXBvezbbpLTNYWAtbumxyEVpe4l1lUxq96Mq6671cSDk84aPpRr2zd6MITNRIM/Q35JFGpmI8yvyFHWCAQdpKungzD80neR5PR165pdpyezQnkmyUO/H224AAACAYN2Uqn6EWzNnID6bGdUH3eCCYnY5thndK+0fsc90ad1/QX9eWBy6L9drNyKLjOeh90+dMAIgB2Rk3XdpE0bR13np7mkblNqnnBXj1JInXJF8rfyfbxGj0ydnBxlRRZR+611HbWD6L4Xu/h9dKix9GKTEKxk2X+P1IwtTpGdIvQM= appv10g@server2_a
ssh-dss AAAAB3NzaC1kc3MAAACBANzMomUcsjBf1mlGLxB5kwzXE93TV8uOw674fpEVLPvgsniDo7FuWk9E+krL01LOPZYQbYFDTCoDS94boEjhcmf2MaMji9L3O/sIQE29iVm6ozL3oDEtXAMzEvJQlCPoaq56tGpq3ED7bpVwjMqPMHdJtcLimOKYZuT4Kjw8QZOzAAAAFQCISNHbiC3SnTYj2xslnNTugnneDQAAAIByaBYlxuA31UwO0IXyCVb0HSY7+P3wx3GinsodJnhyw3MiHb7QrzQlpXrTD07cYm1jsf2w3zvdXXodneLKldQ7NhmaVPvRWCxNBBl4yVSj/HAOoYdZNWiKzybVLs3o4gNELso1lQ0CTep50ICJe5V0M3jSzRKGjIMpa0pC3TvXNwAAAIEAzQoQDMGq4HvWhLo9JP2SuHxn+0aJRGRGMSkCC2APUupaMXq/UsK6/oan5msoSJfK/MryCwUmXhXopzJKzAdWIBO5teeegSeYl5jMllXjhhW2V1hwLTPg8lztDUUrTddouzb55FOBdm4a4vifo4hJBL8z0sN84WRyX6Ze5tDveVs= root@server2_a
ssh-dss
4、通过如下指令验证环境是否配置成功(如果能直接ssh登录不用输密码,则说明配置成功)
$ssh remote_use@remote_ip
5、其它
sftp是通过ssh协议来进行连接的,所以按照以上步骤配置好了环境就可以免密码ssh或者sftp登录到远程服务器。
sftp指定端口例子:sftp -oPort=11022 myserver@124.42.83.34
必须确保用户主目录权限为:drwx------
譬如如下用户主目录中,test目录的权限是有问题的,不能正常使用ssh。