前言:
什么是SSH?Secure Shell(缩写为SSH),由IETF的网络工作小组(Network Working Group)所制定;SSH为一项创建在应用层和传输层基础上的安全协议,为计算机上的Shell(壳层)提供安全的传输和使用环境。传统的网络服务程序,如rsh、FTP、POP和Telnet其本质上都是不安全的;因为它们在网络上用明文传送数据、用户帐号和用户口令,很容易受到中间人(man-in-the-middle)攻击方式的攻击。就是存在另一个人或者一台机器冒充真正的服务器接收用户传给服务器的数据,然后再冒充用户把数据传给真正的服务器。而SSH是目前较可靠,专为远程登录会话和其他网络服务提供安全性的协议。利用SSH协议可以有效防止远程管理过程中的信息泄露问题。通过SSH可以对所有传输的数据进行加密,也能够防止DNS欺骗和IP欺骗。SSH之另一项优点为其传输的数据可以是经过压缩的,所以可以加快传输的速度。SSH有很多功能,它既可以代替Telnet,又可以为FTP、POP、甚至为PPP提供一个安全的“通道”。
废话少说,进入正题
一、安装
1、下面以CentOS平台为例,说明怎么安装ssh服务器。下面为了方便,都是以root用户权限去操作,实际情况下,请使用一般用户权限去使用,只需要加入sudo就行。
首先运行
yum install openssh-server
如果已经安装过了,会出现如下图
如果没有安装过,会进行安装
检验SSH是否安装好了,可以用下面的命令:
说明安装成功
如果想要查看相关ssh的安装情况,使用如下命令
从上面我们可以看到openssh-server,这就是我们需要安装的程序名称
如果想查看ssh的进程可以用以下命令
如果没有启动,可以使用
/etc/init.d/sshd start
如果不成功可以使用
service sshd start
2、下面以Ubuntu平台为例安装ssh服务
首先运行
apt-get install openssh-server
一路yes下来
其他的大同小异,就不在累述
二、免密码登录
1、在centos中配置
修改配置文件
vim /etc/ssh/sshd_config
把以下的注释去掉
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
注意:这是配置免密码登录的命令
ssh-keygen -t rsa -P ''
一路确定下来
把生成的秘钥追加到 authorized_keys 中
cat ~/.ssh/dsa.pub >> ~/.ssh/authorized_keys
设置访问的
chmod 755 ~/.ssh
chmod 600 ~/.ssh/authorized_keys
现在来试试免密码登录
OK!!!
2、在Ubuntu中配置
和以上的基本一样。
如果想让其他客户端登录本机,把秘钥发送到其他客户端
ssh-copy-id -i .ssh/id_dsa.pub hadoop@xxx.xxx.xxx.xxx ~/
xxx:代表IP
进入另一台linux来访问刚配置好的linux
ssh root@master
master是linux机器的名字,可以在/etc/hosts中配置