mirror of
https://github.com/myvesta/vesta
synced 2025-07-05 20:41:53 -07:00
Making sure chmod and chown does not follow symlinks
This commit is contained in:
parent
d0108b4ae3
commit
c981edee63
3 changed files with 21 additions and 9 deletions
12
func/main.sh
12
func/main.sh
|
@ -1085,3 +1085,15 @@ vesta_generate_pass() {
|
|||
done
|
||||
echo "$PASS"
|
||||
}
|
||||
|
||||
# Simple chmod wrapper that skips symlink files after glob expand
|
||||
# Taken from HestiaCP
|
||||
no_symlink_chmod() {
|
||||
local filemode=$1; shift;
|
||||
|
||||
for i in "$@"; do
|
||||
[[ -L ${i} ]] && continue
|
||||
|
||||
chmod "${filemode}" "${i}"
|
||||
done
|
||||
}
|
||||
|
|
|
@ -51,7 +51,7 @@ rebuild_user_conf() {
|
|||
mkdir -p $HOMEDIR/$user/conf
|
||||
chmod a+x $HOMEDIR/$user
|
||||
chmod a+x $HOMEDIR/$user/conf
|
||||
chown $user:$user $HOMEDIR/$user
|
||||
chown --no-dereference $user:$user $HOMEDIR/$user
|
||||
chown root:root $HOMEDIR/$user/conf
|
||||
|
||||
# Update disk pipe
|
||||
|
@ -80,7 +80,7 @@ rebuild_user_conf() {
|
|||
chmod 751 $HOMEDIR/$user/conf/web
|
||||
chmod 751 $HOMEDIR/$user/web
|
||||
chmod 771 $HOMEDIR/$user/tmp
|
||||
chown $user:$user $HOMEDIR/$user/web
|
||||
chown --no-dereference $user:$user $HOMEDIR/$user/web
|
||||
if [ -z "$create_user" ]; then
|
||||
$BIN/v-rebuild-web-domains $user $restart
|
||||
fi
|
||||
|
@ -183,10 +183,10 @@ rebuild_web_domain_conf() {
|
|||
fi
|
||||
|
||||
# Set folder permissions
|
||||
chmod 551 $HOMEDIR/$user/web/$domain \
|
||||
no_symlink_chmod 551 $HOMEDIR/$user/web/$domain \
|
||||
$HOMEDIR/$user/web/$domain/stats \
|
||||
$HOMEDIR/$user/web/$domain/logs
|
||||
chmod 751 $HOMEDIR/$user/web/$domain/private \
|
||||
no_symlink_chmod 751 $HOMEDIR/$user/web/$domain/private \
|
||||
$HOMEDIR/$user/web/$domain/cgi-bin \
|
||||
$HOMEDIR/$user/web/$domain/public_html \
|
||||
$HOMEDIR/$user/web/$domain/public_shtml \
|
||||
|
@ -194,7 +194,7 @@ rebuild_web_domain_conf() {
|
|||
chmod 640 /var/log/$WEB_SYSTEM/domains/$domain.*
|
||||
|
||||
# Set ownership
|
||||
chown $user:$user $HOMEDIR/$user/web/$domain \
|
||||
chown --no-dereference $user:$user $HOMEDIR/$user/web/$domain \
|
||||
$HOMEDIR/$user/web/$domain/private \
|
||||
$HOMEDIR/$user/web/$domain/cgi-bin \
|
||||
$HOMEDIR/$user/web/$domain/public_html \
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue