RHCE 学习笔记(10) 远程访问

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://beanxyz.blog.51cto.com/5570417/1598056

这一节学习了如何在Linux和windows下对RHEL进行远程访问。主要包括了SSH的密码,**访问,XShell以及VNC的使用


首先来看看Linux下如何远程访问另外一台服务器。


现在我有两条服务器 rhce7-00 和 rhce7-01,IP地址如下所示


rhce7-01

RHCE 学习笔记(10) 远程访问


rhce7-00

RHCE 学习笔记(10) 远程访问


从00上远程访问01,很简单,直接输入 ssh IP地址即可 ,这是以当前用户(root)的身份进行访问。第一次连接的时候会确认指纹信息等等。


RHCE 学习笔记(10) 远程访问


可以查看一下帮助信息 看看ssh命令能做哪些事情

RHCE 学习笔记(10) 远程访问


如果想以指定用户身份登录,可以通过-l 选项或者电子邮件的格式指定


例如

RHCE 学习笔记(10) 远程访问


RHCE 学习笔记(10) 远程访问


在当前用户的家目录下有个隐藏目录 .ssh, ssh搭建的远程连接会自动把远程主机的信息保存在known_hosts文件里面,这样下次再连接的时候就不会询问指纹相关的问题了


RHCE 学习笔记(10) 远程访问


如果想远程的打开图像工具怎么办?如下所示,直接运行firefox会报错


RHCE 学习笔记(10) 远程访问


解决方式很简单,添加一个-X,就表明要打开X窗口了,再次运行firefox成功

RHCE 学习笔记(10) 远程访问


firefox还会显示这是一个运行在rhce7-01上的进程

RHCE 学习笔记(10) 远程访问



SSH访问远程服务器的时候,每次都会要求输入密码,如何避免这个麻烦呢?可以通过**的方式实现。基本原理是在当前主机上生成一对**,然后将公钥传送给远程主机,当进行远程访问的时候,对方会对一个随机值进行公钥加密,发送给本机,本机用私钥解密之后再发送回去,对方会对这个值进行匹配验证,如果相同,那么表示通过。豆子之前玩过一段时间aws,aws上的Linux虚拟机都是用这种**的方式进行远程访问的。


基本操作,首先生成一对**, 里面的passphrase是指的对私钥进行同步加密,这样的话,当用户在本机进行验证的时候,用户还必须输入passphrase进行同步解密。这里为了简便,我就不输入密码了


RHCE 学习笔记(10) 远程访问


看看生成的这一对**


RHCE 学习笔记(10) 远程访问


看看具体的内容


首先是私钥,这个保留在本机用来解密


然后是公钥,这个会发送给对方以便加密

RHCE 学习笔记(10) 远程访问


通过ssh-copy-id将公钥传送给对方

RHCE 学习笔记(10) 远程访问


传送完毕之后,直接访问则无需再输入密码

RHCE 学习笔记(10) 远程访问


感兴趣的话还可以看看ssh-copy-id有哪些其他选项

RHCE 学习笔记(10) 远程访问


切换到远程主机,看看对方的.ssh目录下生成了一个authorized_key 的文件,打开看看,内容和本机的公钥是一样的。


RHCE 学习笔记(10) 远程访问


关于公钥,私钥,数据信封,证书等知识我不赘述了,豆子几年前拜读过某人的博客,解释的非常好,这里再转一下

http://www.cnblogs.com/1-2-3/archive/2007/09/17/colloquialism-digital-certificate-part1.html




接下来看看windows下面如何进行访问。豆子平常习惯使用putty或者secureCRT,这里老师推荐的是Xshell。安装完XManager之后,打开Xshell,设定好IP,输入用户名和密码就可以远程访问了。


RHCE 学习笔记(10) 远程访问


如果在XShell使用**,基本过程和Linux类似,依然是生成**对,传送公钥到远程主机


点击Tools- New user key Wizard

RHCE 学习笔记(10) 远程访问


选择算法和**长度

RHCE 学习笔记(10) 远程访问


生成公钥

RHCE 学习笔记(10) 远程访问


这个passphrase为了省事其实可以不写

RHCE 学习笔记(10) 远程访问


保存公钥,完成

RHCE 学习笔记(10) 远程访问

RHCE 学习笔记(10) 远程访问


拷贝公钥到远程主机

RHCE 学习笔记(10) 远程访问


把这个公钥复制到对应的位置,并修改名字

RHCE 学习笔记(10) 远程访问


在XShell里面新建个连接就可以绑定了

RHCE 学习笔记(10) 远程访问

RHCE 学习笔记(10) 远程访问

RHCE 学习笔记(10) 远程访问


最后我们来看看相关的ssh配置文件。在/etc/ssh目录下,sshd_config可以配置服务器角色的设定;ssh_config可以配置客户端角色的设定; ssh_host* 则是各种指纹文件


RHCE 学习笔记(10) 远程访问


比如sshd可以配置是否允许**认证,或者密码认证


RHCE 学习笔记(10) 远程访问


ssh里面可以配置端口,是否进行严格的**确认等等

RHCE 学习笔记(10) 远程访问



如果想远程访问图形界面,还可以使用vnc,简单的说就是在服务器端安装vnc server,然后客户端安装vnc viewer进行访问;这个是个跨平台的工具,豆子在Windows,OSX和Linux下都经常使用vnc,甚至手机越狱了都是可以用vncviewer远程控制的。


红帽有官方文档具体介绍如何使用VNC工具

https://access.redhat.com/documentation/en-US/Red_Hat_Enterprise_Linux/7/html/System_Administrators_Guide/ch-TigerVNC.html


下面简单的截图演示一下


首先安装tigervnc-server

RHCE 学习笔记(10) 远程访问


拷贝服务文件, 他的默认端口是5900,也可以给不同的用户自定义端口,比如5就表示5905端口

RHCE 学习笔记(10) 远程访问


修改一下文件,其实就是把用户名绑定这个服务

RHCE 学习笔记(10) 远程访问


把<user>替换成用户名

RHCE 学习笔记(10) 远程访问


添加防火墙

RHCE 学习笔记(10) 远程访问


开机自动运行,启动服务;有的时候enable之后还需要重启系统才能启动服务。

RHCE 学习笔记(10) 远程访问


测试,这里我可以用IP:5905或者IP:5都是可以的

RHCE 学习笔记(10) 远程访问


可以看见这个进程是绑定到我的beanxyz用户的

RHCE 学习笔记(10) 远程访问


重复以上操作,绑定James端口到5904,登录显示为James

RHCE 学习笔记(10) 远程访问



本文出自 “麻婆豆腐” 博客,请务必保留此出处http://beanxyz.blog.51cto.com/5570417/1598056