Ubuntu 下配置 SSH服务全过程及问题解决
Ok,现在开始。。。。。
(请看完全文后再进行操作,我是边写文章边配置的,中间出现了很多问题,看完的话可以让你少走几段弯路。。。)
Ubuntu的apt-get工具之强大无人能及啊,这里不开强大的网络,离开了网络,仿佛就变得鸡肋了。所以,打开终端命令行:
$ sudo apt-get install openssh-server
我勒个去,怎么回事?我的这命令怎么这样?估计你的也是吧,见下图
怎么回事? 你猜……我猜是apt-get 的源列表里边找不到我想要的openssh吧,是这样。Apt-get应用就是通过一个记录有所有可用软件包的配置文件在服务器上查找你想要的可用软件包,然后下载并安装的。难怪,现在都11.04了吧,我的跑的是9.04的Ubuntu。谁的服务器还给你维护着两年前的源,就算有,经历了两年的沧海桑田,对应的更新地址应该也变了。解救而上述问题的方法就是更新你的sources.list,位于/etc/apt/sources.list 。 自己上搜索引擎search一下如何更新源列表,其实也就是复制粘贴,新手别忘了sudo 。另外,随着版本更新,老版本的源列表在执行:
$ sudo apt-get update
时,会出现大量not found 。证明该版本的源列表已经过期,尽量找新版本的。
jun更新成功后是:
然后重新执行上边命令试试:
$ sudo apt-get install openssh-server
会自动检索关联包,然后提示下载确认,输入:y ,回车,等他自行下载安装。
不出意外的话,更新完后就已经安装好了,其实我的除了一些小意外。不过是在自动配置ssh_config的时候,理论上不影响服务的运行的。(因为这时我是在边安装边写文章,一切都是实时的,下一步能不能安装成功,谁知道呢?),哈哈,我们继续。看看我的报错界面:
咱们来启动服务试试:
$ sudo /etc/init.d/ssh start
或者 :$ sudo /etc/init.d/ssh resart
不想在这敷衍,我的启动不开了,咱重启一下虚拟机,再试。我猜测是刚才更新东西还有配置是内核还有什么锁没有释放,Linux内核管理还有更新时持有的锁还有更改时的什么东西,都会影响到一些服务的启动,总之试试再说。重启:
$ sudo halt now (关闭后开启,或者restart,我总感觉halt后启动会快一些)
$ sudo reboot (额,还是reboot更快)
果然,重启也启动不了。你是不是也遇到同样问题?或许你的已经跑开了,一边乐着去吧,我得把它整理完了。还是启动不了,怎么办?搜集了老久,网上说,把openssh client卸载掉重新安装(ps:Ubuntu默认是已经包含了client的,咱就试试百。)
$ sudo apt-get remove openssh-client
等待片刻,索性把刚才装的opensshserver 也卸了。一切从零开始。
$ sudo apt-get remove openssh-server
然后先安装client:
$ sudo apt-get install openssh-client
还是不行,无果,好人没做成,自己掉进去了。上次装,一下子就OK了……问题是最提升人的,我继续。
原因找到:应该是版本问题,用的是9.04的系统,10.04的更新列表。造成版本的兼容问题。在原来基础上,系统自己检测,经过upgrade manager自动更新了部分库以后,服务自己启动了。看看sshd的进程:
也有可能是更新系统包的时候自动按照原来文件的安装记录,系统自己安装了服务,鬼知道啊。
让我们登陆一下,试试。这里用的是SecureCRT在windows7下访问Ubuntu的,win7下没有超级终端。SecureCRT也非常好用,也可用作串口工具,看看运行效果:
可以相互ping通,服务也正常,但是依然无法连接,继续……我觉得再reboot一下。
额,又二了,什么也没改,在SecureCRT新建一个连接就OK了。看图:
OK,到这里了……谢谢阅读。欢迎转载。Jun奉上。