Lain

Source de ce site

Ce site est réalisé avec Pelican.

Installation

git clone git@git.chimrod.com:lain.git

Copie locale

Il est possible de faire tourner une copie en locale

cd lain
make devserver

Transférer le site

La commande suivante va automatiquement transférer le site et le mettre à disposition à l’adresse suivante : https://lain.chimrod.com/

make rsync_upload

Installation du système

Après installation, la commande suivante va installer tous les fichiers de configuration automatiquement :

cd /home/www/lain/static/scripts/
sudo ./install.sh
#!/bin/sh

create_missing_dir() {
  test -d "${TARGET_DIR}/$1" || mkdir "${TARGET_DIR}/$1"
}

# Installation des dépendances
apt install wireguard \
    dehydrated-apache2 \
    cockpit \
    qbittorrent-nox \
    duplicity python3-swiftclient \
    mpd \
    openssh-server \
    samba

# Sauvegardes

install backup.sh /home/backup
install ../configuration/backup/*.conf /home/backup

install -m 644 ../configuration/qbittorrent.service /etc/systemd/system/
install -m 644 ../configuration/backup.service /etc/systemd/system/
install -m 644 ../configuration/backup.timer /etc/systemd/system/
systemctl daemon-reload


# NFS
install -m 644 ../configuration/exports /etc/

# ssh
install create_user.sh /home/sftp
install mount_bind.sh /home/sftp
install -m 644 ../configuration/sftp.conf /etc/ssh/sshd_config.d/
systemctl reload sshd.service

# Dehydrated
install -m 644 ../configuration/dehydrated/domains.txt /etc/dehydrated
install hook.sh /etc/dehydrated
install ../configuration/dehydrated/dns_gandi.sh /etc/dehydrated/conf.d/
echo "Dehydrated configuration"
read -p 'Gandi API Key: ' API_KEY
if [ ! -z "$API_KEY" ]; then
    export API_KEY
    tmpfile=$(mktemp)
    envsubst < dehydrated > "${tmpfile}"
    install -m 700 ${tmpfile} /etc/cron.weekly/dehydrated
    rm ${tmpfile}
else
    echo "No key given, ignoring"
fi

# cockpit
install -m 644 ../configuration/cockpit.conf /etc/cockpit
systemctl restart cockpit.service

# Apache
install -m 644 ../configuration/dehydrated/dehydrated_ssl.conf /etc/apache2/conf-available/
install -m 644 ../configuration/apache/downloads.conf /etc/apache2/sites-available/
install -m 644 ../configuration/apache/lain.chimrod.com.conf /etc/apache2/sites-available/
a2enmod ssl proxy proxy_http proxy_wstunnel rewrite
a2ensite downloads.conf lain.chimrod.com.conf
systemctl restart apache2.service

# Samba
create_missing_dir /etc/samba/smb.conf.d
install -m 644 ../configuration/smb/shares.conf /etc/samba/smb.conf.d/shares.conf
systemctl restart smbd.service