0x01.OpenGTS简介 OpenGTS ™(“GPS跟踪系统”)是第一个可用的开源项目,专门提供基于网络的 GPS 跟踪服务。 迄今为止,OpenGTS™已被下载并投入了使用于95个国家。车辆和跟踪资产类型包括出租车,送货面包车,卡车/拖车,农用设备,个人车辆,服务车辆,集装箱,船舶,全地形车,专人跟踪,手机等。 虽然OpenGTS ™设计以填补需求入门级船队跟踪系统为主,它也是非常高度可配置和可扩展性以及规模较大的框架。 更多链接:
0x02.OpenGTS搭建 1.环境配置 1).安装运行环境: 1 2 3 4 5 $ yum -y install wget unzip ntp perl mariadb java-1.6.0-openjdk-devel #### 2).增加一个tomcat账户: $ useradd tomcat -p \`perl -e 'print crypt("password@123", "salt")'\`
3).设置环境变量和软链接: 1 2 3 4 5 6 7 8 $ echo "export JAVA\_HOME=/usr/lib/jvm/java-openjdk" >> /etc/profile $ echo "export CATALINA\_HOME=/opt/tomcat" >> /etc/profile $ echo "export GTS\_HOME=/opt/OpenGTS" >> /etc/profile $ source /etc/profile $ ln -s /opt/ant/bin/ant /usr/bin $ ln -s $JAVA\_HOME /usr/local/java $ ln -s $CATALINA\_HOME /usr/local/tomcat $ ln -s $GTS\_HOME /usr/local/gts
4).设置mariadb密码: $ mysqladmin -u root password 'mysqlpass'
2.安装服务 1).ant: 当前最新版本:1.9.6
1 2 3 4 $ cd /usr/src $ wget http://mirror.nus.edu.sg/apache//ant/binaries/apache-ant-1.9.6-bin.zip $ unzip apache-ant-1.9.6-bin.zip $ mv apache-ant-1.9.6 /opt/ant
2).tomcat: 安装版本:7.0.68 opengts只能使用7.0版本的tomcat
1 2 3 4 5 6 7 $ cd /usr/src $ wget http://mirror.nus.edu.sg/apache/tomcat/tomcat-7/v7.0.68/bin/apache-tomcat-7.0.68.zip $ unzip apache-tomcat-7.0.68.zip $ mv -vf apache-tomcat-7.0.68 /opt/tomcat $ chown -R tomcat:tomcat /opt/tomcat $ cd /opt/tomcat/bin/ $ chown +x \*.sh
3).Mysql JDBC 当前最新版本:5.1.38
1 2 3 4 $ cd /usr/src $ wget http://cdn.mysql.com//Downloads/Connector-J/mysql-connector-java-5.1.38.zip $ unzip -q mysql-connector-java-5.1.38.zip $ mv -vf /usr/src/mysql-connector-java-\*/mysql-connector-java-\*-bin.jar $JAVA\_HOME/jre/lib/ext
4).JavaMail 当前最新版本:1.4.5 官方链接
1 2 3 4 $ cd /usr/src $ wget http://download.oracle.com/otn-pub/java/javamail/1.4.5/javamail1\_4\_5.zip $ unzip javamail1\_4\_5.zip $ mv javamail1\_4\_5/mail.jar $JAVA\_HOME/jre/lib/ext/mail.jar
5).OpenGTS 当前最新版本:2.6.1
1 2 3 4 $ cd /usr/src $ wget http://jaist.dl.sourceforge.net/project/opengts/server-base/2.6.1/OpenGTS\_2.6.1.zip $ unzip -q OpenGTS\_2.6.1.zip $ mv OpenGTS\_2.3.6 /opt/OpenGTS
3.修改配置 1).基本配置(日志,数据库) 1 2 3 4 $ sed -i "slog.file.enable=falselog.file.enable=true" $GTS\_HOME/common.conf $ sed -i "s#log.file.rotate.deleteAge=60dlog.file.rotate.deleteAge=60d" $GTS\_HOME/common.conf $ sed -i "s/db.sql.user=\\${ServiceAccount.db.user=gts}/db.sql.user=\\${ServiceAccount.db.user=db\_user}/" $GTS\_HOME/common.conf $ sed -i "s/db.sql.password=\\${ServiceAccount.db.pass=opengts}/db.sql.password=\\${ServiceAccount.db.pass=db\_pass}/" $GTS\_HOME/common.conf
2).邮件配置 1 2 3 4 5 6 7 echo 'smtp.user.emailAddress=rajat@gmail.com smtp.host=smtp.gmail.com smtp.port=465 smtp.user=rajat@gmail.com smtp.password=password smtp.enableSSL=true ' >> /opt/OpenGTS/custom.conf
3).编译 1 2 $ cd $GTS\_HOME $ ant all
4).配置数据库 1 2 $ cd $GTS\_HOME $ bin/initdb.sh -rootUser=root -rootPass=rmysqlpassord
5).部署前测试 1 2 3 $ cd $GTS\_HOME $ bin/checkInstall.sh $ bin/checkInstall.sh -sendMail rajat.linux@gmail.com
6).部署 1 2 $ cp -vf $GTS\_HOME/build/track.war $CATALINA\_HOME/webapps $ cp -vf $GTS\_HOME/build/events.war $CATALINA\_HOME/webapps
7).增加一个管理员账户(Account: admin, Password: rajat) 1 2 $ cd $GTS\_HOME $ bin/admin.sh Account -account=admin -pass=rajat -create
8).载入样本数据(可选) 1 2 3 $ cp -vf $GTS\_HOME/sampleData/loadSampleData.sh $GTS\_HOME/bin $ cd $GTS\_HOME $ bin/loadSampleData.sh
9).启动tomcat 1 2 3 $ cd /opt/tomcat/bin $ su tomcat $ ./startup.sh
访问 http://IP\_ADDRESS:8080/track/Track
0x03.安装gprmc gprmc 是用来接收设备上传数据的应用.它是opengts自己的协议。基于HTTP或SOCKET。默认配置为HTTP。 HTTP的请求像是这个样子
http://xxx.xxx.xxx.xxx:8080/gprmc/Data?id=123456&dev=123456&acct=root&batt=0&code=0xF020&alt=191.7&gprmc=$GPRMC,113923,A,2744.19960,N,11118.37320,E,1.602865,104.519997,280715,,\*11
1.修改配置后重新编译
2.安装 1 2 $ cd $GTS\_HOME $ cp build/gprmc.war $CATALINA\_HOME/webapps/
或用ant安装
1 2 $ cd $GTS\_HOME $ ant gprmc.deploy
0x04.修改地图提供者 官方说明:http://www.opengts.org/FAQ.html#faq_mapProv 1.打开配置文件
$ vi $CATALINA\_HOME/webapps/track/WEB-INF/private.xml
2.查找MapProvider标签部分,修改配置如下(省略了一些)
1 2 3 4 5 6 7 8 9 10 11 12 ... <MapProvider name="openLayers" active="${Domain.MapProvider.active=false}" class="org.opengts.war.maps.jsmap.OpenLayers" rtPropPrefix="Domain.MapProvider."> ... <MapProvider name="googleMaps" active="${Domain.MapProvider.active=true}" class="org.opengts.war.maps.jsmap.GoogleMaps" key="${Domain.MapProvider.key=\*\*\*PLACE\_AUTHORIZATION\_KEY\_HERE\*\*\*}" rtPropPrefix="Domain.MapProvider."> ...
0x05.参考资料 1.http://blog.csdn.net/kl222/article/details/47127553 2.http://linuxcrazyadmins.com/rajat/showthread.php?tid=41 3.http://www.opengts.org/FAQ.html