Commit 50c86922 authored by Vitaly Lipatov's avatar Vitaly Lipatov

improve add_(ftpuser,site,user): autoset password, nice output

add create_sep_sites script for create many sites from one base
parent 12c52fb6
......@@ -6,7 +6,7 @@ FTPUSER=$4
[ -r /etc/vsftpd/user_list ] || exit
service nscd status && NSCD=1 && service nscd stop
service nscd status >/dev/null && NSCD=1 && service nscd stop
if [ -n "$SUFFIX" ] ; then
[ -n "$FTPPATH" ] || exit 1
......@@ -21,9 +21,16 @@ else
fi
echo $FTPUSER >>/etc/vsftpd/user_list
pwgen
passwd $FTPUSER
echo
echo "Login: $FTPUSER"
echo "Path: $FTPPATH"
PASSWORD=$(pwgen -1 -s 10 | sed -e "s|[Il1Oo0]|E|g")
echo "$PASSWORD" | passwd --stdin $FTPUSER || exit
cat <<EOF
FTP only access:
login: $FTPUSER
passwd: $PASSWORD
path: $FTPPATH
EOF
[ -n "$NSCD" ] && service nscd start
......@@ -52,9 +52,18 @@ check_dirs
create_site_config
service httpd2 reload
if [ -z "$3" ] ; then
service httpd2 reload
# starthttpd2 forces run httpd2
service httpd2 status || starthttpd2
# starthttpd2 forces run httpd2
service httpd2 status || starthttpd2
fi
cat <<EOF
URL: http://$DOMAINNAME
Site dir: www/$DOMAINNAME
Log dir: log/
Technical URL: http://$TECHNAME.$TECHHOST
EOF
echo "You can use technical name: $TECHNAME.$TECHHOST for access to the site."
#!/bin/sh -x
#!/bin/sh
. ./config
USER=$1
[ -n "$USER" ] || exit
service nscd status && NSCD=1 && service nscd stop
service nscd status >/dev/null && NSCD=1 && service nscd stop
useradd -G users $USER || exit
pwgen
passwd $USER || exit
PASSWORD=$(pwgen -1 -s 10 | sed -e "s|[Il1Oo0]|E|g")
. ./config
echo "$PASSWORD" | passwd --stdin $USER || exit
echo "$MYSQLHOST mysql.$USER" >>/etc/hosts
echo "$USER" >>/etc/vsftpd/user_list
[ -n "$NSCD" ] && service nscd start
cat <<EOF
FTP/SSH access:
host: $TECHHOST
login: $USER
passwd: $PASSWORD
EOF
......@@ -8,3 +8,12 @@ ADMINMAIL=support@eterhost.ru
# Удалённый каталог backup
BACKUPDIR=/var/local/backup-hosting/azbyka-vps/
# Для create_sep_sites.sh
# Домен основного сайта
MAINDOMAIN=azbyka.ru
# Основа для имени
MAINNAME=azbyka
# Каталог основного сайта:
MAINSITEDIR=/home/$MAINNAME/www/$MAINDOMAIN
#!/bin/bash
. ./config
fatal()
{
echo "$@" >&2
exit 1
}
for URL in $(cat create_sep_sites.list | grep -v "#") ; do
NAME=$(basename $URL)
[ -L "$MAINSITEDIR/$NAME" ] && { echo "Skipping $NAME" ; continue ; }
echo
echo "Copying $NAME..."
du -s -h $MAINSITEDIR/$NAME
SEPUSER=${MAINNAME}_$NAME
userdel -r $SEPUSER
id $SEPUSE >/dev/null || fatal "$SEPUSER already exists"
test -d /home/$SEPUSER && fatal "$SEPUSER already created"
cat <<EOF
======== $SEPUSER ============
EOF
./add_user.sh $SEPUSER || fatal
./add_site.sh $SEPUSER $SEPUSER NORESTARTAPACHE
cat <<EOF
Real URL: http://$MAINDOMAIN/$NAME
EOF
subst "s|prepend.php|prepend-azbyka.php|g" /etc/httpd2/conf/sites-enabled/$SEPUSER.conf
TARGET="/home/$SEPUSER/www/$SEPUSER/"
rsync -av $MAINSITEDIR/$NAME/ $TARGET/$NAME/
chown $SEPUSER -R $TARGET/$NAME/
break
done
service httpd2 reload
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment