Zobrazují se příspěvky se štítkemPostgreSQL. Zobrazit všechny příspěvky
Zobrazují se příspěvky se štítkemPostgreSQL. Zobrazit všechny příspěvky

sobota 30. října 2021

Zabbix server s PostgreSQL 14 a TimescaleDB 2.5

S oblibou používám OS FreeBSD a na něm provozuji Zabbix a to v konfiguraci s DB PostgreSQL s rozšířením TimescaleDB. TSDB vyšlo nedávno ve verzi 2.5.0 a tak jsem si napsal svůj velmi jednoduchý Ansible playbook, který zajistí instalaci statických pkg balíčků a provede nutnou kompilaci z portů u těch, u kterých je to třeba.

  • FreeBSD 13.0-RELEASE-p4
  • Zabbix  5.0.17
  • PostgreSQL 14.0_1
  • TimescaleDB 2.5.0

https://github.com/smejdil/freebsd-zabbix-server

Testováno v pomocí Vagrant a GCP ...

úterý 20. září 2016

SW a HW pro učetní


Chtěl jsem si zde poznamenat jakou sestavu a kombinaci HW a SW lze používat pro účetní stanici.


Hardware:
Software:
  • Operační systém - Ubuntu 16.04.1 LTS
  • Kancelářský Office - LibreOffice, součástí Ubuntu
  • Emailový klient - Evolution email, kalendář atd., součástí Ubuntu
  • Program pro scanování - Xsane, součástí Ubuntu
  • Ovladače pro tiskárny - HPLIP podpora 2563 HP tiskáren, součástí Ubuntu
  • Účetní program - ABRA FlexiBee, faktury, DPH výstupy atd.
  • Databáze - PostgreSQL, součástí Ubuntu
  • Datovka - Desktop aplikace pro práci s ISDS - Datovka 

pátek 23. října 2015

OpenStreetMap import do PostGIS



Po dlouhé době jsem opět narazil na databázi PotgresSQL a jeho velmi zajímavé rozšíření PostGIS. Mile mě překvapilo, jak snadno se dá PostGIS naplnit daty z OpenStreetMap (OSM). A tím si snadno vytvoříte vlastní mapový server s velmi podrobnými daty.

Testováno na OS FreeBSD 10.2

Instalace poslední verze PostgreSQL 9.4

cd /usr/ports/databases/postgresql94-server/ && make install clean

Instalace rozšíření PostGIS

cd /usr/ports/databases/postgis21/ && make install clean

Instalace konvertoru OSM do pgsql

/usr/ports/converters/osm2pgsql/ && make install clean

Dále je postup poměrně jednoduchý.  Připravíme si databázi nejlépe i s table space.

mkdir -p /data/pgsql/postgis && chown pgsql:pgsql /data/pgsql/postgis

CREATE USER postgis;
CREATE TABLESPACE postgis OWNER postgis LOCATION '/data/pgsql/postgis';
CREATE DATABASE postgis WITH OWNER = postgis TABLESPACE = postgis;
CREATE LANGUAGE plpgsql;


Provedeme instalaci PostGIS rozšíření PostgreSQL.

cd /usr/local/share/postgresql/contrib/postgis-2.1/
psql -d postgis -f postgis.sql
psql -d postgis -f spatial_ref_sys.sql
psql -d postgis -f postgis_comments.sql
psql -d postgis -f topology.sql
psql -d postgis -f topology_comments.sql
psql -d postgis -f rtpostgis.sql
psql -d postgis -f rtpostgis_legacy.sql
psql -d postgis -f legacy.sql


Ověříme verze PostgreSQL a PostGIS

[root@gis-test ~]# psql postgis
psql (9.4.5)
Type "help" for help.

postgis=# SELECT version();
PostgreSQL 9.4.5 on amd64-portbld-freebsd10.2, compiled by FreeBSD clang version 3.4.1 (tags/RELEASE_34/dot1-final 208032) 20140512, 64-bit

postgis=# SELECT postgis_full_version();
POSTGIS="2.1.7 r13414" GEOS="3.5.0-CAPI-1.9.0 r4084" PROJ="Rel. 4.9.1, 04 March 2015" GDAL="GDAL 2.0.1, released 2015/09/15" LIBXML="2.9.2" LIBJSON="UNKNOWN" TOPOLOGY RASTER



