- Ajout des pfx
This commit is contained in:
parent
61ce577f0c
commit
9a43025037
50
TODO.md
50
TODO.md
|
|
@ -1,20 +1,46 @@
|
|||
BUG SMTP PROXMOX
|
||||
|
||||
# TODO
|
||||
ajout l install de net-tools
|
||||
|
||||
## Finir JELLYFIN
|
||||
>> BUG des series dans le nouveau jellyfin
|
||||
>> VOIR LE PORT HTTPS
|
||||
>> VERIF LE CERTIFICAT
|
||||
|
||||
## Passer à ZABBIX
|
||||
> mettre le script
|
||||
> mettre les infos dans le read me pour l install du depart
|
||||
|
||||
> config Proxmox (dl le template)
|
||||
>
|
||||
> config ndv
|
||||
>
|
||||
> config gita
|
||||
>
|
||||
> config ca
|
||||
|
||||
|
||||
---------------------------
|
||||
# INFOS
|
||||
## system
|
||||
> /etc/ssl/wildcard
|
||||
Ajouter les infos pour ajouter le path du ssl
|
||||
|
||||
# PROXMOX
|
||||
changer le pass
|
||||
> setcap 'cap_net_bind_service=+ep' /usr/lib/jellyfin/bin/jellyfin
|
||||
> debloquerr les ports sous 1024 pour un user non root
|
||||
## PROXMOX
|
||||
> changer le pass
|
||||
pct exec 105 -- passwd root
|
||||
aller sur la vm
|
||||
pct enter 105
|
||||
|
||||
nano /etc/pve/lxc/104.conf
|
||||
> nano /etc/pve/lxc/104.conf
|
||||
mount lxc
|
||||
pct set ID -mp0 /mnt/synology_series,mp=/srv/media/series
|
||||
pct set 104 -mp1 /mnt/synology_films,mp=/srv/media/films
|
||||
|
||||
redemarer
|
||||
> redemarer
|
||||
pct stop 104
|
||||
pct start 104
|
||||
----------------------------------------------------------
|
||||
|
|
@ -22,19 +48,15 @@ pct start 104
|
|||
|
||||
|
||||
|
||||
# SERVER
|
||||
> mettre les scripts sur tous les linux
|
||||
# ZABBIX
|
||||
> config Proxmox (dl le template)
|
||||
>
|
||||
> config ndv
|
||||
>
|
||||
> config gita
|
||||
>
|
||||
|
||||
|
||||
|
||||
# BONUS
|
||||
>SCRIPT
|
||||
option pour desactiver firewall
|
||||
ANSIBLE
|
||||
|
||||
>SCRIPT
|
||||
dire les ports ouvert de la machine et pour quoi ils le sont
|
||||
|
||||
>ANSIBLE
|
||||
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@
|
|||
CONFIG_DEB_INSTALL_DEFAULT_CA_SERVER="192.168.0.110"
|
||||
CONFIG_DEB_INSTALL_DEFAULT_CA_WILDCARD="*.server.home"
|
||||
CONFIG_DEB_INSTALL_DEFAULT_CA_SERVICES="gitea nginx apache2 mysql postgresql jellyfin"
|
||||
CONFIG_DEB_INSTALL_DEFAULT_CA_CRON="STEP-CA-RENEWAL"
|
||||
|
||||
CONFIG_DEB_INSTALL_JSON='[
|
||||
{"id": "git_pkg", "label": "Installer Git", "type": "pkg", "params": "git"},
|
||||
|
|
|
|||
|
|
@ -127,7 +127,7 @@ check_deb_sys_clone_ssh_key(){
|
|||
}
|
||||
|
||||
check_deb_sys_cert_install(){
|
||||
local MARKER="# STEP-CA-RENEWAL"
|
||||
local MARKER="# $CONFIG_DEB_INSTALL_DEFAULT_CA_CRON"
|
||||
if crontab -l 2>/dev/null | grep -q "$MARKER"; then
|
||||
return 0
|
||||
else
|
||||
|
|
@ -609,6 +609,8 @@ do_deb_sys_cert_install(){
|
|||
--not-after=8760h \
|
||||
--force
|
||||
|
||||
|
||||
|
||||
msg_success "Certificat généré avec succès dans /etc/ssl/wildcard/"
|
||||
|
||||
msg_warning "[4/6] Modification des droits de lecture du certificat..."
|
||||
|
|
@ -678,31 +680,43 @@ do_deb_sys_cert_install(){
|
|||
# 5. Planification
|
||||
msg_warning "[6/6] Activation du renouvellement automatique..."
|
||||
|
||||
# On récupère la liste des services à redémarrer (ceux définis dans ta config)
|
||||
# On crée une commande de restart groupée : systemctl restart service1 service2
|
||||
RESTART_CMD=""
|
||||
for SVC in $CONFIG_DEB_INSTALL_DEFAULT_CA_SERVICES; do
|
||||
if systemctl is-active --quiet "$SVC"; then
|
||||
RESTART_CMD="$RESTART_CMD $SVC"
|
||||
fi
|
||||
done
|
||||
# Chemins des fichiers
|
||||
local CERT_CRT="/etc/ssl/wildcard/server.crt"
|
||||
local CERT_KEY="/etc/ssl/wildcard/server.key"
|
||||
local CERT_PFX="/etc/ssl/wildcard/server.pfx"
|
||||
|
||||
# Construction de la ligne Cron avec le restart à la fin
|
||||
# Le "&&" assure que le restart ne se fait QUE si le renew a réussi
|
||||
STEP_BIN=$(which step)
|
||||
CRON_COMMAND="$STEP_BIN certificate renew /etc/ssl/wildcard/server.crt /etc/ssl/wildcard/server.key --force >> /var/log/cert-renew.log 2>&1"
|
||||
# Commande pour générer le PFX sans mot de passe
|
||||
local PFX_CMD="openssl pkcs12 -export -out $CERT_PFX -inkey $CERT_KEY -in $CERT_CRT -passout pass:"
|
||||
|
||||
if [ -n "$RESTART_CMD" ]; then
|
||||
CRON_COMMAND="$CRON_COMMAND && systemctl restart $RESTART_CMD"
|
||||
fi
|
||||
# On assemble tout dans le Cron : Renew -> PFX -> Restart Services
|
||||
local STEP_BIN=$(which step)
|
||||
local RENEW_CMD="$STEP_BIN certificate renew $CERT_CRT $CERT_KEY --force"
|
||||
|
||||
MARKER="# STEP-CA-RENEWAL"
|
||||
(
|
||||
crontab -l 2>/dev/null | sed "/$MARKER/,/$MARKER/d"
|
||||
echo "$MARKER"
|
||||
echo "0 0 1 * * $CRON_COMMAND"
|
||||
echo "$MARKER"
|
||||
) | crontab -
|
||||
# Récupération des services à redémarrer
|
||||
local RESTART_CMD=""
|
||||
for SVC in $CONFIG_DEB_INSTALL_DEFAULT_CA_SERVICES; do
|
||||
if systemctl is-active --quiet "$SVC"; then
|
||||
RESTART_CMD="$RESTART_CMD $SVC"
|
||||
fi
|
||||
done
|
||||
|
||||
# Construction de la ligne finale
|
||||
local FULL_COMMAND="$RENEW_CMD >> /var/log/cert-renew.log 2>&1 && $PFX_CMD"
|
||||
if [ -n "$RESTART_CMD" ]; then
|
||||
FULL_COMMAND="$FULL_COMMAND && systemctl restart $RESTART_CMD"
|
||||
fi
|
||||
|
||||
# Injection dans la crontab
|
||||
local MARKER="# $CONFIG_DEB_INSTALL_DEFAULT_CA_CRON"
|
||||
(
|
||||
crontab -l 2>/dev/null | sed "/$MARKER/,/$MARKER/d"
|
||||
echo "$MARKER"
|
||||
echo "0 0 1 * * $FULL_COMMAND"
|
||||
echo "$MARKER"
|
||||
) | crontab -
|
||||
|
||||
# Premier export immédiat pour que le fichier existe tout de suite
|
||||
eval $PFX_CMD
|
||||
|
||||
msg_success "Cron mis à jour avec restart automatique des services."
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue