大数据学习环境搭建系列(十一)安装SSH服务
作者 | CDA数据分析师
ssh简介
SSH(Secure Shell)是建立在应用层和传输层基础上的安全协议。SSH是目前较可靠,专为远程登陆会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。
SSH可以将所有的传输数据加密,这样中间人这种攻击方式就不可能实现了,而且也可以防止DNS和IP欺骗。还有一个额外的好处就是传输的数据经过压缩的,可以加快传输的速度。
无论是在分布式集群运行过程中,还是虚拟机、服务器和本地主机之间的文件互传,都需要SSH协议支持,因此了解SSH基本原理及安装相关软件,都是必须的。
工作原理
SSH通讯过程须由服务端和客户端的软件来完成,客户端包含SSH程序及远程拷贝scp、远程登陆slogin、安全文件传输sftp等应用程序;而服务器端是一个守护进程,其在后台运行并响应来自客户端的连接请求。
SSH的工作机制大体是:本地客户端发送一个连接请求到远程的服务端,服务端检查申请的包和IP地址再发送密钥给SSH客户端,SSH客户端再将密钥发回给服务端,到此为止连接建立。
启动SSH服务器后,sshd进程运行并在默认的22端口进行监听。安全验证方式:
基于口令的安全验证(账号密码),也有可能受到中间人攻击。
基于密钥的安全验证,就是提供一对密钥,把公钥放在需要访问的服务器上,如果连接到SSH服务器上,客户端就会向服务器发出请求,请求用密钥进行安全验证,服务器收到请求之后,先在该服务器的主目录下寻找公钥,然后把它和发送过来的公钥进行比较。如果两个密钥一致,服务器就用公钥加密质询并把它发送给客户端。客户端收到质询之后就可以用私钥解密再把它发给服务器端。基于这种方式,相对比较安全。
Linux系统下安装OpenSSH
由于受加密算法及版权等限制,目前一般选用OpenSSH替代SSH,OpenSSH是SSH的开源实现。它采用安全、加密的网络连接工具代替了telnet、ftp等古老明文传输工具。在企业中为了安全常使用的是离线安装方式,我们这里为了简化操作,使用在线安装方法。在Linux系统上OpenSSH的客户端一般都默认是安装好的,我们只要安装服务端程序openssh-server就可以了。这里以Ubuntu系统为例演示安装过程。
首先打开之前创建的虚拟机,以hduser用户登入系统。然后打开终端(Ctrl+Alt+t)。
在命令行中输入sudo apt-get install openssh-server,然后回车执行输入密码。
在下面窗口中输入:Y确认继续执行
稍等待片刻待各组件即可下载安装完成。通过ps -e|grep ssh命令查看ssh服务是否启动
大家可以看到sshd说明ssh服务端已经启动,如果ssh服务端没有启动可以执行sudo service ssh start 来启动ssh服务。
安装完成openssh-server后可以尝试登录localhost(具体含义会在稍后文章中做介绍,这里可以理解为另一台电脑)。在下面提示后输入yes确认继续连接。
输入密码1 回车继续执行。
这里可以看到我们登录成功,我们可以通过ssh远程操作另一台电脑。
操作完成后大家一定要记得退出此ssh连接,退出方式输入exit 然后回车即可。
每次登录都要输入密码对于集群来说严重影响执行效率,因此我们可以采取一些方式免除输入密码过程,这也是下篇文章的内容,今天就到这里了小伙伴们。
我告诉你msdn版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!