@@ -77,12 +77,11 @@ for domain in $(shell_list) ; do
7777 /var/log/httpd/domains/$domain .error.log
7878
7979 chmod 551 $HOMEDIR /$user /web/$domain
80- chmod 751 $HOMEDIR /$user /web/$domain /private
81- chmod 751 $HOMEDIR /$user /web/$domain /cgi-bin
82- chmod 751 $HOMEDIR /$user /web/$domain /public_html
83- chmod 751 $HOMEDIR /$user /web/$domain /public_shtml
84- chmod 751 $HOMEDIR /$user /web/$domain /document_errors
85- chmod -f -R 775 $HOMEDIR /$user /web/$domain /document_errors/*
80+ chmod 771 $HOMEDIR /$user /web/$domain /private
81+ chmod 771 $HOMEDIR /$user /web/$domain /cgi-bin
82+ chmod 771 $HOMEDIR /$user /web/$domain /public_html
83+ chmod 771 $HOMEDIR /$user /web/$domain /public_shtml
84+ chmod 771 $HOMEDIR /$user /web/$domain /document_errors
8685 chmod 551 $HOMEDIR /$user /web/$domain /stats
8786 chmod 551 $HOMEDIR /$user /web/$domain /logs
8887 chmod 640 /var/log/httpd/domains/$domain .*
@@ -208,6 +207,31 @@ for domain in $(shell_list) ; do
208207 suspended_web=$(( suspended_web + 1 ))
209208 fi
210209 user_domains=$(( user_domains + 1 ))
210+
211+ # Checking ftp
212+ if [ ! -z " $FTP_USER " ]; then
213+ if [ -z " $( grep ^$FTP_USER : /etc/passwd) " ]; then
214+ /usr/sbin/adduser $FTP_USER -g $user -s /sbin/nologin -M \
215+ -d " $HOMEDIR /$user /web/$domain " > /dev/null 2>&1
216+
217+ shadow=' /etc/shadow'
218+ shdw=$( grep " ^$FTP_USER :" $shadow )
219+ shdw3=$( echo " $shdw " | cut -f3 -d :)
220+ shdw4=$( echo " $shdw " | cut -f4 -d :)
221+ shdw5=$( echo " $shdw " | cut -f5 -d :)
222+ shdw6=$( echo " $shdw " | cut -f6 -d :)
223+ shdw7=$( echo " $shdw " | cut -f7 -d :)
224+ shdw8=$( echo " $shdw " | cut -f8 -d :)
225+ shdw9=$( echo " $shdw " | cut -f9 -d :)
226+ chmod u+w $shadow
227+ sed -i " /^$FTP_USER :*/d" $shadow
228+ shdw_str=" $FTP_USER :$FTP_MD5 :$shdw3 :$shdw4 :$shdw5 :$shdw6 "
229+ shdw_str=" $shdw_str :$shdw7 :$shdw8 :$shdw9 "
230+ echo " $shdw_str " >> $shadow
231+ chmod u-w $shadow
232+ fi
233+ fi
234+
211235done
212236
213237# Renaming tmp config
0 commit comments