OpenSuse 安装 guacamole
1. 安装依赖
1.1 添加zypper源
1 | zypper ar http://172.16.1.168/SLE-11-SP3-SDK-DVD-x86_64-GM-DVD1/ isoSDK |
2 | zypper ar http://172.16.1.168/SLE-11-SP3-SDK-DVD-x86_64-GM-DVD2/ iosSDKsrc |
3 | zypper ar http://172.16.1.168/SLES-11-SP3-DVD-x86_64-GM-DVD1/ iosDVD |
4 | zypper ar http://172.16.1.168/SLES-11-SP3-DVD-x86_64-GM-DVD2/ iosDVDsrc |
1.2 安装编译环境
1 | zypper install cmake |
1.3 安装依赖
1 | zypper install cairo-devel libjpeg-devel libpng-devel uuid-devel pango-devel libssh2-devel libvncserver-devel libossp-uuid16 libpulse-devel libvorbis-devel libopenssl-devel xorg-x11-libSM-devel pulseaudio-module-x11 pulseaudio-utils cups-devel libgsm-devel alsa-devel zlib-devel xmlto |
1.4 可选
1 | alias zp="zypper" |
2 | alias zpi="zypper install" |
3 | alias zpy="zypper install -y" |
2. 安装 FFmpeg-n3.2.14
2.1 安装依赖git
####2.1.1 下载git
1 | wget http://172.16.1.168/rpm_build/source/git/git-2.9.5.tar.gz |
####2.1.2 编译安装git
1 | ./configure |
2 | make -j 4 |
3 | make install |
2.2 安装yasm
2.2.1 下载
1 | wget http://172.16.1.168/rpm_build/source/asm/yasm-1.3.0.tar.gz |
2.2.2 编译
1 | ./configure |
2 | make -j 4 |
3 | make install |
2.3 安装FFmpeg
####2.3.1 下载FFmpeg
1 | wget http://172.16.1.168/rpm_build/source/FFmpeg/FFmpeg-n3.2.14.tar.gz |
####2.3.2 编译安装FFmpeg
1 | |
2 | ./configure |
3 | make -j 4 |
4 | make install |
##3 安装FreeRDP
3.1 下载FreeRDP
1 | wget http://172.16.1.168/rpm_build/source/FreeRDP/FreeRDP-1.0.2.tar.gz |
3.2 编译安装FreeRDP1
1 | echo "pkg_check_modules(ALSA alsa)" > cmake/FindALSA.cmake |
2 | cmake -DCHANNEL_URBDRC=ON -DWITH_FFMPEG=OFF -DWITH_CUPS=ON -DWITH_PULSE=ON -DWITH_GSM=ON -DCMAKE_INSTALL_PREFIX=/usr/FreeRDPx64/ . |
3 | make |
4 | make install |
编译安装FreeRDP2(guacame1.1需要)
winpr/libwinpr/CMakeLists.txt
1 | if(CMAKE_COMPILER_IS_GNUCXX AND CMAKE_SYSTEM_NAME STREQUAL "Linux") |
2 | # older systems |
3 | # (pre POSIX.1-2008: glibc 2.11 and earlier). |
4 | add_definitions(-D_GNU_SOURCE) |
5 | endif() |
6 | |
7 | cmake -DCHANNEL_URBDRC=ON -DWITH_CUPS=ON -DWITH_PULSE=ON -DWITH_GSM=ON -DCMAKE_INSTALL_PREFIX=/usr/FreeRDP2x64/ . |
8 | make |
9 | make install |
3.3 FreeRDP 增加到ld
vim /etc/ld.so.conf.d/FreeRDPx64.conf
1 | /usr/FreeRDPx64/lib/ |
FreeRDP2
1 | /usr/FreeRDP2x64/lib64/ |
2 | /usr/FreeRDP2x64/lib64/freerdp2/ |
3 | /usr/local/lib/ |
4 安装 guacamole
4.1 安装 libwebp
4.1.1 下载
1 | http://172.16.1.168/rpm_build/source/guacamole/libwebp-1.0.3.tar.gz |
4.1.2 安装
1 | ./configure |
2 | make -j 4 |
3 | make install |
4.2 安装uuid-devel
4.2.1 下载依赖
1 | wget http://172.16.1.168/rpm_build/source/guacamole/libossp-uuid%2B%2B16-1.6.2-7.1.x86_64.rpm |
2 | wget http://172.16.1.168/rpm_build/source/guacamole/libossp-uuid16-1.6.2-7.1.x86_64.rpm |
3 | wget http://172.16.1.168/rpm_build/source/guacamole/libossp-uuid_dce16-1.6.2-7.1.x86_64.rpm |
4 | wget http://172.16.1.168/rpm_build/source/guacamole/libuuid-devel-2.19.1-6.29.3.x86_64.rpm |
5 | wget http://172.16.1.168/rpm_build/source/guacamole/uuid-devel-1.6.2-7.1.x86_64.rpm |
4.2.2 安装依赖
1 | zypper install libossp-uuid16-1.6.2-7.1.x86_64.rpm |
2 | zypper install libossp-uuid_dce16-1.6.2-7.1.x86_64.rpm |
3 | zypper install libossp-uuid++16-1.6.2-7.1.x86_64.rpm |
4 | zypper install uuid-devel-1.6.2-7.1.x86_64.rpm |
4.3 安装libtelnet
####4.3.1 下载libtelnet
1 | wget http://172.16.1.168/rpm_build/source/guacamole/libtelnet-0.23.tar.gz |
4.3.2 编译安装libtelnet
1 | ./configure |
2 | make -j 4 |
3 | make install |
4.4 安装libjpeg
4.4.1 下载 libjpeg
1 | wget http://172.16.1.168/rpm_build/source/guacamole/libjpeg-turbo-official-2.0.3.x86_64.rpm |
4.4.1 安装 libjpeg
1 | zypper install libjpeg-turbo-official-2.0.3.x86_64.rpm |
4.5 安装 guacamole
2.5.5.1 下载guacamole
1 | wget http://172.16.1.168/rpm_build/source/guacamole/guacamole-server-1.0.0.tar.gz |
2.5.5.2 安装 guacamole 1.0
1 | export LD_LIBRARY_PATH=/usr/FreeRDPx64/lib/ |
2 | export C_INCLUDE_PATH=/usr/FreeRDPx64/include/ |
3 | export CFLAGS=-L/usr/FreeRDPx64/lib/ |
4 | ./configure --with-init-dir=/etc/init.d --disable-guacenc |
5 | make -j 4 |
6 | make install |
7 | # 磁盘映射 |
8 | ln -sn /usr/local/lib/freerdp/guacsnd.so /usr/FreeRDPx64/lib/freerdp/ |
9 | ln -sn /usr/local/lib/freerdp/guacdr.so /usr/FreeRDPx64/lib/freerdp/ |
10 | |
11 | rm -f /usr/FreeRDPx64/lib/freerdp/guacsnd.so |
12 | rm -f /usr/FreeRDPx64/lib/freerdp/guacdr.so |
安装gucamole1.1
1 | export CFLAGS=" -D_GNU_SOURCE" |
2 | export PKG_CONFIG_PATH=/usr/FreeRDP2x64/lib64/pkgconfig:$PKG_CONFIG_PATH |
3 | ./configure --with-init-dir=/etc/init.d --disable-guacenc |
4 | make -j 4 |
5 | make install |
6 | |
7 | # 官方给出的指定freerdp的位置 |
8 | #./configure --with-init-dir=/etc/init.d --with-freerdp-plugins-dir=/usr/FreeRDP2x64/lib64/freerdp2/ --disable-guacenc |
5 安装 guacamole-client
5.1 安装jdk
5.1.1下载 jdk
1 | mkdir /usr/java/ |
2 | cd /usr/java/ |
3 | wget http://172.16.1.168/rpm_build/source/guacamole/jdk-8u101-linux-x64.tar.gz |
####5.1.2 安装jdk
1 | tar -xvf jdk-8u101-linux-x64.tar.gz |
2 | ln -s jdk1.8.0_101/ jdk |
####5.1.3 添加环境变量
1 | export JAVA_HOME=/usr/java/jdk |
2 | export JRE_HOME=${JAVA_HOME}/jre |
3 | export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATH |
4 | export JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin |
5 | export PATH=$PATH:${JAVA_PATH} |
安装client
1 | /usr/java/apache-tomcat-8.5.50/webapps |
2 | wget http://172.16.1.168/rpm_build/source/guacamole/guacamole-1.0.0.war |
5.1.4 安装扩展
1 | mkdir -p /etc/guacamole/extensions |
2 | cd /etc/guacamole/extensions/ |
3 | wget http://172.16.1.168/rpm_build/source/guacamole/guacamole-auth-quickconnect-1.0.0/guacamole-auth-quickconnect-1.0.0.jar |
6 配置文件
6.1 添加guacamole.properties
配置文件
vi /etc/guacamole/guacamole.properties
1 | guacd-hostname: localhost |
2 | guacd-port: 4822 |
3 | enable-clipboard-integration: true |
6.2 配置user-mapping.xml
vi /etc/guacamole/user-mapping.xml
1 | |
2 | <user-mapping> |
3 | <authorize username="admin" password="1" > |
4 | <connection name="10.10.10.26"> |
5 | <protocol>rdp</protocol> |
6 | <param name="hostname">10.10.10.26</param> |
7 | <param name="port">3389</param> |
8 | <param name="username">su</param> |
9 | <param name="password">su123456</param> |
10 | <param name="resize-method">display-update</param> |
11 | <param name="enable-drive">true</param> |
12 | <param name="drive-path">/tmp/upload/</param> |
13 | <param name="ignore-cert">true</param> |
14 | </connection> |
15 | <connection name="10.10.50.88"> |
16 | <protocol>ssh</protocol> |
17 | <param name="hostname">10.10.50.88</param> |
18 | <param name="port">22</param> |
19 | <param name="username">su</param> |
20 | <param name="password">su123456</param> |
21 | <param name="color-scheme">white-black</param> |
22 | <param name="enable-sftp">true</param> |
23 | </connection> |
24 | </authorize> |
25 | </user-mapping> |
###6.3 添加环境变量
1 | export GUACAMOLE_HOME=/etc/guacamole |
2 | source /etc/profile |
7. 注意事项
编译完成后执行ldconfig
win10以上使用需要关闭 NLA1
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp]
2
Change “SecurityLayer” value to 1
3
Verify “UserAuthentication” value is 0
8.参考文档
[2]. Installing Guacamole natively
[3]. Linux头文件和库的搜索路径
[4]. linux动态链接库的加载顺序: