Server_Ubuntu/check_config.sh

44 lines
1.4 KiB
Bash
Raw Normal View History

#!/bin/bash
# Funkce pro kontrolu práv složky
check_permissions() {
local path=$1
local correct_perm=$2
local perms=$(stat -c "%a" "$path")
echo "Kontrola: $path"
if [ "$perms" -eq "$correct_perm" ]; then
echo " [OK] Práva pro $path jsou správně nastavena na $correct_perm."
else
echo " [CHYBA] Práva pro $path jsou nastavena na $perms, ale měla by být $correct_perm."
fi
}
# Kontrola práv pro složku .ssh a soubor authorized_keys
echo "Kontroluji práva složek a souborů..."
user_home="/home/archos" # Změňte na cestu domovského adresáře relevantního uživatele
ssh_dir="$user_home/.ssh"
auth_keys="$ssh_dir/authorized_keys"
check_permissions "$ssh_dir" 700
check_permissions "$auth_keys" 600
# Kontrola konfigurace SSH daemonu
echo "Kontroluji konfiguraci SSH daemonu..."
pubkey_auth=$(grep "^PubkeyAuthentication yes" /etc/ssh/sshd_config)
authorized_keys_file=$(grep "^AuthorizedKeysFile .ssh/authorized_keys" /etc/ssh/sshd_config)
if [ -z "$pubkey_auth" ]; then
echo " [CHYBA] Nastavení PubkeyAuthentication není aktivní v /etc/ssh/sshd_config."
else
echo " [OK] Nastavení PubkeyAuthentication je správně aktivní."
fi
if [ -z "$authorized_keys_file" ]; then
echo " [CHYBA] Cesta k authorized_keys není správně nastavena v /etc/ssh/sshd_config."
else
echo " [OK] Cesta k authorized_keys je správně nastavena."
fi
echo "Kontrola dokončena."