-
-
Notifications
You must be signed in to change notification settings - Fork 129
Adding a PostgreSQL target
This feature is available in v0.11+
This page explains the process of adding a new PostgreSQL target host to Warpgate and allowing users to connect to it.
Currently, Warpgate can connect to PostgreSQL servers with a username/password using md5
and password
(plaintext) auth mode.
As a PostgreSQL protocol server, Warpgate only allows secure (TLS) connections and uses password
auth mode.
Enable the PostgreSQL protocol in your config file (default: /etc/warpgate.yaml
) if you didn't do so during the initial setup:
+ postgres:
+ enable: true
+ certificate: /var/lib/warpgate/tls.certificate.pem
+ key: /var/lib/warpgate/tls.key.pem
You can reuse the same certificate and key that are used for the HTTP listener.
Log into the Warpgate admin UI and navigate to Config
> Targets
> Add target
and give the new PostgreSQL target a name:
![Screenshot 2024-10-08 at 20 48 09](https://private-user-images.githubusercontent.com/161476/374686745-216dc8e7-0b26-4ced-837a-75d3b0ca08bd.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMzgyMzcsIm5iZiI6MTczOTAzNzkzNywicGF0aCI6Ii8xNjE0NzYvMzc0Njg2NzQ1LTIxNmRjOGU3LTBiMjYtNGNlZC04MzdhLTc1ZDNiMGNhMDhiZC5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwOFQxODA1MzdaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT01OTI0OWI4YWMzYWJkNWY4NzI0OGQ2ZTQwYzI1NTU5MDk2ZTk5OWFkMjJhY2ZmYTc1ZTBiYmI5MWFkZGU3ZWRiJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.68A4T89401Ksd0_qggIAlIon-Q0fCFlpgGxDo7yAhwc)
Fill out the configuration:
![Screenshot 2024-10-08 at 20 48 54](https://private-user-images.githubusercontent.com/161476/374686961-0201e348-06cc-416a-baf6-a8cfbe7620f0.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMzgyMzcsIm5iZiI6MTczOTAzNzkzNywicGF0aCI6Ii8xNjE0NzYvMzc0Njg2OTYxLTAyMDFlMzQ4LTA2Y2MtNDE2YS1iYWY2LWE4Y2ZiZTc2MjBmMC5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwOFQxODA1MzdaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT0xMzJjYzA1YTFjZDc1YjQ0OTU0MGY1MTI3YzA5ZjBiOTdlZTE4OGEwODUwNjM3Mjc4OWM1NmQ0MTJjZjgxYWQwJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.NYbug7s6aHo1SHzQbio7tVX2CqRu5C94cexddZG3vrc)
The target should show up on the Warpgate's homepage:
![Screenshot 2024-10-08 at 20 51 01](https://private-user-images.githubusercontent.com/161476/374687629-e80d280a-e4a9-49ca-8c50-5cbad81d536d.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMzgyMzcsIm5iZiI6MTczOTAzNzkzNywicGF0aCI6Ii8xNjE0NzYvMzc0Njg3NjI5LWU4MGQyODBhLWU0YTktNDljYS04YzUwLTVjYmFkODFkNTM2ZC5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwOFQxODA1MzdaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1jNDU4ZTQ0MjhmNGNhOTMyYmUwYTg4NWE3MzlkNmNiODgwYWJkNTNlNmY2M2FiMjk2NmRmMzVjOGFmNzc1MWQwJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.46E7d61LOAPhVz04orW8DIuFfaAvZKwm3G8YOWpQcJs)
Users will be able to click the entry to obtain connection instructions:
![Screenshot 2024-10-08 at 20 51 16](https://private-user-images.githubusercontent.com/161476/374687687-59c8aad3-dedc-4596-af69-94b4c4bc7abf.png?jwt=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3MzkwMzgyMzcsIm5iZiI6MTczOTAzNzkzNywicGF0aCI6Ii8xNjE0NzYvMzc0Njg3Njg3LTU5YzhhYWQzLWRlZGMtNDU5Ni1hZjY5LTk0YjRjNGJjN2FiZi5wbmc_WC1BbXotQWxnb3JpdGhtPUFXUzQtSE1BQy1TSEEyNTYmWC1BbXotQ3JlZGVudGlhbD1BS0lBVkNPRFlMU0E1M1BRSzRaQSUyRjIwMjUwMjA4JTJGdXMtZWFzdC0xJTJGczMlMkZhd3M0X3JlcXVlc3QmWC1BbXotRGF0ZT0yMDI1MDIwOFQxODA1MzdaJlgtQW16LUV4cGlyZXM9MzAwJlgtQW16LVNpZ25hdHVyZT1iN2ZkMjMwZGNlN2U1N2E3MmIzYWQ5NWI5ZDJlZGMxYjg3MThhNzAyNDIwOGM4ZTk1ZWI0MWE2MzlkYWU4MmMzJlgtQW16LVNpZ25lZEhlYWRlcnM9aG9zdCJ9.UvydLuAAko2hQtsePgFXSAagJdzrM_cUrWJDBoX_nk8)
You can now use any PostgreSQL client applications to connect through Warpgate with the following settings:
- Host: the Warpgate host
- Port: the Warpgate PostgreSQL port (default: 55432)
- Username:
admin#<target-name>
oradmin:<target-name>
, in this example:admin#db1
- Password: your Warpgate admin password
- TLS: enabled
- Cleartext password authentication: allowed
If your client uses a database URL, use: postgresql://<username>#<target>:<password>@<warpgate host>:<warpgate postgresql port>?sslmode=require
While your PostgreSQL session is running, you'll be able to see its status in the Admin UI, including the query log:
![image](https://user-images.githubusercontent.com/161476/179948103-7d7f84f7-68a0-40c3-be1c-60892a7f0ace.png)