一、环境说明

  1. 操作系统:CentOS 6.4 x86_64
  2. 主机IP:192.168.38.20
  3. 登录账户:root

二、安装编译和运行环境

1. 关闭防火墙

 

在Shell中运行以下命令:

  1. chkconfig iptables off
  2. service iptables stop
2. 修改SELinux运行模式

在Shell中运行以下命令:

  1. setenforce 0
  2. vi /etc/selinux/config

将上述配置文件中的:

  1. SELINUX=enforcing

修改为:

  1. SELINUX=permissive
3. 安装GCC套件

在Shell中运行以下命令:

  1. yum groupinstall -y "Development Tools"
4. 下载JDK

至下面的网页下载JDK,此处下载的是jdk-8u45-linux-x64.tar.gz安装包,存放在/root/Downloads目录中:

jdk-8u45-linux-x64.tar.gz

5. 卸载系统自带的OpenJDK

在Shell中运行以下命令:

  1. rpm -qa | grep java
  2. rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.x86_64
  3. rpm -e --nodeps java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.x86_64
  4. rpm -e --nodeps tzdata-java-2012j-1.el6.noarch
6. 解压缩安装JDK

在Shell中运行以下命令:

  1. cd /root/Downloads
  2. tar xvzf jdk-8u45-linux-x64.tar.gz
  3. mv jdk1.8.0_45 /usr/local/Java
7. 配置JDK环境变量

在Shell中运行以下命令:

  1. vi /etc/profile

在上述配置文件的最后,另起新行输入:

  1. JAVA_HOME=/usr/local/Java
  2. PATH=$JAVA_HOME/bin:$PATH
  3. CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
  4. export JAVA_HOME
  5. export PATH
  6. export CLASSPATH

保存上述配置文件,生效配置文件:

  1. source /etc/profile
8. 测试JDK安装结果

在Shell中运行以下命令:

  1. java -version

若上述命令的输出如下所示,则表示安装成功:

9. 下载Tomcat

在Shell中运行以下命令:

  1. cd /root/Downloads
  2. wget http://mirrors.cnnic.cn/apache/tomcat/tomcat-8/v8.0.23/bin/apache-tomcat-8.0.23.tar.gz
10. 解压缩安装Tomcat

在Shell中运行以下命令:

  1. tar xvzf apache-tomcat-8.0.23.tar.gz
  2. mv apache-tomcat-8.0.23/usr/local/Tomcat
  3. cd /usr/local/Tomcat/bin
  4. chmod +x *.*
11. 创建Tomcat服务控制脚本

在Shell中运行以下命令:

  1. vi /etc/init.d/tomcat

在这个新建的文件中输入以下内容:

  1. #!/bin/bash

  2. # description: Tomcat Start Stop Restart Status
  3. # processname: tomcat
  4. # chkconfig: 234 20 80
  5. # description: Tomcat is a Java application Server.

  6. # Source function library
  7. ./etc/init.d/functions

  8. # System environment variables
  9. CATALINA_HOME=/usr/local/Tomcat
  10. TOMCAT_USER=root
  11. LOCKFILE=/var/lock/subsys/tomcat
  12. RETVAL=0

  13. start(){
  14. "Starting Tomcat: "
  15. --c "$CATALINA_HOME/bin/startup.sh"
  16. =$?
  17.        echo
  18. [-eq 0]&& touch $LOCKFILE
  19. return $RETVAL
  20. }

  21. stop(){
  22. "Shutting down Tomcat: "
  23. /bin/shutdown.sh
  24. =$?
  25.  echo
  26. [-eq 0]&&-f $LOCKFILE
  27. return $RETVAL
  28. }

  29. case"$1"in
  30. )
  31.           start
  32. ;;
  33. )
  34.           stop
  35. ;;
  36. )
  37.           stop
  38.           start
  39. ;;
  40. )
  41.           status tomcat
  42. ;;
  43. *)
  44. "Usage: $0 {start|stop|restart|status}"
  45. exit1
  46. ;;
  47. esac
  48. exit?

保存上述文件,然后在Shell中执行以下命令:

  1. chmod 755/etc/init.d/tomcat
  2. chkconfig --add /etc/init.d/tomcat
  3. chkconfig tomcat on

以下四条命令可用于控制Tomcat服务:

  1. service tomcat start # 启动Tomcat服务
  2. service tomcat stop # 停止Tomcat服务
  3. service tomcat restart # 重启Tomcat服务
  4. service tomcat status # 查看Tomcat服务状态
12. 配置catalina.sh脚本

在Shell中运行以下命令:

  1. vi /usr/local/Tomcat/bin/catalina.sh

#!/bin/sh这行下面添加系统环境变量:

  1. JAVA_HOME=/usr/local/Java
  2. PATH=$JAVA_HOME/bin:$PATH
  3. CATALINA_HOME=/usr/local/Tomcat
  4. CATALINA_BASE=/usr/local/Tomcat

  5. CATALINA_PID=/var/run/tomcat.pid
  6. CATALINA_OPTS="$CATALINA_OPTS -XX:+UseParallelGC"

注意:必须在CATALINA_OPTS环境变量中显式指定使用并行垃圾收集器(-XX:+UseParallelGC选项),否则JVM可能会根据服务器配置默认使用串行垃圾收集器,这种垃圾收集器的性能和效率较低。

13. 测试Tomcat安装

在Shell中运行以下命令:

  1. service tomcat start

在浏览器中访问以下URL:

http://192.168.38.20:8080

若打开页面如下所示,则表示安装成功:

14. 安装VNC服务端

在Shell中运行以下命令:

  1. yum install -y tigervnc-server
