开源堡垒机GateOne的安装、配置笔记

因为内部临时需要这么一套系统,所以搜搜查查,搞定了系统部署,使用pam认证的配置。
系统初始化是使用CentOS 6.5 Mini x64版本。

首先exports http_proxy和https_proxy,做好上网准备。

其次查看下安装需求。
http://liftoff.github.io/GateOne/About/index.html#prerequisites

这里有相关的包下载:
https://github.com/liftoff/GateOne/downloads

yum install -y http://download.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
yum update -y

yum install -y python-devel gcc dtach python-pip python-imaging python-kerberos
yum install -y https://github.com/downloads/liftoff/GateOne/tornado-2.4-1.noarch.rpm
cd /usr/local/src
git clone https://github.com/liftoff/GateOne.git

cd GateOne
python setup.py isntall

service gateone start
service gateone stop

vi /etc/gateone/conf.d/10server.conf

origins = [“x.x.x.x”]
address = “x.x.x.x”
https_redirect = True

vi /etc/gateone/conf.d/20authentication.conf
auth = “pam”
pam_realm = “AccessGateway1”
pam_service = “gateone”

vi /etc/sysconfig/iptables
增加80和443端口
service iptables reload

nohup python gateone.py &

在Safari下无法使用,报错如下:
The WebSocket connection was closed. Will attempt to reconnect every 5 seconds…
NOTE: Some web proxies do not work properly with WebSockets.

PC和Android中的Chrome正常。

vi /etc/pam.d/gateone
auth required pam_userdb.so db=/root/pam-test/login
account required pam_userdb.so db=/root/pam-test/login

https://github.com/liftoff/GateOne/issues/118
这里提到是PyPAM,别安装错了。

yum install git pam-devel pam PyPAM pam-devel

然后生成pam db:
vim login.txt
user1
user1passwd

该文件一行用户名一行密码。写好之后wq保存退出。
db_load -T -f login.txt -t hash login.db
然后pam认证需要使用的密码文件就生成好了。之后可以把login.txt删除避免被别人看到用户名密码。
至此GateOne安装完毕。

附:给GateOne添加SSL证书的办法:
修改server.conf
certificate = “/path/to/your/ssl.crt”
disable_ssl = False
ca_certs = “/path/to/your/ca.pem”
keyfile = “/path/to/your/ssl.key”
重新启动,GateOne就会使用你定义的证书来监听443端口了。这样在使用SSL访问的时候就不会出现证书错误了。