概述
一、安装OpenSSH Server
1.首先查看是否已经安装过了
$ dpkg --list|grep ssh
若结果中没有出现openssh-server,则说明没有安装。
2.安装openssh-server
$ sudo apt-get install openssh-server
二、配置OpenSSH
1.修改/etc/ssh/sshd_config
最好事先备份一下:
$ sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.original
将root帐户仅限制为控制台访问:
# vi /etc/ssh/sshd_config
将permitRootLogin "yes" 改为"no"
还有其它的更改,但我只改了这点而已。
2.启动和停止openssh server命令
启动:$ sudo /etc/init.d ssh start
停止:$ sudo /etc/init.d ssh stop
重启:$ sudo /etc/init.d ssh restart
3.生成公钥和私钥
$ ssh-keygen -t rsa
回车后会提示输入passphrase(密码短语),这是用来加密私钥的,可以不填直接回车,不过还是建议填一个更好。
之后会在~/.ssh文件夹中生成id_rsa(私钥)和id_rsa.pub(公钥)两个文件。
4.补充设置
将公钥添加到验证文件:
进入.ssh文件夹:
$ cd ~/.ssh
这是将id_rsa.pub里的公钥复制到authorized_keys文件中,authorized_keys文件不存在的话会自动新建的:
$ cat id_rsa.pub >> authorized_keys
将authorized_keys验证文件权限设置为只读:
$ chmod 400 authorized_keys
或者右键属性修改,自己随意。
三、建立连接
到这里,Ubuntu上的设置已经基本完成了,因为我自己的计算机是Windows 7,而Ubuntu是放在VM上的,所以就打算在win 7尝试通过SSH连接Ubuntu。以下是一些心得:
1.使用PuTTy
PuTTy是SSH的一个客户端,可以在其官网下载安装。
2.尝试连接
首先要知道Ubuntu上的ip:$ ifconfig
得到ip地址,比如192.168.236.123。这时可以打开PuTTy.exe填入ip,选择好连接类型SSH,再点open应该就会连接成功了。
此时会弹出两个窗口,其中一个是警告提示,选“是”或“否”都行,随意。然后会询问login as,填上Ubuntu的用户名即可,接着是password(密码),注意这是Ubuntu的登录密码,这时候是不需要passphrase的。
于是这样就连接成功了,可以“远程 -_#'' ”控制Ubuntu了。
另外,你会发现PuTTy里面的中文是乱码的,具体解决方法详见PuTTY中文教程。
3.使用金钥验证:
上面的方法虽然可以连接,但似乎传输内容是没有加密的(?这一点我还不知道是不是这样?),还可以设置成使用公/私钥验证。
要明确的是OpenSSH生成的密钥与PuTTy的密钥格式不一样,所以要将Ubuntu上的id_rsa转换为PuTTy的格式。
首先将id_rsa复制到Windows中,打开PuTTYgen.exe,点击load选取id_rsa文件,接下来会提示输入passphrase(如果此时出现的是PuTTy Error,有可能是PuTTygen版本太低,到官网下载最新的PuTTygen即可),选择Save private key,会生成一份ppk文件,文件名随意。
然后打开PuTTy.exe,输入Ubuntu的ip,选择SSH -> Auth -> Private key file for authentication,选取那份ppk文件,再回到Session保存该会话(以后再连接时就不用再重复以上操作了),点Open,之后你会发现PuTTY窗口要你使用passphrase而不是password来建立连接了。
还有一点需要注意的是,像我这种情况,Ubuntu上使用的虚拟ip不是固定的,有时候建立连接时会提示“Network error: Connection timed out”,就有可能是ip地址已经改变了,所以连接前还要确认一下ip:$ ifconfig。【完】
最后
以上就是想人陪书本为你收集整理的Ubuntu下安装和配置OpenSSH的全部内容,希望文章能够帮你解决Ubuntu下安装和配置OpenSSH所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复