15. 配置VNC服务器

在Shell中运行以下命令:

  1. vi /etc/sysconfig/vncservers

在上述文件中作出以下修改:
① 将# VNCSERVERS="2:myusername"修改为VNCSERVERS="1:root"② 将# VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -localhost"修改为VNCSERVERARGS[1]="-geometry 1024x768 -nolisten tcp"

上述配置会为远程用户root提供一个分辨率为800×600的远程桌面,连接端口号为5901。

16. 设置VNC登录密码

在Shell中运行以下命令:

  1. vncserver

运行上述命令之后会提示输入密码,此处设置密码为password。

17. 重启VNC服务

在Shell中运行以下命令:

  1. chkconfig vncserver on
  2. service vncserver restart

三、安装和配置Guacamole

1. 导入第三方软件源

在Shell中运行以下命令:

  1. rpm -Uvh://mirrors.ustc.edu.cn/epel/6/x86_64/epel-release-6-8.noarch.rpm
  2. rpm -Uvh://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm vi /etc/yum.repos.d/epel.repo

将上述配置文件中的:

  1. # baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
  2. mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch

改为:

  1. baseurl=http://download.fedoraproject.org/pub/epel/6/$basearch
  2. #mirrorlist=https://mirrors.fedoraproject.org/metalink?repo=epel-6&arch=$basearch
2. 安装Guacamole依赖软件包

在Shell中运行以下命令:

  1. # 安装Cairo
  2. yum install -y cairo cairo-devel

  3. # 安装libpng
  4. yum install -y libpng libpng-devel

  5. # 安装FreeRDP
  6. yum install -y freerdp freerdp-devel

  7. # 安装Pango
  8. yum install -y pango pango-devel

  9. # 安装libssh2
  10. yum install -y libssh2 libssh2-devel

  11. # 安装libtelnet
  12. yum install -y libtelnet libtelnet-devel

  13. # 安装libVNCServer
  14. yum install -y libvncserver libvncserver-devel

  15. # 安装libpulse
  16. yum install -y pulseaudio pulseaudio-libs pulseaudio-libs-devel

  17. # 安装libssl
  18. yum install -y openssl openssl-devel

  19. # 安装libvorbis
  20. yum install -y libvorbis libvorbis-devel

  21. # 安装OSSP UUID
  22. yum install -y uuid uuid-devel
3. 下载Guacamole源码包

在Shell中运行以下命令:

  1. cd /root/Downloads
  2. wget http://jaist.dl.sourceforge.net/project/guacamole/current/source/guacamole-server-0.9.7.tar.gz
  3. git clone https://github.com/cmujedi/guacamole.git
4. 编译Guacamole

在Shell中运行以下命令:

  1. tar -xvzf guacamole-server-0.9.7.tar.gz
  2. cd guacamole-server-0.9.7/
  3. ./configure --with-init-dir=/etc/init.d
  4. make
  5. make install
  6. ldconfig
5. 配置Guacamole服务

在Shell中运行以下命令:

  1. chown root.root /etc/init.d/guacd
  2. chmod 755/etc/init.d/guacd
  3. chkconfig --add guacd
  4. chkconfig guacd on

以下四条命令可用于控制guacd服务:

  1. service guacd start # 启动guacd服务
  2. service guacd stop # 停止guacd服务
  3. service guacd restart # 重启guacd服务
  4. service guacd status # 查看guacd服务状态
6. 下载Guacamole客户端

在Shell中运行以下命令:

  1. cd /root/Downloads
  2. wget http://jaist.dl.sourceforge.net/project/guacamole/current/binary/guacamole-0.9.7.war
  3. mkdir /var/lib/guacamole
  4. mv /root/Downloads/guacamole-0.9.7.war/var/lib/guacamole/guacamole.war
7. 新建Guacamole配置文件

在Shell中运行以下命令:

  1. mkdir /etc/guacamole
  2. mkdir /root/.guacamole
  3. cp /root/Downloads/guacamole/doc/example/guacamole.properties/etc/guacamole/guacamole.properties
  4. cp /root/Downloads/guacamole/doc/example/user-mapping.xml/etc/guacamole/user-mapping.xml
  5. ln -s /etc/guacamole/guacamole.properties /root/.guacamole/
8. 配置guacamole.properties文件

在Shell中运行以下命令:

  1. vi /etc/guacamole/guacamole.properties

将上述文件的basic-user-mapping属性设置为:

  1. /etc/guacamole/user-mapping.xml
9. 配置user-mapping.xml文件

在Shell中运行以下命令:

  1. vi /etc/guacamole/user-mapping.xml

在上述XML文件的user-mapping节点内添加如下内容:

  1. <authorizeusername="root"password="password">
  2. <protocol>vnc</protocol>
  3. <paramname="hostname">localhost</param>
  4. <paramname="port">5901</param>
  5. <paramname="password">password</param>
  6. <paramname="color-depth">32</param>
  7. </authorize>

其中的密码值要和之前安装VNC Server时为相应用户设置的密码相同。

10. 部署Guacamole客户端

在Shell中运行以下命令:

  1. ln -s /var/lib/guacamole/guacamole.war /usr/local/Tomcat/webapps
11. 重启Tomcat

在Shell中运行以下命令:

  1. service tomcat restart
12. 启动guacd

在Shell中运行以下命令:

  1. service guacd start

四、验证Guacamole安装

在WEB浏览器中输入以下URL:

http://192.168.38.20:8080/guacamole/

然后,在登录页面中输入之前配置好的用户名/密码(root/password)即可通过WEB页面连接至VNC。