Fix: Test-Seite + SFTP-User darf eigene Files überschreiben
- Test-Seite (<h1>… OK</h1>) wird nur noch geschrieben wenn der Webroot leer ist, sonst klobbert ein zweiter Lauf existierende Hugo-Inhalte. - chown -R statt chown auf den Webroot, damit der SFTP-User auch Files die der Script-Lauf erzeugt hat (z.B. die Test-Seite selbst) überschreiben kann. Sonst SSH_FX_PERMISSION_DENIED beim Re-Upload derselben Datei via SFTP.
This commit is contained in:
+6
-1
@@ -201,7 +201,12 @@ server {
|
|||||||
EOF
|
EOF
|
||||||
|
|
||||||
ln -sf "/etc/nginx/sites-available/$DOMAIN" "/etc/nginx/sites-enabled/$DOMAIN"
|
ln -sf "/etc/nginx/sites-available/$DOMAIN" "/etc/nginx/sites-enabled/$DOMAIN"
|
||||||
|
|
||||||
|
# Test-Seite nur schreiben wenn Webroot noch leer ist — sonst würde ein erneuter
|
||||||
|
# Script-Lauf bestehende Hugo-Inhalte überschreiben.
|
||||||
|
if [ -z "$(ls -A "/var/www/$DOMAIN" 2>/dev/null)" ]; then
|
||||||
echo "<h1>$DOMAIN — OK</h1>" > "/var/www/$DOMAIN/index.html"
|
echo "<h1>$DOMAIN — OK</h1>" > "/var/www/$DOMAIN/index.html"
|
||||||
|
fi
|
||||||
|
|
||||||
nginx -t
|
nginx -t
|
||||||
systemctl reload nginx
|
systemctl reload nginx
|
||||||
@@ -226,7 +231,7 @@ fi
|
|||||||
|
|
||||||
usermod -aG sftp-users "$SFTP_USER"
|
usermod -aG sftp-users "$SFTP_USER"
|
||||||
|
|
||||||
chown "$SFTP_USER:sftp-users" "/var/www/$DOMAIN"
|
chown -R "$SFTP_USER:sftp-users" "/var/www/$DOMAIN"
|
||||||
chmod 775 "/var/www/$DOMAIN"
|
chmod 775 "/var/www/$DOMAIN"
|
||||||
|
|
||||||
mkdir -p "/etc/ssh/sftp-keys/$SFTP_USER"
|
mkdir -p "/etc/ssh/sftp-keys/$SFTP_USER"
|
||||||
|
|||||||
Reference in New Issue
Block a user