diff --git a/installer/ogdhcp_installer.sh b/installer/ogdhcp_installer.sh index 4151272..52d82ed 100755 --- a/installer/ogdhcp_installer.sh +++ b/installer/ogdhcp_installer.sh @@ -338,34 +338,30 @@ get_php_fpm_version() { php -v | grep -oP "PHP \K\d+\.\d+" } add_write_permission_apparmor() { - APPARMOR_FILE="/etc/apparmor.d/usr.sbin.kea-dhcp4" - KEA_RULES="/etc/kea/ rw, - /etc/kea/** rw," - KEA_CONFIG_FILE="/etc/kea/kea-dhcp4.conf" + APPARMOR_PROFILE="/etc/apparmor.d/usr.sbin.kea-dhcp4" - # Comprobar si la línea "/etc/kea/ rw," ya existe - if ! grep -q "/etc/kea/ rw," "$APPARMOR_FILE"; then - echo "Añadiendo /etc/kea/ rw, al archivo $APPARMOR_FILE" - echo "/etc/kea/ rw," | sudo tee -a "$APPARMOR_FILE" > /dev/null + # Comprobar si las líneas existen + if grep -q "/etc/kea/ r," "$APPARMOR_PROFILE" && grep -q "/etc/kea/** r," "$APPARMOR_PROFILE"; then + echo "Modificando permisos en $APPARMOR_PROFILE..." + + # Modificar las líneas /etc/kea/ r, y /etc/kea/** r, añadiendo w + sed -i 's#/etc/kea/ r,#/etc/kea/ rw,#g' "$APPARMOR_PROFILE" + sed -i 's#/etc/kea/\*\* r,#/etc/kea/** rw,#g' "$APPARMOR_PROFILE" + + echo "Permisos de escritura añadidos correctamente a $APPARMOR_PROFILE." else - echo "La regla '/etc/kea/ rw,' ya existe." + echo "Las líneas no fueron encontradas o ya están modificadas." fi - # Comprobar si la línea "/etc/kea/** rw," ya existe - if ! grep -q "/etc/kea/** rw," "$APPARMOR_FILE"; then - echo "Añadiendo /etc/kea/** rw, al archivo $APPARMOR_FILE" - echo "/etc/kea/** rw," | sudo tee -a "$APPARMOR_FILE" > /dev/null + # Recargar el perfil de AppArmor para aplicar los cambios + echo "Recargando el perfil de AppArmor para kea-dhcp4..." + sudo apparmor_parser -r "$APPARMOR_PROFILE" + + if [ $? -eq 0 ]; then + echo "El perfil de AppArmor se recargó correctamente." else - echo "La regla '/etc/kea/** rw,' ya existe." + echo "Error al recargar el perfil de AppArmor." fi - - # Establecer permisos y grupo en /etc/kea/kea-dhcp4.conf - echo "Estableciendo permisos de _kea:_kea en $KEA_CONFIG_FILE" - sudo chown _kea:_kea "$KEA_CONFIG_FILE" - - # Recargar AppArmor - echo "Recargando AppArmor..." - sudo systemctl reload apparmor } # Función para configurar Nginx