rhel6.4部署GateOne
GateOne简介
GateOne是一款基于HTML5的开源终端模拟器/SSH客户端,同时内置强大的插件功能。它自带的插件使其成为一款令人惊艳的SSH客户端,但是,它可以用于运行任何终端应用。用户可以将GateOne嵌入其他应用程序从而提供各类终端访问界面,它也支持各类基于Web的管理界面……后面的大家自己看吧~~
因为内部临时需要这么一套系统,所以搜搜查查,搞定了系统部署,使用pam认证的配置,做了个简单的管理界面。
检查python版本
12[ root@ kurolz gateone ]# python - VPython 2.6.6
获取pip并安装
1[ root@ kurolz gateone ]# wget -- no - check - certificate https: // bootstrap. pypa. io / get - pip. py
1[ root@ kurolz gateone ]# python get - pip. py
安装tornado
1[ root@ kurolz gateone ]# pip install tornado
12[ root@ kurolz gateone ]# python - c "import tornado; print(tornado.version)"4.5.1
到官网下载git
https://www.kernel.org/pub/software/scm/git/
上传到服务器,解压到当前目录
123[ root@ kurolz ~ ]# ls git *git - 2.9.1. tar. gz[ root@ kurolz ~ ]# tar - zxvf git - 2.9.1. tar. gz
编译时出错,提示没有c语言编译器
12345678910[ root@ kurolz git - 2.9.1 ]# . / configureconfigure: Setting lib to ' lib ' ( the default )configure: Will try - pthread then - lpthread to enable POSIX Threads.configure: CHECKS for site configurationchecking for gcc... nochecking for cc... nochecking for cl. exe... noconfigure: error: in ` / root / git - 2.9.1 ' :configure: error: no acceptable C compiler found in $PATHSee `config.log ' for more details
先安装gcc,把系统盘挂载上,在里面找安装包,如有网络可通过yum安装
1234567891011121314[ root@ kurolz mnt ]# mkdir / mnt / cdrom[ root@ kurolz mnt ]# mount - t iso9660 / dev / cdrom / mnt / cdrommount: block device / dev / sr0 is write - protected, mounting read - only[ root@ kurolz mnt ]# cd / mnt / cdrom /[ root@ kurolz cdrom ]# lsEFI EULA_pt README RELEASE - NOTES - it - IT. html RELEASE - NOTES - ru - RU. html RPM - GPG - KEY - redhat - releaseEULA EULA_zh RELEASE - NOTES - as - IN. html RELEASE - NOTES - ja - JP. html RELEASE - NOTES - si - LK. html ScalableFileSystemEULA_de GPL RELEASE - NOTES - bn - IN. html RELEASE - NOTES - kn - IN. html RELEASE - NOTES - ta - IN. html ServerEULA_en HighAvailability RELEASE - NOTES - de - DE. html RELEASE - NOTES - ko - KR. html RELEASE - NOTES - te - IN. html TRANS. TBLEULA_es images RELEASE - NOTES - en - US. html RELEASE - NOTES - ml - IN. html RELEASE - NOTES - zh - CN. htmlEULA_fr isolinux RELEASE - NOTES - es - ES. html RELEASE - NOTES - mr - IN. html RELEASE - NOTES - zh - TW. htmlEULA_it LoadBalancer RELEASE - NOTES - fr - FR. html RELEASE - NOTES - or - IN. html repodataEULA_ja media. repo RELEASE - NOTES - gu - IN. html RELEASE - NOTES - pa - IN. html ResilientStorageEULA_ko Packages RELEASE - NOTES - hi - IN. html RELEASE - NOTES - pt - BR. html RPM - GPG - KEY - redhat - beta
依次安装
12345678910111213141516171819[ root@ kurolz Packages ]# rpm - ivh glibc - common - 2.12 - 1.107. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh kernel - headers - 2.6.32 - 358. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh libgcc - 4.4.7 - 3. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh glibc - 2.12 - 1.107. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh libgomp - 4.4.7 - 3. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh nscd - 2.12 - 1.107. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh glibc - headers - 2.12 - 1.107. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh glibc - devel - 2.12 - 1.107. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh mpfr - 2.4.1 - 6. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh ppl - 0.10.2 - 11. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh cloog - ppl - 0.15.7 - 1.2. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh cpp - 4.4.7 - 3. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh gcc - 4.4.7 - 3. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh libstdc ++- 4.4.7 - 3. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh libstdc ++- devel - 4.4.7 - 3. el6. x86_64. rpm[ root@ kurolz Packages ]# which gcc/ usr / bin / gcc[ root@ kurolz Packages ]# rpm - q gccgcc - 4.4.7 - 3. el6. x86_64
重新编译安装git
12345678[ root@ kurolz ~ ]# cd git - 2.9.1[ root@ kurolz git - 2.9.1 ]# . / configureconfigure: Setting lib to ' lib ' ( the default )configure: Will try - pthread then - lpthread to enable POSIX Threads.configure: CHECKS for site configurationchecking for gcc... gccchecking whether the C compiler works... yes......
make时又报错,原因:缺少zlib头文件,开发包没安装
12345In file included from credential - store. c: 1:cache. h: 21: 18: warning: zlib. h: No such file or directoryIn file included from credential - store. c: 1:cache. h: 23: error: expected specifier - qualifier - list before ‘ z_stream’make: *** [ credential - store. o ] Error 1
解决方法(依然挂载系统盘,找到下面2个安装包安装):
12[ root@ kurolz Packages ]# rpm - ivh zlib - 1.2.3 - 29. el6. x86_64. rpm[ root@ kurolz Packages ]# rpm - ivh zlib - devel - 1.2.3 - 29. el6. x86_64. rpm
重新make成功
12345678910111213[ root@ kurolz git - 2.9.1 ]# makeGEN config. status/ bin / sh: autoconf: command not foundCC credential - store. o* new link flagsCC abspath. oCC advice. oCC alias. oCC alloc. o......GEN bin - wrappers / test - urlmatch - normalizationGEN bin - wrappers / test - wildmatchGEN git - remote - testgit
12[root@kurolz git-2.9.1]# sudo make install
1git 安
12[ root@ kurolz ~ ]# git -- versiongit version 2.9.1
下面获取gateone源码进行安装,报错,因为git环境没有安装完全
1234[root@kurolz ~]# git clone https://github.com/liftoff/GateOne.git正 克 隆 到 'GateOne'...fatal: Unable to find remote helper for 'https'
解决方法,暂时用git代替https:
12[ root@ kurolz ~ ]# git clone git: // github. com / liftoff / GateOne. git[ root@ kurolz ~ ]# cd GateOne
发现这个包执行不下去报错原因没找到,我到
https://github.com/downloads/liftoff/GateOne/gateone-1.1-1.noarch.rpm
重新下了个包
12[ root@ kurolz ~ ]# tar - zxvf gateone - 1.1 - 1. noarch. rpm[ root@ kurolz ~ ]# cd gateone
报错,原因tornado版本不对:
1234567[ root@ kurolz gateone ]# . / gateone. pyTraceback ( most recent call last ):File "./gateone.py", line 289, intornado. options. enable_pretty_logging()AttributeError: ' module ' object has no attribute ' enable_pretty_logging '[ root@ kurolz gateone ]# python - c "import tornado; print(tornado.version)"4.4.1
解决方法,安装2.4版本的tornado:
1[ root@ kurolz ~ ] wget https: // pypi. python. org / packages / 2 d / 9 a / 38 e855094bd11cba89cd2a50a54c31019ef4a45785fe12be6aa9a7c633de / tornado - 2.4. tar. gz
123456[ root@ kurolz ~ ]# tar zxvf tornado - 2.4. tar. gz[ root@ kurolz ~ ]# cd tornado - 2.4[ root@ kurolz tornado - 2.4 ]# python setup. py build[ root@ kurolz tornado - 2.4 ]# python2 setup. py install[ root@ kurolz tornado - 2.4 ]# python - c "import tornado; print(tornado.version)"2.4
再启动gateone,成功:
123456789[ root@ kurolz gateone ]# . / gateone. py[ I 170518 19: 43: 11 gateone: 2748 ] / opt / gateone / server. conf not found or missing cookie_secret. A new one will be generated.[ W 170518 19: 43: 11 gateone: 2893 ] dtach command not found. dtach support has been disabled.[ I 170518 19: 43: 11 gateone: 2917 ] Connections to this server will be allowed from the following origins: ' http://localhost https://localhost http://127.0.0.1 https://127.0.0.1 '[ I 170518 19: 43: 11 gateone: 2957 ] No SSL private key found. One will be generated.[ I 170518 19: 43: 13 gateone: 2307 ] No authentication method configured. All users will be ANONYMOUS[ I 170518 19: 43: 13 gateone: 2404 ] Loaded plugins: bookmarks, convenience, example, help, logging, logging_plugin, mobile, notice, playback, ssh[ I 170518 19: 43: 13 gateone: 3054 ] Listening on[ I 170518 19: 43: 13 gateone: 3060 ] Process running with pid 2630
发现用WAN的ip访问不了,Ctrl+C,编辑配置文件,修改允许访问的IP地址,以‘;’隔开
12[ root@ kurolz gateone ]# vim server. conforigins = "http://localhost;https://localhost;http://127.0.0.1;https://127.0.0.1;https://192.168.20.128;https://192.168.10.10"
重新启动gateone
1234567[ root@ kurolz gateone ]# . / gateone. py[ W 170518 19: 57: 01 gateone: 2893 ] dtach command not found. dtach support has been disabled.[ I 170518 19: 57: 01 gateone: 2917 ] Connections to this server will be allowed from the following origins: ' http://localhost https://localhost http://127.0.0.1 https://127.0.0.1 https://192.168.20.128 https://192.168.10.10 '[ I 170518 19: 57: 01 gateone: 2307 ] No authentication method configured. All users will be ANONYMOUS[ I 170518 19: 57: 01 gateone: 2404 ] Loaded plugins: bookmarks, convenience, example, help, logging, logging_plugin, mobile, notice, playback, ssh[ I 170518 19: 57: 01 gateone: 3054 ] Listening on https: //*: 443 /[ I 170518 19: 57: 01 gateone: 3060 ] Process running with pid 2630
浏览器连接成功:
1234567891011121314151617181920[ root@ kurolz gateone ]# . / gateone. py[ W 170518 19: 57: 01 gateone: 2893 ] dtach command not found. dtach support has been disabled.[ I 170518 19: 57: 01 gateone: 2917 ] Connections to this server will be allowed from the following origins: ' http://localhost https://localhost http://127.0.0.1 https://127.0.0.1 https://192.168.20.128 https://192.168.10.10 '[ I 170518 19: 57: 01 gateone: 2307 ] No authentication method configured. All users will be ANONYMOUS[ I 170518 19: 57: 01 gateone: 2404 ] Loaded plugins: bookmarks, convenience, example, help, logging, logging_plugin, mobile, notice, playback, ssh[ I 170518 19: 57: 01 gateone: 3054 ] Listening on https: //*: 443 /[ I 170518 19: 57: 01 gateone: 3060 ] Process running with pid 2630[ I 170518 19: 57: 11 web: 1462 ] 302 GET / ( 192.168.10.1 ) 1.16 ms[ I 170518 19: 57: 11 auth: 181 ] Creating user directory: / opt / gateone / users / ANONYMOUS[ I 170518 19: 57: 11 web: 1462 ] 302 GET / auth? next=% 2 F ( 192.168.10.1 ) 4.19 ms[ I 170518 19: 57: 11 web: 1462 ] 200 GET / ( 192.168.10.1 ) 31.56 ms[ I 170518 19: 57: 11 web: 1462 ] 200 GET / static / gateone. css ( 192.168.10.1 ) 55.38 ms[ I 170518 19: 57: 11 web: 1462 ] 200 GET / static / gateone. js ( 192.168.10.1 ) 53.57 ms[ I 170518 19: 57: 11 web: 1462 ] 200 GET / combined_js ( 192.168.10.1 ) 58.23 ms[ I 170518 19: 57: 11 web: 1462 ] 200 GET / static / favicon. ico ( 192.168.10.1 ) 1.53 ms[ I 170518 19: 57: 11 web: 1462 ] 200 GET / auth? check= True ( 192.168.10.1 ) 2.47 ms[ I 170518 19: 57: 11 gateone: 1063 ] WebSocket opened ( ANONYMOUS ).[ I 170518 19: 57: 12 web: 1462 ] 200 GET / static / bookmarks / images / star. svg ( 192.168.10.1 ) 5.14 ms[ I 170518 19: 57: 12 web: 1462 ] 200 GET / static / ubuntumono - normal. woff ( 192.168.10.1 ) 8.31 ms
一旦Ctrl+c就不能连接登录了,所以我们需要后台运行,启动gateone的服务,并且开机启动
123[ root@ kurolz gateone ]# service gateone startStarting Gate One: [ 确 定 ][ root@ kurolz gateone ]# chkconfig gateone on
至此gateone部署完成。