一、远程管理的基本概念
目前我们常见的远程管理控制方式主要有以下几种:
①RDP(remote desktop protocol)协议 远程桌面协议,我们常用的windows操作系统就是的远程桌面管理就是基于该协议的,更多有关RDP协议的可以查看百度百科 RDP
②telnet CLI界面下的远程管理工具,因为其历史非常悠久,几乎所有的操作系统都有该工具(telnet在传送数据时是通过明文传输的,没有加密,所以现在几乎都不会使用telnet来进行远程管理了) telnet
③SSH(Secure Shell)协议 CLI界面下的远程管理工具,几乎所有的操作系统都有(区别于telnet,SSH在进行数据传送时会对数据进行加密,所以SSH是比较安全的协议),几乎所有的类UNIX操作系统都是采用SSH来进行远程管理(Linux、BSD、Mac OS等)。 SSH
④RFB(Remote FrameBuffer)协议 图形化远程管理协议,VNC(Virtual Network Computing)就是基于该协议的,上面讲的SSH在类UNIX下是CLI界面常用的远程管理方式,那么在类UNIX操作系统中,同样存在图形化的远程管理工具,VNC就是类UNIX系统下常用的图形化远程管理工具
二、SSH
SSH(Secure Shell)协议是Linux、Unix、Mac及其他网络设备最常用的远程CLI管理协议,SSH在对数据进行传送过程中会使用非对称的加密算法来对数据进行加密,以此来保证远程管理数据的安全
SSH2是目前广泛使用的ssh版本,SSH协议是TCP协议,其占用的端口号是 22
我们绝大多数Linux版本默认使用的SSH是openssh,通过 ssh -V 命令可以查看ssh的信息
[root@xiaoluo ~]# ssh -V OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010
SSH分为服务器端和客户端,对于服务器端,SSH是默认开机启动的,通过 service sshd status 命令来查看
[root@xiaoluo ~]# service sshd status openssh-daemon (pid 1578) is running...
通过 ssh root@172.25.215.40 命令来进行登陆,root是我们需要登陆的用户名,@后面跟的是我们的ip地址
[root@xiaoluo ~]# ssh root@172.25.215.40 The authenticity of host '172.25.215.40 (172.25.215.40)' can't be established. RSA key fingerprint is 53:61:a6:9c:32:92:85:12:1d:97:c9:2c:0c:9b:f6:3e. Are you sure you want to continue connecting (yes/no)? yes Warning: Permanently added '172.25.215.40' (RSA) to the list of known hosts. root@172.25.215.40's password:
我们看到,当我们输入该命令以后,其会提示我们是否生成一个密钥,因为我们的SSH是加密的,所以我们输入 yes ,此时就会给该远程登录端生成一个加密的密钥,这个密钥是保存在用户家目录下的 .ssh/ 目录中,我们可以看一下里面的内容:
[root@xiaoluo ~]# cat ./.ssh/known_hosts
172.25.215.40 ssh-rsa AAAAB3NzaC1yc2EAAAABIwAAAQEAwOaEBlkF3n1+m/Dern0+cjoGFUDs68JRnuihDTKckxV1IuEsys1HX/YMp6fzjGzDAKd/dsWS0O9bwEmLgK1q8QobQHqUIp7a6VJe+6e3VCUDNhX6GB848O+xvYcgeZjVvMs37+RUvmy7YwQ9FrM5RLm9/RpAVf08gLHoqCleh1QJ2j33AfBNjsUUkrr4UQ3kKTuIJBnsyFHF9zpXHcgtcqGzgzaF7AfZw85DXC//5+cRNvF2wwXyEhbrYR3x50SG/f7FSqDd0JX8/+eMu3Wnmjv6dFZS7qt9s+nh7LUGqqy1lNncXxECFZa2HiSduWkwIW667LBsNVB1pIba7uBn/Q==
我们看到,其实这里保存的就是我们远程登录管理的一个ssh密钥。使用哪个用户名登陆,就会在该用户家目录下生成有给密钥,我们输入用户密码,就能远程登录上我们的主机了
三、VNC
刚才讲过,VNC(Virtual Network Computing)是一种Linux系统(或者BSD、Mac等)下常用的图形化远程管理工具,使用的是RFB协议
VNC跟SSH一样,也分为客户端与服务器端,我们在需要被远程访问的服务器上安装VNC的服务器端,其他计算机上安装VNC的客户端程序与其进行连接
CentOS 6/RHEL 6中我们使用的是 tigervnc 来作为自带的VNC工具,默认这个工具是没有被安装的,我们如果想要使用VNC服务,就必须根据一下的操作步骤:
[root@xiaoluo ~]# yum install tigervnc-server Loaded plugins: fastestmirror, refresh-packagekit, security Loading mirror speeds from cached hostfile Setting up Install Process Resolving Dependencies --> Running transaction check ---> Package tigervnc-server.x86_64 0:1.1.0-5.el6_4.1 will be installed --> Finished Dependency Resolution Installed: tigervnc-server.x86_64 0:1.1.0-5.el6_4.1 Complete!
②安装完 tigervnc-server 服务器端程序以后我们需要对其进行配置,配置文件是 /etc/sysconfig/vncservers
# VNCSERVERS="2:myusername" # VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"
③配置好后,VNC还需要有单独的VNC密码才行,所以我们要对每个启用VNC服务的用户创建单独的VNC密码,通过 vncpasswd 命令(【注意:】必须要切换到该用户才行,否则VNC服务启动不起来):
[root@xiaoluo ~]# su - xiaoluo [xiaoluo@xiaoluo ~]$ vncpasswd Password: Verify:
④为用户设置好单独的VNC密码后,我们这个时候启动 vncserver 这个服务
Starting VNC server: 1:xiaoluo xauth: (stdin):1: bad display name "xiaoluo:1" in "add" command New 'xiaoluo:1 (xiaoluo)' desktop is xiaoluo:1 Creating default startup script /home/xiaoluo/.vnc/xstartup Starting applications specified in /home/xiaoluo/.vnc/xstartup Log file is /home/xiaoluo/.vnc/xiaoluo:1.log
⑤iptables 加入相应端口
来源: http://www.cnblogs.com/xiaoluo501395377/archive/2013/05/28/3102866.html