Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
tech:sql-01 [23/10/2025 17:28] – [PostgreSQL] LibertAdmintech:sql-01 [18/01/2026 16:23] (Version actuelle) – [Paquets installés] LibertAdmin
Ligne 20: Ligne 20:
 Ce serveur héberge donc les services : Ce serveur héberge donc les services :
  
-  * MySQL/MariaDB+  * MariaDB
   * PostgreSQL   * PostgreSQL
-  * Redis+  * Valkey
  
 ===== Configuration ===== ===== Configuration =====
Ligne 79: Ligne 79:
 Le paquet ''iptables-persistent'' doit avoir été installé pour conserver les modifications du pare-feu entre chaque redémarrage. Le paquet ''iptables-persistent'' doit avoir été installé pour conserver les modifications du pare-feu entre chaque redémarrage.
  
-Il est bien sûr extrêmement important de sécuriser SSH : interdire le login root avec mot de passe, utiliser de bons algorithmes de chiffrement, changer le port, n'autoriser qu'une IP distante (ou mieux, ne rien autoriser depuis internet et utiliser un VPN) et mettre en place un faux serveur SSH pour que les attaquants perdent leur temps à essayer de se connecter, sans vous faire perdre le vôtre (et ajouter un Fail2Ban évidemment). La recette reste secrète, désolé ! ;-) +Pour IPv4, nous n'avons besoin d'aucune règle, cette machine est uniquement accessible au réseau local.
- +
-Cela dit, pour information une configuration similaire à la suivante est en place : +
- +
-<code bash> +
-# /etc/ssh/sshd_config.d/liberta.conf +
- +
-# Common parameters: +
-Port <un_port> +
-Port <un_autre_port> +
-AcceptEnv LANG LC_*  +
-ChallengeResponseAuthentication no  +
-KbdInteractiveAuthentication no +
-PrintMotd no +
-PasswordAuthentication no +
-Subsystem sftp /usr/lib/openssh/sftp-server +
-UsePAM yes  +
-X11Forwarding no +
- +
-# Port <un_port> configuration for IPv4/IPv6: +
-Match Address="<adresse_ipv4_de_confiance>,127.0.0.0/8,<adresse_ipv6_de_confiance>,fd00::/8" LocalPort=<un_port> +
-    AllowUsers root <utilisateurice_de_confiance> +
- +
-# Port <un_autre_port> configuration for IPv4/IPv6: +
-Match LocalPort=<un_autre_port> +
-    AllowUsers <utilisateurice_de_confiance> +
-</code> +
- +
-Pour IPv4, l'hyperviseur s'occupe déjà de tout router et rediriger, nous n'avons besoin d'aucune règle.+
  
 En revanche, nous disposons d'une IPv6 routable et exposée sur internet ! Nous devons donc avoir des règles de pare-feu actives. Dans ''/etc/iptables-persistent/rules.v6'' : En revanche, nous disposons d'une IPv6 routable et exposée sur internet ! Nous devons donc avoir des règles de pare-feu actives. Dans ''/etc/iptables-persistent/rules.v6'' :
Ligne 137: Ligne 109:
 ==== Paquets installés ==== ==== Paquets installés ====
  
-Nous utilisons le dépôts ''pgdg'' pour diposer des paquets officielsde PostgreSQL, dans ''/etc/apt/sources.list.d/pgdg.list'' :+Nous utilisons le dépôts ''pgdg'' pour disposer des paquets officiels de PostgreSQL, dans ''/etc/apt/sources.list.d/pgdg.sources'' :
  
 <code> <code>
-deb http://apt.postgresql.org/pub/repos/apt bookworm-pgdg main+deb http://apt.postgresql.org/pub/repos/apt trixie-pgdg main
 </code> </code>
  
Ligne 161: Ligne 133:
 bind9-libs:amd64 bind9-libs:amd64
 bsdextrautils bsdextrautils
 +bsd-mailx
 bsdutils bsdutils
 busybox busybox
Ligne 194: Ligne 167:
 doc-debian doc-debian
 dpkg dpkg
 +dracut-install
 e2fsprogs e2fsprogs
 eject eject
 emacsen-common emacsen-common
 ethtool ethtool
 +exim4-base
 +exim4-config
 +exim4-daemon-light
 exuberant-ctags exuberant-ctags
 fail2ban fail2ban
Ligne 203: Ligne 180:
 file file
 findutils findutils
 +firmware-ath9k-htc
 +firmware-carl9170
 firmware-linux-free firmware-linux-free
 fontconfig-config fontconfig-config
 fonts-dejavu-core fonts-dejavu-core
 +fonts-dejavu-mono
 galera-4 galera-4
 gawk gawk
 gcc-10-base:amd64 gcc-10-base:amd64
-gcc-12-base:amd64+gcc-14-base:amd64
 gcc-8-base:amd64 gcc-8-base:amd64
 gdal-data gdal-data
-gdal-plugins+gdal-plugins:amd64
 gdbm-l10n gdbm-l10n
 gettext-base gettext-base
Ligne 242: Ligne 222:
 init init
 initramfs-tools initramfs-tools
 +initramfs-tools-bin
 initramfs-tools-core initramfs-tools-core
 init-system-helpers init-system-helpers
Ligne 262: Ligne 243:
 laptop-detect laptop-detect
 less less
 +libabsl20240722:amd64
 libacl1:amd64 libacl1:amd64
 libaec0:amd64 libaec0:amd64
Ligne 268: Ligne 250:
 libapt-inst2.0:amd64 libapt-inst2.0:amd64
 libapt-pkg5.0:amd64 libapt-pkg5.0:amd64
-libapt-pkg6.0:amd64+libapt-pkg7.0:amd64
 libargon2-1:amd64 libargon2-1:amd64
-libarmadillo11 +libarmadillo14 
-libarpack2:amd64+libarpack2t64:amd64
 libaspell15:amd64 libaspell15:amd64
-libassuan0:amd64+libassuan9:amd64
 libatomic1:amd64 libatomic1:amd64
 libattr1:amd64 libattr1:amd64
 libaudit1:amd64 libaudit1:amd64
 libaudit-common libaudit-common
 +libavif16:amd64
 libblas3:amd64 libblas3:amd64
 libblkid1:amd64 libblkid1:amd64
Ligne 290: Ligne 273:
 libcap-ng0:amd64 libcap-ng0:amd64
 libc-bin libc-bin
-libcbor0.8:amd64 +libcbor0.10:amd64 
-libcfitsio10:amd64+libcfitsio10t64:amd64
 libcgi-fast-perl libcgi-fast-perl
 libcgi-pm-perl libcgi-pm-perl
Ligne 301: Ligne 284:
 libcrypt1:amd64 libcrypt1:amd64
 libcryptsetup12:amd64 libcryptsetup12:amd64
-libcurl3-gnutls:amd64 +libcurl3t64-gnutls:amd64 
-libcurl4:amd64 +libcurl4t64:amd64 
-libdav1d6:amd64 +libdav1d7:amd64 
-libdaxctl1:amd64 +libdb5.3t64:amd64
-libdb5.3:amd64+
 libdbd-mysql-perl:amd64 libdbd-mysql-perl:amd64
 libdbd-pg-perl libdbd-pg-perl
Ligne 317: Ligne 299:
 libdns-export1104 libdns-export1104
 libedit2:amd64 libedit2:amd64
-libefiboot1:amd64 +libefiboot1t64:amd64 
-libefivar1:amd64 +libefivar1t64:amd64 
-libelf1:amd64+libelf1t64:amd64
 libencode-locale-perl libencode-locale-perl
 libestr0:amd64 libestr0:amd64
-libevent-core-2.1-7:amd64+libevent-2.1-7t64:amd64 
 +libevent-core-2.1-7t64:amd64
 libexpat1:amd64 libexpat1:amd64
-libext2fs2:amd64+libext2fs2t64:amd64
 libfastjson4:amd64 libfastjson4:amd64
-libfcgi0ldbl:amd64+libfcgi0t64:amd64
 libfcgi-bin libfcgi-bin
 libfcgi-perl libfcgi-perl
Ligne 333: Ligne 316:
 libffi8:amd64 libffi8:amd64
 libfido2-1:amd64 libfido2-1:amd64
-libfile-find-rule-perl+libfile-fcntllock-perl
 libfontconfig1:amd64 libfontconfig1:amd64
 libfreetype6:amd64 libfreetype6:amd64
 libfreexl1:amd64 libfreexl1:amd64
 libfstrm0:amd64 libfstrm0:amd64
-libfuse2:amd64 +libfuse3-4:amd64 
-libfyba0:amd64+libfyba0t64:amd64 
 +libgav1-1:amd64
 libgc1:amd64 libgc1:amd64
 libgcc1:amd64 libgcc1:amd64
 libgcc-s1:amd64 libgcc-s1:amd64
 libgcrypt20:amd64 libgcrypt20:amd64
-libgdal32 +libgdal36:amd64 
-libgdbm6:amd64 +libgdbm6t64:amd64 
-libgdbm-compat4:amd64 +libgdbm-compat4t64:amd64 
-libgeos3.11.1:amd64 +libgeos3.13.1:amd64 
-libgeos-c1v5:amd64+libgeos-c1t64:amd64
 libgeotiff5:amd64 libgeotiff5:amd64
 libgfortran5:amd64 libgfortran5:amd64
 libgif7:amd64 libgif7:amd64
-libglib2.0-0:amd64+libglib2.0-0t64:amd64
 libglib2.0-data libglib2.0-data
 libgmp10:amd64 libgmp10:amd64
-libgnutls30:amd64+libgnutls30t64:amd64 
 +libgnutls-dane0t64:amd64
 libgpg-error0:amd64 libgpg-error0:amd64
 +libgpgme11t64:amd64
 +libgpgmepp6t64:amd64
 libgpm2:amd64 libgpm2:amd64
 libgssapi-krb5-2:amd64 libgssapi-krb5-2:amd64
-libhdf4-0-alt +libhdf4-0-alt:amd64 
-libhdf5-103-1:amd64 +libhdf5-310:amd64 
-libhdf5-hl-100:amd64+libhdf5-hl-310:amd64
 libheif1:amd64 libheif1:amd64
 +libheif-plugin-aomenc:amd64
 +libheif-plugin-dav1d:amd64
 +libheif-plugin-libde265:amd64
 +libheif-plugin-x265:amd64
 libhogweed4:amd64 libhogweed4:amd64
-libhogweed6:amd64+libhogweed6t64:amd64
 libhtml-parser-perl:amd64 libhtml-parser-perl:amd64
 libhtml-tagset-perl libhtml-tagset-perl
Ligne 370: Ligne 361:
 libhttp-date-perl libhttp-date-perl
 libhttp-message-perl libhttp-message-perl
-libicu72:amd64+libicu76:amd64
 libidn11:amd64 libidn11:amd64
 +libidn12:amd64
 libidn2-0:amd64 libidn2-0:amd64
 +libio-compress-brotli-perl
 libio-html-perl libio-html-perl
-libio-pty-perl 
 libip4tc0:amd64 libip4tc0:amd64
 libip4tc2:amd64 libip4tc2:amd64
 libip6tc0:amd64 libip6tc0:amd64
 libip6tc2:amd64 libip6tc2:amd64
-libipc-run-perl 
-libiptc0:amd64 
 libisc-export1100:amd64 libisc-export1100:amd64
 libjbig0:amd64 libjbig0:amd64
Ligne 392: Ligne 382:
 libkeyutils1:amd64 libkeyutils1:amd64
 libklibc:amd64 libklibc:amd64
-libkmlbase1:amd64 +libkmlbase1t64:amd64 
-libkmldom1:amd64 +libkmldom1t64:amd64 
-libkmlengine1:amd64+libkmlengine1t64:amd64
 libkmod2:amd64 libkmod2:amd64
 libkrb5-3:amd64 libkrb5-3:amd64
Ligne 400: Ligne 390:
 libksba8:amd64 libksba8:amd64
 liblapack3:amd64 liblapack3:amd64
 +liblastlog2-2:amd64
 liblcms2-2:amd64 liblcms2-2:amd64
-libldap-2.5-0:amd64+libldap2:amd64
 libldap-common libldap-common
 liblerc4:amd64 liblerc4:amd64
-libllvm16:amd64 
 libllvm19:amd64 libllvm19:amd64
 liblmdb0:amd64 liblmdb0:amd64
 liblocale-gettext-perl liblocale-gettext-perl
 +liblockfile1:amd64
 liblockfile-bin liblockfile-bin
 liblognorm5:amd64 liblognorm5:amd64
 +liblsof0
 libltdl7:amd64 libltdl7:amd64
 liblwp-mediatypes-perl liblwp-mediatypes-perl
Ligne 416: Ligne 408:
 liblzma5:amd64 liblzma5:amd64
 liblzo2-2:amd64 liblzo2-2:amd64
-libmagic1:amd64+libmagic1t64:amd64
 libmagic-mgc libmagic-mgc
 libmariadb3:amd64 libmariadb3:amd64
 libmaxminddb0:amd64 libmaxminddb0:amd64
 libmd0:amd64 libmd0:amd64
-libminizip1:amd64+libminizip1t64:amd64
 libmnl0:amd64 libmnl0:amd64
 libmount1:amd64 libmount1:amd64
Ligne 427: Ligne 419:
 libncurses6:amd64 libncurses6:amd64
 libncursesw6:amd64 libncursesw6:amd64
-libndctl6:amd64 +libnetcdf22:amd64
-libnetcdf19:amd64+
 libnetfilter-conntrack3:amd64 libnetfilter-conntrack3:amd64
 libnettle6:amd64 libnettle6:amd64
-libnettle8:amd64+libnettle8t64:amd64
 libnewt0.52:amd64 libnewt0.52:amd64
 libnfnetlink0:amd64 libnfnetlink0:amd64
Ligne 437: Ligne 428:
 libnftnl11:amd64 libnftnl11:amd64
 libnghttp2-14:amd64 libnghttp2-14:amd64
-libnl-3-200:amd64 +libnghttp3-9:amd64 
-libnl-genl-3-200:amd64 +libngtcp2-16:amd64 
-libnpth0:amd64+libngtcp2-crypto-gnutls8:amd64 
 +libnpth0t64:amd64
 libnsl2:amd64 libnsl2:amd64
 libnspr4:amd64 libnspr4:amd64
Ligne 447: Ligne 439:
 libnss-systemd:amd64 libnss-systemd:amd64
 libnuma1:amd64 libnuma1:amd64
-libnumber-compare-perl 
 libodbc2:amd64 libodbc2:amd64
 +libodbccr2:amd64
 libodbcinst2:amd64 libodbcinst2:amd64
-libogdi4.1+libogdi4.1:amd64
 libopenjp2-7:amd64 libopenjp2-7:amd64
 libp11-kit0:amd64 libp11-kit0:amd64
Ligne 458: Ligne 450:
 libpam-runtime libpam-runtime
 libpam-systemd:amd64 libpam-systemd:amd64
-libpcap0.8:amd64+libpcap0.8t64:amd64
 libpci3:amd64 libpci3:amd64
 libpcre2-8-0:amd64 libpcre2-8-0:amd64
 +libpcre2-posix3:amd64
 libpcre3:amd64 libpcre3:amd64
-libperl5.36:amd64+libperl5.40:amd64
 libpipeline1:amd64 libpipeline1:amd64
-libpmem1:amd64 +libpng16-16t64:amd64 
-libpng16-16:amd64 +libpoppler147:amd64
-libpoppler126:amd64+
 libpopt0:amd64 libpopt0:amd64
 libpq5:amd64 libpq5:amd64
Ligne 473: Ligne 465:
 libproj25:amd64 libproj25:amd64
 libprotobuf-c1:amd64 libprotobuf-c1:amd64
-libpsl5:amd64 +libpsl5t64:amd64 
-libpython3.11-minimal:amd64 +libpython3.13-minimal:amd64 
-libpython3.11-stdlib:amd64+libpython3.13-stdlib:amd64
 libpython3-stdlib:amd64 libpython3-stdlib:amd64
 libqhull-r8.0:amd64 libqhull-r8.0:amd64
-libquadmath0:amd64 +librav1e0.7:amd64 
-libreadline8:amd64+libreadline8t64:amd64
 libregexp-ipv6-perl libregexp-ipv6-perl
 librtmp1:amd64 librtmp1:amd64
Ligne 494: Ligne 486:
 libsepol1:amd64 libsepol1:amd64
 libsepol2:amd64 libsepol2:amd64
 +libsharpyuv0:amd64
 libsigsegv2:amd64 libsigsegv2:amd64
 libslang2:amd64 libslang2:amd64
Ligne 499: Ligne 492:
 libsnappy1v5:amd64 libsnappy1v5:amd64
 libsodium23:amd64 libsodium23:amd64
-libspatialite7:amd64+libspatialite8t64:amd64
 libsqlite3-0:amd64 libsqlite3-0:amd64
 libss2:amd64 libss2:amd64
-libssh2-1:amd64+libssh2-1t64:amd64
 libssl1.1:amd64 libssl1.1:amd64
-libssl3:amd64+libssl3t64:amd64
 libstdc++6:amd64 libstdc++6:amd64
-libsuperlu5:amd64+libsvtav1enc2:amd64
 libsystemd0:amd64 libsystemd0:amd64
 libsystemd-shared:amd64 libsystemd-shared:amd64
Ligne 513: Ligne 506:
 libterm-readkey-perl libterm-readkey-perl
 libtext-charwidth-perl:amd64 libtext-charwidth-perl:amd64
-libtext-glob-perl 
 libtext-iconv-perl:amd64 libtext-iconv-perl:amd64
-libtext-template-perl 
 libtext-wrapi18n-perl libtext-wrapi18n-perl
 libtiff6:amd64 libtiff6:amd64
 libtimedate-perl libtimedate-perl
 libtinfo6:amd64 libtinfo6:amd64
-libtirpc3:amd64+libtirpc3t64:amd64
 libtirpc-common libtirpc-common
 libtypes-serialiser-perl libtypes-serialiser-perl
 libuchardet0:amd64 libuchardet0:amd64
 libudev1:amd64 libudev1:amd64
 +libunbound8:amd64
 libunistring2:amd64 libunistring2:amd64
 +libunistring5:amd64
 +liburcu8t64:amd64
 liburing2:amd64 liburing2:amd64
 liburiparser1:amd64 liburiparser1:amd64
Ligne 531: Ligne 525:
 libusb-1.0-0:amd64 libusb-1.0-0:amd64
 libuuid1:amd64 libuuid1:amd64
-libuv1:amd64+libuv1t64:amd64
 libwebp7:amd64 libwebp7:amd64
 libwrap0:amd64 libwrap0:amd64
 +libwtmpdb0:amd64
 libx11-6:amd64 libx11-6:amd64
 libx11-data libx11-data
-libx265-199:amd64+libx265-215:amd64
 libxau6:amd64 libxau6:amd64
 libxcb1:amd64 libxcb1:amd64
 libxdmcp6:amd64 libxdmcp6:amd64
-libxerces-c3.2:amd64+libxerces-c3.2t64:amd64
 libxext6:amd64 libxext6:amd64
 libxml2:amd64 libxml2:amd64
Ligne 547: Ligne 542:
 libxtables12:amd64 libxtables12:amd64
 libxxhash0:amd64 libxxhash0:amd64
 +libyuv0:amd64
 libz3-4:amd64 libz3-4:amd64
 libzstd1:amd64 libzstd1:amd64
 linux-base linux-base
-linux-image-6.1.0-39-amd64 +linux-image-6.1.0-42-amd64 
-linux-image-6.1.0-40-amd64+linux-image-6.12.63+deb13-amd64
 linux-image-amd64 linux-image-amd64
 +linux-sysctl-defaults
 locales locales
 login login
 +login.defs
 logrotate logrotate
 logsave logsave
Ligne 595: Ligne 593:
 openssh-sftp-server openssh-sftp-server
 openssl openssl
 +openssl-provider-legacy
 os-prober os-prober
 passwd passwd
Ligne 602: Ligne 601:
 perl-base perl-base
 perl-modules-5.36 perl-modules-5.36
 +perl-modules-5.40
 pg-activity pg-activity
 pinentry-curses pinentry-curses
 poppler-data poppler-data
 postgis postgis
-postgis-doc 
 postgresql postgresql
-postgresql-17 
-postgresql-17-rum 
 postgresql-18 postgresql-18
 postgresql-18-jit postgresql-18-jit
-postgresql-client-17 
 postgresql-client-18 postgresql-client-18
 postgresql-client-common postgresql-client-common
 postgresql-common postgresql-common
-postgresql-common-dev 
-postgresql-contrib 
 powermgmt-base powermgmt-base
 procps procps
Ligne 626: Ligne 620:
 pv pv
 python3 python3
-python3.11 +python3.13 
-python3.11-minimal+python3.13-minimal
 python3-apt python3-apt
 python3-attr python3-attr
 +python3-autocommand
 +python3-bcrypt
 python3-blessed python3-blessed
 python3-certifi python3-certifi
Ligne 639: Ligne 635:
 python3-debian python3-debian
 python3-debianbts python3-debianbts
-python3-httplib2 
 python3-humanize python3-humanize
 python3-idna python3-idna
 +python3-inflect
 +python3-jaraco.context
 +python3-jaraco.functools
 +python3-jaraco.text
 python3-minimal python3-minimal
 +python3-more-itertools
 python3-pkg-resources python3-pkg-resources
 python3-psutil python3-psutil
-python3-psycopg2 +python3-psycopg 
-python3-pycurl+python3-psycopg-c 
 +python3-pyasyncore
 python3-pyinotify python3-pyinotify
 python3-pymysql python3-pymysql
-python3-pyparsing 
-python3-pysimplesoap 
 python3-reportbug python3-reportbug
 python3-requests python3-requests
-python3-six+python3-setuptools
 python3-systemd python3-systemd
 +python3-typeguard
 +python3-typing-extensions
 python3-urllib3 python3-urllib3
 python3-wcwidth python3-wcwidth
 +python3-zipp
 python-apt-common python-apt-common
 python-is-python3 python-is-python3
 qemu-guest-agent qemu-guest-agent
 readline-common readline-common
-redis 
-redis-server 
-redis-tools 
 reportbug reportbug
 rpcbind rpcbind
Ligne 669: Ligne 668:
 rsyslog rsyslog
 runit-helper runit-helper
 +screen
 sed sed
 sensible-utils sensible-utils
 shared-mime-info shared-mime-info
 socat socat
 +sqv
 ssl-cert ssl-cert
 sysstat sysstat
 systemd systemd
 +systemd-cryptsetup
 systemd-sysv systemd-sysv
 systemd-timesyncd systemd-timesyncd
Ligne 691: Ligne 693:
 unixodbc-common unixodbc-common
 usbutils usbutils
-usrmerge 
 util-linux util-linux
 util-linux-extra util-linux-extra
 util-linux-locales util-linux-locales
 +valkey-server
 +valkey-tools
 vim vim
 vim-common vim-common
Ligne 729: Ligne 732:
 ==== Sauvegardes des bases ==== ==== Sauvegardes des bases ====
  
 +La plus critique et souvent la plus négligée des tâches est souvent cette partie, étrangement (Liberta en fait aussi partie et a déjà eu quelques sueurs froides par le passé).
 +
 +Nous utiliserons les outils standards fournis par MariaDB et PostgreSQL, bien plus fiables et adaptés que si nous avions compté sur nos partages ZFS (entre les contraintes de NFS et la multitude de paramètres de ZFS pour s'adapter au stockage de bases de données, nous avons choisi le plus simple et le plus fiable).
 +
 +Ici les prénoms ont été modifiés pour préserver leur confidentialité :)
 === MySQL/MariaDB === === MySQL/MariaDB ===