ssh相关

来源:互联网 发布:上班族 知乎 编辑:程序博客网 时间:2024/05/06 05:21

参考:

[1]http://www.thegeekstuff.com/2008/11/3-steps-to-perform-ssh-login-without-password-using-ssh-keygen-ssh-copy-id/

[2]http://bbs.chinaunix.net/thread-2113237-1-1.html

安全外壳协议(Secure Shell Protocol / SSH)是一种在不安全网络上提供安全远程登录及其它安全网络服务的协议。最初的SSH是由芬兰的一家公司开发,但因为版权和加密算法限制,所以目前大家基本使用openSSH,免费的。

假设机器A为Ubuntu系统,B为mac系统,A作为ssh服务器,B作为ssh客户端,需要登陆机器A。那你要做如下事情

1.A安装ssh server,ubuntu下为:sudo apt-get install openssh-server

2.A启动ssh server 服务。通过ps -e | grep ssh 查看是否有sshd,如果有sshd表示已经开启ssh服务。如果没有,则通过sudo /etc/init.d/ssh resart 通过。

3.通过B终端 ssh xxx@Aip 链接到A ,其中xxx为A的用户名,Aip表示机器A的ip地址。这种方式是通过password登陆服务器。除了这种方式还有public key 登陆远程服务器。

通过public key 登陆远程服务器,设置如下:

先来对password方式和public方式登陆服务器的不同做一个对比:比如你要进入一个秘密基地,以password方式登陆,就好比这个秘密基地采用口令的方式让外来人员进入,哨兵只关心外来人员提供的口令是否正确,如果正确就放行。public key方式就好比用钥匙和锁的方式进入基地,只要外来人员有这个基地大门门锁的钥匙,并且钥匙确实能开这把锁,那么哨兵就将这个人放行。哨兵只认钥匙,不人口令和人员。口令的缺点是,你的口令可能被敌人窃听去,敌人会冒充友军进入秘密基地,因为哨兵只凭口令来决定是否放行外来人员。而用钥匙的方式则敌人必须得到一把一模一样的钥匙在能登入。

采用ssh的public key方式登陆系统,需要先用相关的工具生成一个公钥/私钥对,公钥和私钥的就好比锁和钥匙的关系。公钥就是锁,锁是公开挂在大门上的,是一个对外可见的东西,任何有钥匙的人都可以去开锁,私钥就是钥匙,钥匙要自己妥善保管好,不能让别人偷去。否则别人拿到了钥匙并知道你锁的位置(IP地址)就可以轻易的进入基地了。

openssh的ssh-keygen命令用来产生这样的私钥和公钥。

在机器B终端中输入:ssh-keygen 然后一直回车即可,你会发现在~/.ssh/目录下生成 id_rsa.pub和id_rsa文件,其中id_rsa.pub为公钥,id_rsa为私钥,只要将id_rsa.pub拷贝到机器A的/root/.ssh/目录下,修改名称为:authorized_keys即可。这是在/etc/ssh/sshd_config配置文件中指定的,你也可以修改为对应的名称。

因为在链接【2】中有详细描述,所有我基本没有想法再去仔细写一次了。:-)



原创粉丝点击