Provedeme stažení OSM mapy ČR a naimportujeme do PostGIS.

fetch http://download.geofabrik.de/europe/czech-republic-latest.osm.pbf # 589M

osm2pgsql -d postgis --slim -C 1500 --number-processes 4 czech-republic-latest.osm.pbf

Import nějakou dobu trvá a zabere i dost místa ve vytvořeném TABLE SPACE :-)

Jak používat data z PostGIS je zase jiné téma. Jen uvedu pár zajímavých projektů.

pátek 22. listopadu 2013

Zabbix pg_monz - PostgreSQL monitoring template

V minulosti jsem databázi PostgreSQL monitoroval pomocí Java nástroje PostBIX, což je jedna z variací projektu DBforBIX.  20.11.2013 mi přišel Zabbix newsletter, který informoval o novém postupu, jak monitorovat tuto oblíbenou databázi.

Projekt se jmenuje "PostgreSQL monitoring template for Zabbix (pg_monz)"a mají jej na svědomí dva japonští partneři Zabbix SIA - SRA OSS Inc. Japan, TIS Inc. Nástroj se dostal i na oficiální seznam 3rd Party Tools.

Tento nástroj  pg_monz využívá standartních nástrojů Zabbixu a PostgreSQL. Stěžejní je samotný Template, který implementuje též LLD - Low-level discovery. Zabbix pomocí dodaného scriptu zjistí jmenný seznam všech vytvořených databází. Pro dané db se po detekci názvů provádí monitoring jednotlivých db. Sezam monitorovaných položek je pěkně zdokumentován.


čtvrtek 27. června 2013

Metasploit db_nmap

Většina adminů někdy použila mnou oblíbený program nmap. Tento nástroj slouží ke scanování sítě a dokáže zjistit, jaké služby na kterém počítači běží. Pokud chceme výsledky scanu uložit a např. porovnávat v čase, je třeba použít db_nmap, což je program, který je součástí Frameworku Metasploit.

Metasploit je produktem firmy Rapid7, která tento nástroj tvoří a prodává. Je to program pro penetrační testy. Metasploit má několik verzí nebo spíše edicí. Placená verze umožňuje pravidelně aktualizovat databáze chyb případně i exploitů a funkcionalita je hodně rozsáhlá.

Pro naše potřeby programu db_nmap nám postačí  "Metasploit Framework - Free Open Source Development Platform", která je např. snadno instalovatelná ve FreeBSD jako port. Celý framework je postaven na jazyce Ruby.

Před samotnou instalací doporučuji instalovat Vámi preferovanou verzi databáze PostgreSQL.

cd /usr/ports/databases/postgresql92-server/ && make install clean

cd /usr/ports/security/metasploit && make install clean

Po instalaci je možné již pustit samotnou konzoli.

