MySQL

This chapter contains an example of a basic Fudo PAM configuration, to monitor SQL queries to a remote MySQL database server.

In this scenario, the user connects to a MySQL database using individual login and password. When establishing the connection with the remote server, Fudo PAM substitutes the login and the password with the previously defined values: root/password (authorization modes are described in the User authorization modes section).

../../_images/quickstart_overview_mysql.png

Warning

Please note that the MySQL server caching_sha2_password plugin isn’t supported by Fudo PAM. Supportable MySQL plugins by Fudo PAM are mysql_native_password and mysql_old_password. Server plugin should be set to mysql_native_password in /etc/mysql/mysql.conf.d/mysqld.cnf and a User object is created with mysql_native_password plugin.

Prerequisites

The following description assumes that the system has been already initiated. For more information on the initiation procedure refer to the System initiation topic.


Configuration

../../_images/data_modeling1.png

Adding a server

Server is a definition of the IT infrastructure resource, which can be accessed over one of the specified protocols.


  1. Select Management > Servers.
  2. Click Add and select Static server.
  1. Provide essential configuration parameters:
Parameter Value
General  
Name mysql_server
Description fail
Blocked fail
Protocol MySQL
Bind address Any
   
Permissions  
Granted users fail
   
Server addresses  
IP address 10.0.1.35
Port 3306
  1. Click Save.

Adding a user

User defines a subject entitled to connect to servers within monitored IT infrastructure. Detailed object definition (i.e. unique login and domain combination, full name, email address etc.) enables precise accountability of user actions when login and password are substituted with a shared account login credentials.


  1. Select Management > Users.
  2. Click Add.
  3. Provide essential user information:
Parameter Value
General  
Login john_smith
Fudo domain fail
Blocked fail
Account validity Indefinite
Role user
Preferred language English
Safes fail
Full name John Smith
Email john@smith.com
Organization fail
Phone fail
AD Domain fail
LDAP Base fail
   
Permissions  
Granted users fail
   
Authentication  
Authentication failures fail
Enforce static password complexity fail
Type Password
Password john
Repeat password john
  1. Click Save.

Adding a listener

Listener determines server connection mode (proxy, gateway, transparent, bastion) as well as its specifics.


  1. Select Management > Listeners.
  2. Click Add.
  1. Provide essential configuration parameters:
Parameter Value
General  
Name mysql_listener
Blocked fail
Protocol Mysql
   
Permissions  
Granted users fail
   
Connection  
Mode proxy
Local address 10.0.150.151
Port 3306
  1. Click Save.

Adding an account

Account defines the privileged account existing on the monitored server. It specifies the actual login credentials, user authentication mode: anonymous (without user authentication), regular (with login credentials substitution) or forward (with login and password forwarding); password changing policy as well as the password changer itself.


  1. Select Management > Accounts.
  2. Click Add.
  1. Provide essential configuration parameters:
Parameter Value
General  
Name admin_mysql_server
Blocked fail
Type regular
Session recording all
Notes fail
   
Data retention  
Override global retention settings fail
Delete session data after 61 days
   
Permissions  
Granted users fail
   
Server  
Server mysql_server
   
Credentials  
Domain fail
Login root
Replace secret with with password
Password password
Repeat password password
Password change policy Static, without restrictions
  1. Click Save.

Defining a safe

Safe directly regulates user access to monitored servers. It specifies available protocols’ features, policies and other details concerning users and servers relations.


  1. Select Management > Safes.
  2. Click Add.
  1. Provide essential configuration parameters:
Parameter Value
General  
Name mysql_safe
Blocked fail
Notifications fail
Login reason fail
Require approval fail
Policies fail
Note access No access
   
Protocol functionality  
RDP fail
SSH fail
VNC fail
  1. Select Users tab.
  2. Click Add user.
  3. Find John and click ..
  4. Click OK.
  5. Select Accounts tab.
  6. Click Add account.
  7. Find the admin_mysql_server object and click ..
  8. Click OK.
  9. Click in the Listeners column.
  10. Find the mysql_listener object and click ..
  11. Click OK.
  12. Click Save.

Establishing connection with a MySQL database

  1. Launch a command line interface client.
  2. Enter mysql -h 10.0.150.151 -u john_smith -p, to connect to the database server.
  3. Enter the user’s password.
../../_images/mysql_connect.png
  1. Continue browsing the database contents using SQL queries.

Viewing user session


  1. Open a web browser and go to the Fudo PAM administration page.
  2. Enter user login and password to log in to Fudo PAM administration panel.
  1. Select Management > Sessions.
  2. Find John Smith’s session and click i.
../../_images/mysql_ongoing.png ../../_images/player_mysql_session.png

Related topics: