User Tools

Site Tools


pom-ng:installation

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
pom-ng:installation [2012/09/26 15:33] gmsoftpom-ng:installation [2020/05/26 21:59] (current) – external edit 127.0.0.1
Line 1: Line 1:
 ====== Installation ====== ====== Installation ======
  
-===== Dependencies =====+There are two parts to pom-ng. The main executable called **pom-ng**. 
 +You can then either use the CLI or the web interface.\\ 
 +The CLI consists of a python script called pom-ng-console.py and the web interface is a standalone jquery based web interface. 
 + 
 +===== Installing pom-ng ===== 
 + 
 +==== Dependencies ====
  
 In order to compile pom-ng, there are several mandatory and non mandatory dependencies as well as build dependencies. In order to compile pom-ng, there are several mandatory and non mandatory dependencies as well as build dependencies.
Line 12: Line 18:
   * Mandatory dependencies   * Mandatory dependencies
       * [[http://www.xmlsoft.org/|libxml2]]       * [[http://www.xmlsoft.org/|libxml2]]
-      * [[http://www.gnu.org/software/libmicrohttpd/|libmicrohttpd]] (>= 0.9.x+      * [[http://www.gnu.org/software/libmicrohttpd/|libmicrohttpd]] (>= 0.9.25
-      * [[http://xmlrpc-c.sourceforge.net/|xmlrpc-c]] +      * [[http://xmlrpc-c.sourceforge.net/|xmlrpc-c]] (package libxmlrpc-core-c3-dev) 
-      * [[http://www.lua.org/|lua]] (>= 5.1)+      * [[http://www.lua.org/|lua]] (= 5.1) (package liblua5.1-dev) 
 +      * [[https://troydhanson.github.io/uthash/|uthash]]
  
   * Optional dependencies   * Optional dependencies
Line 21: Line 28:
       * [[http://www.zlib.net/|zlib]] Used to decompress payloads and packets.       * [[http://www.zlib.net/|zlib]] Used to decompress payloads and packets.
       * [[http://libjpeg-turbo.virtualgl.org/|libjpeg]] Used to analyze jpeg images.       * [[http://libjpeg-turbo.virtualgl.org/|libjpeg]] Used to analyze jpeg images.
-      * [[http://www.sqlite.org/|SQLite]] (>= 3.x) Database backend to store configurations and other.+      * [[http://www.sqlite.org/|SQLite]] (>= 3.x) Database backend to store configurations and other. (on debian wheezy for dev files: libsqlite3-dev) 
 +      * [[http://libexif.sourceforge.net/|libexif]] Used to parse exif data from jpeg images. 
 +      * [[http://www.postgresql.org/|Postgresql]] Another database backend.
  
 You must have at least one database backend. Currently only sqlite3 is supported. You must have at least one database backend. Currently only sqlite3 is supported.
Line 27: Line 36:
 **IMPORTANT** If you want to use targets and inputs that uses libpcap or any other feature that requires some special dependency, make sure that you install them **before** running the ./configure script. On some distributions (e.g. Debian, Ubuntu) you will need to install the -dev package that contains the include files. For example on Debian you would execute "apt-get install libpcap-dev". The package pkg-config is also very important for the configure script. Make sure you have it installed on your system. **IMPORTANT** If you want to use targets and inputs that uses libpcap or any other feature that requires some special dependency, make sure that you install them **before** running the ./configure script. On some distributions (e.g. Debian, Ubuntu) you will need to install the -dev package that contains the include files. For example on Debian you would execute "apt-get install libpcap-dev". The package pkg-config is also very important for the configure script. Make sure you have it installed on your system.
  
-===== Building from git =====+ 
 +==== Building from git ====
  
 You can obtain a copy of the source code from [[https://github.com/gmsoft-tuxicoman/pom-ng|github]] by running the following command : You can obtain a copy of the source code from [[https://github.com/gmsoft-tuxicoman/pom-ng|github]] by running the following command :
-  git clone git://github.com/gmsoft-tuxicoman/pom-ng.git+  git clone git://github.com/gmsoft-tuxicoman/pom-ng.git
  
 You then need to to run autoreconf to create the configure script : You then need to to run autoreconf to create the configure script :
-  autoreconf -f -i +  autoreconf -f -i 
-If you encounter any errors, make sure you have all the build dependencies, especially libtool and pkgconfig.+If you encounter any errors, make sure you have all the build dependencies, especially libtool and pkg-config.
  
 The run the following commands to compile and install it : The run the following commands to compile and install it :
-  ./configure +  ./configure 
-  make +  make 
-  make install+  make install 
 + 
 +==== Running it ==== 
 +To run it, simply issue the command 
 +  # pom-ng 
 +   
 +==== Running it without make install ==== 
 +When you are coding on pom-ng, it's sometimes useful to run it without having to install it on the system. 
 +To do so, you need to perform several things. First you must create a symbolic link to your local copy of pom-ng : 
 +  ln -s /local/path/of/pom-ng/ /usr/local/share/pom-ng 
 + 
 +Then you need to go in the src directory and export the necessary environment variables so that pom-ng can locate its libraries : 
 +  cd src 
 +  export POM_LIBDIR=modules/.libs 
 +  export LD_LIBRARY_PATH=.libs 
 + 
 +You can then run it localy : 
 +  ./pom-ng 
 + 
 + 
 +===== Installing pom-ng web interface ==== 
 + 
 +The web interface is javascript only. No server side support is needed. 
 + 
 +==== Installing from git ==== 
 + 
 +You need to clone the git repository in the right directory. 
 + 
 +  # cd /usr/local/share/pom-ng 
 +  # git clone git://github.com/gmsoft-tuxicoman/pom-ng-webui.git 
 + 
 +This is all you need. 
 + 
 +==== Extract the tarball ==== 
 + 
 +Alternatively, you can simply extract the webui tarball in /usr/local/share/pom-ng/pom-ng-webui/
 + 
 + 
 +=== Connecting to the web interface ==== 
 + 
 +By default, pom-ng will listen on port 8080. Simply point your browser to http://localhost:8080 and the web interface will show up. 
 + 
 +===== Installing pom-ng-console.py ===== 
 + 
 +==== Dependency ==== 
 + 
 +The console depends on python 3. 
 + 
 +==== Installation procedure ==== 
 +Installing the console is a lot easier. First you need to fetch it from [[https://github.com/gmsoft-tuxicoman/pom-ng-console|github]] : 
 +  git clone git://github.com/gmsoft-tuxicoman/pom-ng-console.git 
 + 
 +You can then install the console with the following command : 
 +  cd pom-ng-console 
 +  python setup.py install 
 + 
 +Once done, you can run it : 
 +  pom-ng-console.py 
 + 
 +Alternativaly, you can run it directly from the local directory without installing it : 
 +  cd pom-ng-console 
 +  ./pom-ng-console.py 
 +   
 +Once you are done, continue by reading the [[pom-ng:getting_started|getting started]] section. 
 + 
 + 
 +=====  Troubleshooting ===== 
 + 
 +If after running make install, you have the following error : 
 +  pom-ng: error while loading shared libraries: libpom-ng.so.0: cannot open shared object file: No such file or directory 
 + 
 +It means that your system doesn't search at the correct place for libpom-ng.so. To solve this problem add "/usr/local/lib/" in /etc/ld.so.conf. The following command will do it : 
 +  echo "/usr/local/lib" >> /etc/ld.so.conf; ldconfig 
pom-ng/installation.1348673622.txt.gz · Last modified: 2020/05/26 21:59 (external edit)