[root@fbsd ~]# msfconsole
Call trans opt: received. 2-19-98 13:24:18 REC:Loc

     Trace program: running

           wake up, Neo...
        the matrix has you
      follow the white rabbit.

          knock, knock, Neo.

                        (`.         ,-,
                        ` `.    ,;' /
                         `.  ,'/ .'
                          `. X /.'
                .-;--''--.._` ` (
              .'            /   `
             ,           ` '   Q '
             ,         ,   `._    \
          ,.|         '     `-.;_'
          :  . `  ;    `  ` --,.._;
           ' `    ,   )   .'
              `._ ,  '   /_
                 ; ,''-,;' ``-
                  ``-..__``--`

                             http://metasploit.pro


       =[ metasploit v4.6.2-1 [core:4.6 api:1.0]
+ -- --=[ 1103 exploits - 621 auxiliary - 178 post
+ -- --=[ 300 payloads - 29 encoders - 8 nops

[*] Processing /root/.msf4/msfconsole.rc for ERB directives.
resource (/root/.msf4/msfconsole.rc)> db_connect -y /usr/local/share/metasploit/config/database.yml
[*] Rebuilding the module cache in the background...
resource (/root/.msf4/msfconsole.rc)> workspace -a SmEjDiL

[*] Added workspace: SmEjDiL
msf >

Z ukázky je vidět, že konzoje již využívá databázi pro ukládání výsledků scanů. Velmi podrobný a snadno pochopiletný postup, jak inicializovat databázi je popsán zde. Snad jen poznámka dríve byla podpora více databázi MySQL, SQLite a ta byla ukončena a podporována je pouze PostgreSQL. Metasploit je též součástí Linuxové distribuce Backtrack linux, kde je možná i nějaká modifikovaná verze.

Můžeme začít scanovat do DB

msf > db_status
[*] postgresql connected to msf_database
msf > db_nmap 192.168.42.0/24


Příkazem hosts si vypíšeme jednotlive výsledky, např. takto.

msf > hosts -R 81.95.98.2 -c address,name,os_name,os_flavor,updated_at,

Hosts
=====

address     name                os_name  os_flavor  updated_at
-------     ----                -------  ---------  ----------
81.95.98.2  gds39d.active24.cz  Linux    2.6.X      2013-06-26 19:24:57 UTC

RHOSTS => 81.95.98.2


Příkazem services si vypíšeme objevené služby na daném hostu.

msf > services -R 81.95.98.2

Services
========

host        port  proto  name   state  info
----        ----  -----  ----   -----  ----
81.95.98.2  25    tcp    smtp   open   Postfix smtpd
81.95.98.2  80    tcp    http   open  
81.95.98.2  443   tcp    https  open  

RHOSTS => 81.95.98.2


Pokud nechceme používat jen nmap Metasploit disponuje např. celou řadou scaneru. Zajímá mě jaké verze Windows se v mé síti nacházejí. Pěkný návod jak nato je např. zde.

msf > use auxiliary/scanner/smb/smb_version
msf auxiliary(smb_version) > set RHOSTS 192.168.42.40-50
RHOSTS => 192.168.42.40-100
msf auxiliary(smb_version) > set THREADS 11
THREADS => 11
msf auxiliary(smb_version) > run


Výsledkem je např. toto.

msf> hosts -c address,os_name,os_flavor,os_sp,purpose

Hosts
=====

address        os_name            os_flavor            os_sp  purpose
-------        -------            ---------            -----  -------

192.168.42.40  Microsoft Windows  7 Professional 7601  b1     client
192.168.42.42  Microsoft Windows  XP                   SP3    client


V minulosti jsem si koupil tuto knihu, která je pro msf3, ale i tak se z ní dá hodně čerpat.

Bezpečnosti zdar :-)

pondělí 11. března 2013

Zabbix PostgreSQL

Pro dočasné monitorování mailserveru edu.mudk.cz jsem na byvalém serveru zprovoznil Zabbix pod aktuální verzí FreeBSD 9.1-RELEASE-p1. Zabbix jsem nyní chtěl vyzkoušet s databází PostgreSQL 9.2.

Instalace a konfigurace všech potřebných aplikací vychází z aktuálních FreeBSD portů.
U PostgreSQL jsem se rozhodl použít TABLESPACE. Obecně potřeba nejsou, ale chtěl jsem mít data Zabbixu oddělené od hlavní db.

Konfigrace Zabbixu s použitím PostgreSQL je obecně popsána zde.

psql template1
CREATE USER zabbix WITH ENCRYPTED PASSWORD '*****' NOCREATEDB NOCREATEUSER;


Vytvoříme a převlastníme adresář pro TABLESPACE.

mkdir -p /data/pgsql/zabbix && chown pgsql:pgsql /data/pgsql/zabbix

CREATE TABLESPACE zabbix OWNER zabbix LOCATION '/data/pgsql/zabbix';
CREATE DATABASE zabbix WITH OWNER = zabbix TABLESPACE = zabbix;


Rozbalíme si tarbal.

cd /tmp/  && tar xvzf /usr/ports/distfiles/zabbix-2.0.5.tar.gz
cd /tmp/zabbix-2.0.5/database/postgresql


Naimportujeme db schéma

cat schema.sql | psql -U zabbix zabbix  
cat images.sql | psql -U zabbix zabbix
cat data.sql | psql -U zabbix zabbix


Kompilace Zabbixu i PHP musí být nastavena s podporou PostgreSQL.