<!-- 11 -->
<div class="img zoomable">
  <img src="/static/source_imgs/postgresql/post_4/psql_conf.webp" alt="" style="height: 350px; width: auto;">
</div>
<p>
  Tenemos que editar el archivo <b>postgresql.conf</b> el cual está en la ruta <b>/etc/postgresql/<a class="link"
      data-bs-toggle="modal" data-bs-target="#psql_version">[psql_version]</a>/main/</b> para ello ejecutamos el
  comando:
</p>

{% set i %}
sudo nano /etc/postgresql/16/main/postgresql.conf
{% endset %}
{% with codigo=i.strip() %}{% include 'components/copy-code.html' %}{% endwith %}

<p>
  El archivo es muy extenso, con muchas configuraciones, sin embargo la modicación que le harémos está en la primera
  sección llamada CONNECTIONS AND AUTHENTICATION
</p>

{% set ii %}
#------------------------------------------------------------------------------
# CONNECTIONS AND AUTHENTICATION
#------------------------------------------------------------------------------
# - Connection Settings -
# listen_addresses = 'localhost'                  # what IP address(es) to listen on;
{% endset %}
{% with codigo=ii.strip() %}{% include 'components/copy-code.html' %}{% endwith %}

<p>
  Donde dice:
</p>

{% set iii %}
listen_addresses = 'localhost'          # what IP address(es) to listen on;
{% endset %}
{% with codigo=iii.strip() %}{% include 'components/copy-code.html' %}{% endwith %}

<p>
  Debes cambiar el localhost por un *, ejemplo:
</p>

{% set iv %}
listen_addresses = '*'                  # what IP address(es) to listen on;
{% endset %}
{% with codigo=iv.strip() %}{% include 'components/copy-code.html' %}{% endwith %}

<p>
  En el editor de nano guardamos oprimiendo la combinación de teclas <b>Ctrl + s</b> y cerramos con la combinación de
  teclas <b>Ctrl + x</b>, luego procedemos a reiniciar el servicio de postgres con el comando:
</p>

{% set v %}
sudo service postgresql restart
{% endset %}
{% with codigo=v.strip() %}{% include 'components/copy-code.html' %}{% endwith %}

<p>
  En los pasos anteriores logramos hacer que postgresql acepte peticiones de cualquier punto de nuestra red local, el
  <a class="link" data-bs-toggle="modal" data-bs-target="#puerto">puerto</a> por default por el que escucha las
  peticiones es el 5432, sin embargo a pesar de haber aplicado los ajustes puede que la maquina en este caso linux o
  wsl no tengan el puerto abierto por lo tanto ahora abriremos el puerto para hacer que las peticiones si llegue, para
  ello ejecutamos el siguiente comando:
</p>

{% set vi %}
sudo ufw allow 5432/tcp
{% endset %}
{% with codigo=vi.strip() %}{% include 'components/copy-code.html' %}{% endwith %}

<div class="alert alert-warning" role="alert">
  <i class="bi bi-exclamation-octagon-fill"></i> En caso de que te haya dado un error del comando anterior quiere decir
  que no tienes instalado ufw, por lo tanto debes instalarlo y ejecutar el comando anterior, el comando de instalación
  es:

{% set vii %}
sudo apt-get install ufw
{% endset %}
{% with codigo=vii.strip() %}{% include 'components/copy-code.html' %}{% endwith %}

</div>
<div class="alert alert-danger" role="alert">
  <i class="bi bi-exclamation-octagon-fill"></i> En caso de que ya no quieras permitir peticiones en la red local debes
  modificar el archivo de configuración a como estaba con base en los pasos mostrados anteriormente, y debes cerrar el
  puerto 5432, el comando es:
  
{% set viii %}
sudo ufw delete allow 5432/tcp
{% endset %}
{% with codigo=viii.strip() %}{% include 'components/copy-code.html' %}{% endwith %}

</div>
<p>
  Una vez hecho todo lo anterior ya podras hacer peticiones a tu servidor o equipo donde esta almacenada la base de
  datos.
</p>