Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Alpine

Trucs et astuces pour Alpine

Ajouter un service au redémarrage

rc-update add MONSERVICE default

Mettre à jour la base de paquet

apk update

Mettre à jour les paquets

apk upgrade

Faire une montée de version

  • Vérification de la version cat /etc/alpine-release
  • Vérification des dépôts cat /etc/apk/repositories
  • Modification de la version des dépôts (Attention ici pour la version 3.19 à 3.20) sed -e 's/3.19/3.20/g' -i /etc/apk/repositories
  • On vérifie les modifications cat /etc/apk/repositories
  • On met à jour la base des dépôts apk update
  • Avant la mise à jour, on met à jour le gestionnaire de paquets apk add --upgrade apk-tools
  • Mise à jour apk upgrade --available
L'option --available permet de forcer la mise à jour des paquets même s'ils sont dans la même version.
Cela est nécessaire pour réinstaller les paquets compilés avec la bonne version de musl. (sinon on peut avoir quelques problèmes)
  • Redémarrer reboot

Configurer le temps

setup-timezone -z Europe/Paris

Fail2ban

Source : https://wiki.alpinelinux.org/wiki/Fail2ban

Install

apk add fail2ban

Activer le service fail2ban

rc-update add fail2ban

Démarrer le service fail2ban et la création de la configuration:

rc-service fail2ban start

Lister les service actif

rc-status

Configuration

Configuration files are located at /etc/fail2ban

cat /etc/fail2ban/jail.d/alpine-ssh.conf
[sshd]
enabled  = true
filter   = alpine-sshd[mode=aggressive]
port     = ssh
logpath  = /var/log/messages
maxretry = 2
vi /etc/fail2ban/jail.d/alpine-ssh.conf 
[sshd]
enabled  = true
filter   = alpine-sshd
port     = ssh
logpath  = /var/log/messages
maxretry = 2

[sshd-ddos]
enabled  = true
filter   = alpine-sshd-ddos
port     = ssh
logpath  = /var/log/messages
maxretry = 2

[sshd-key]
enabled  = true
filter   = alpine-sshd-key
port     = ssh
logpath  = /var/log/messages
maxretry = 2
vi /etc/fail2ban/filter.d/alpine-sshd-key.conf 
# Fail2Ban filter for openssh for Alpine
#
# Filtering login attempts with PasswordAuthentication No in sshd_config.
#

[INCLUDES]

# Read common prefixes. If any customizations available -- read them from
# common.local
before = common.conf

[Definition]

_daemon = sshd

failregex = (Connection closed by|Disconnected from) authenticating user .* <HOST> port \d* \[preauth\]

ignoreregex =

[Init]

# "maxlines" is number of log lines to buffer for multi-line regex searches
maxlines = 10
rc-service fail2ban restart

How to test new filters

fail2ban-regex /var/log/messages alpine-sshd-key.conf

Unban ip

fail2ban-client set sshd unbanip BannedIP

Docker

Installation

apk add docker docker-compose

Dans un conteneur LXC (sur proxmox par exemple), ajouter ceci :

lxc.apparmor.profile: unconfined
lxc.cap.drop: