#!/bin/bash
#########################################################
##### ȣû ýũƮ: AutoMaster V 1.0 #####
#########################################################
#
#   ##   :  α׷ ü鸶 Ư ġα׷
#                  ġ ٸǷ ü  Ұ  ֽϴ. 
#
#   1. α׷ 뵵
#      - ȣü 񽺸  ýũƮ
#
#   2.                      
#     - ɺƳ ڸ ߽
#     - Email : webmaster@superuser.co.kr
#     - TEL : (051) 583-8128,9
#
#   3. ۱
#       α׷ ۱ ڸƿ
#      , α׷  ϳ  
#      ǰ Ǵ   ѵ˴ϴ. 
#      翬 α׷ Ϻθ Ͽ ϴ 
#       ѵǾ ֽϴ. 
#
#       Date : 2000 8 31
#
#
#   4. ĹƮ : www.nofee.co.kr 
#   
#   5. ڸ  Ȩ : www.superuser.co.kr
#   
####### 6. ġǾ ־ α׷ ġġ  #####
#
#  . (ġ)
#  . DNS (BIND8)
#  . Sendmail
#  . α׺м α׷(AW)#   
#   
#   
#   
###### 7. ʿ ϵ  #############
# 
#      ڹ : NICEBACKUP
#       ԽǼ : niceboard-create.sql
#       ԽǼ : niceboard-create2.sql
#       ϼ : nicebook-create.sql
#       Խ : niceboard
#        : nicebook
#      ʱ ȳ : index.html
#
#
###### 8. Ĺ ׷̵ (V2.0) : (for Web)
#         . Ȩ ʱ (index.html) ں  
#         .  ý(KCMS) 
#         .  ڵ
#         . ȸ α׷ ڵ
#         . ϸƮ ڵ
#         .  ڵ
#########################################################
# from V0.1 to V0.3 upgrade 
#   - DNS zone ڵ
#   - accesswatch ȯ ڵ
# from V0.30 to V0.31 upgrade (2000.10.22)
#   - User Counter datafile ڵ
# from V0.31 to V0.32 upgrade (2000.10.31)
#   - /usr/local/aw/cfg/ Ǵ ȯ漳 ż
# from V0.32 to V0.4 upgrade (2000.11.1)
#   - /etc/mail/virtusertable ϵ
#   - /etc/mail/relay-domains relay뼳
# from V0.4 to V0.7 upgrade (2000.11.1)
#   -  Խڵ Է(niceboard)
# from V0.7 to V0.9 upgrade (2000.11.1)
#   -   ڵ Է(nicebook) 
# from V0.9 to V1.0 upgrade (2000.11.2)
#   -  αѱ (ڱ) 
#   -   α׷ 
#######################################################
# 
export hostip_address="211.174.58.43"
export name_server="ns.superuser.co.kr"

#ӽ 
rm -f /tmp/httpd.conf_tempfile
rm -f /tmp/named.conf_tempfile
rm -f /tmp/zone_tempfile
rm -f /tmp/logfile_tempfile
rm -f /tmp/aw.cfg_tempfile

#ӽ  
touch /tmp/httpd.conf_tempfile
touch /tmp/named.conf_tempfile
touch /tmp/zone_tempfile
touch /tmp/logfile_tempfile
touch /tmp/aw.cfg_tempfile

#ڻ н 
/usr/sbin/useradd -m -s /bin/bash -d /home/$1 -g webhost $1
echo " Please input mysql Administrator's passwd"
passwd $1

#뷮
edquota -u $1

#Ȩ丮 
chmod 701 /home/$1
# Ȩ丮(/home/user) 701 ϴ  .
# ٸ Ϲݻڵ cd ɾ   
# Apache(httpd) Ȩ ټ ִ.
# 丮 rwx  x cd  ǹϸ, 
# r ͼ ls ǹѴ.

mkdir /home/$1/www
chmod 705 /home/$1/www
chown $1:webhost /home/$1/www


mkdir /home/$1/www/weblog
chmod 705 /home/$1/www/weblog
chown $1:webhost /home/$1/www/weblog

# 踦 ڸ  ֵ  Ѵ.
touch /home/$1/www/weblog/.htaccess
echo "AuthName \"$2 Administrator\"" >> /home/$1/www/weblog/.htaccess
echo "AuthType Basic" >> /home/$1/www/weblog/.htaccess
echo "AuthUserFile /home/$1/www/weblog/.htpasswd" >> /home/$1/www/weblog/.htaccess
echo "AuthGroupFile /dev/null" >> /home/$1/www/weblog/.htaccess
echo "<Limit GET POST>" >> /home/$1/www/weblog/.htaccess
echo "require valid-user" >> /home/$1/www/weblog/.htaccess
echo "</Limit>" >> /home/$1/www/weblog/.htaccess
echo " Please input Administrator's passwd"
htpasswd -c /home/$1/www/weblog/.htpasswd $1

cp /sbin/index.html /home/$1/www/index.html
chmod 755 /home/$1/www/index.html
chown $1:webhost /home/$1/www/index.html

mkdir /home/$1/www/cgi-bin
chmod 755 /home/$1/www/cgi-bin
chown $1:webhost /home/$1/www/cgi-bin

mkdir /home/$1/www_log
chmod 705 /home/$1/www_log
chown $1:webhost /home/$1/www_log

#ȣƮ
#vi /usr/local/apache/conf/httpd.conf
echo "<VirtualHost $hostip_address>" >> /tmp/httpd.conf_tempfile
echo "    ServerAdmin $1@$2"    >> /tmp/httpd.conf_tempfile
echo "    DocumentRoot /home/$1/www"    >> /tmp/httpd.conf_tempfile
echo "    ServerName www.$2"    >> /tmp/httpd.conf_tempfile
echo "    ErrorLog /home/$1/www_log/error_log"  >> /tmp/httpd.conf_tempfile
echo "    CustomLog /home/$1/www_log/access_log common" >> /tmp/httpd.conf_tempfile
echo "</VirtualHost>"   >> /tmp/httpd.conf_tempfile
cat /tmp/httpd.conf_tempfile >> /usr/local/apache/conf/httpd.conf


#μ
#vi /etc/named.conf
echo "zone \"$2\" {"    >>      /tmp/named.conf_tempfile
echo "         type master;"  >>        /tmp/named.conf_tempfile
echo "         file \"$2.zone\";"       >>      /tmp/named.conf_tempfile
echo "};"       >>      /tmp/named.conf_tempfile
cat /tmp/named.conf_tempfile >> /etc/named.conf

#cp /var/named/default.zone /var/named/$2.zone
#vi /var/named/$2.zone
#/var/named/domain.zone 
#echo "@       IN      SOA   www.$2.  $1.$2.  (" >> /tmp/zone_tempfile
#SOA ٷ  ns.superuser.co.kr .
echo "@       IN      SOA   ns.superuser.co.kr.  $1.$2.  (" >> /tmp/zone_tempfile
echo "                                20000402  ; Serial" >> /tmp/zone_tempfile
echo "                                21600   ; Refresh(6h)" >> /tmp/zone_tempfile
echo "                                900     ; Retry(15min)" >> /tmp/zone_tempfile
echo "                                604800  ; Expire(7d)" >> /tmp/zone_tempfile
echo "                                43200)  ; Minimum(12h);" >> /tmp/zone_tempfile
echo "                IN      NS      $name_server." >> /tmp/zone_tempfile
echo ";" >> /tmp/zone_tempfile
echo "                IN      A       $hostip_address" >> /tmp/zone_tempfile
echo "                IN      MX      0       $2." >> /tmp/zone_tempfile
echo "www             IN      A       $hostip_address" >> /tmp/zone_tempfile
echo "                IN      MX      0       $2." >> /tmp/zone_tempfile
cp /tmp/zone_tempfile /var/named/$2.zone

#ϼ(SMTP)
#vi /etc/sendmail.cw
echo $2 >> /etc/sendmail.cw
echo $2 >> /etc/mail/relay-domains
echo "webmaster@$2      $1" >> /etc/mail/virtusertable 

#α׺м
#vi /usr/local/aw/accesswatch-start
#accesswatch-startϿ  α׺м ۽ũƮ Է
echo "$2α׺мԴϴ."      >>      /tmp/logfile_tempfile
echo "/usr/local/aw/aw-parser.pl -c /usr/local/aw/cfg/$2.cfg" >> /tmp/logfile_tempfile
echo "/usr/local/aw/aw-report.pl -c /usr/local/aw/cfg/$2.cfg" >> /tmp/logfile_tempfile
cat /tmp/logfile_tempfile       >>      /usr/local/aw/accesswatch-start

#/usr/local/aw/cfg丮  α׺мȯ漳 ۼ
#cp /usr/local/aw/cfg/default.cfg /usr/local/aw/cfg/$2.cfg
#vi /usr/local/aw/cfg/$2.cfg
echo "###############################################################################" >> /tmp/aw.cfg_tempfile 
echo "#####                Accesswatch Config File Setup                        #####" >> /tmp/aw.cfg_tempfile
echo "###############################################################################" >> /tmp/aw.cfg_tempfile
echo "\$accessLog = \"/home/$1/www_log/access_log\";" >> /tmp/aw.cfg_tempfile
echo "\$DNSlookups = 0;" >> /tmp/aw.cfg_tempfile
echo "\$defaultPage = \"index.html\";" >> /tmp/aw.cfg_tempfile
echo "\$includeURL = \".*\";" >> /tmp/aw.cfg_tempfile
echo "\$compressdata = 1;" >> /tmp/aw.cfg_tempfile
echo "\$compresscommand    = \"gzip -9fc\";" >> /tmp/aw.cfg_tempfile
echo "\$catcompresscommand = \"gunzip -c\";" >> /tmp/aw.cfg_tempfile
echo "\$compresssuffix     = \"gz\";" >> /tmp/aw.cfg_tempfile
echo "\$excludeURL = \".gif\|.jpg\|.jpeg\|.xbm\";" >> /tmp/aw.cfg_tempfile
echo "\$reportBase = \"/home/$1/www/weblog\";" >> /tmp/aw.cfg_tempfile
echo "\$siteName  = \"www.$2\";" >> /tmp/aw.cfg_tempfile
echo "\$siteBaseURL = \"http://www.$2\";" >> /tmp/aw.cfg_tempfile
echo "\$orgname   = \"www.$2\";" >> /tmp/aw.cfg_tempfile
echo "\$orgdomain = \"$2\";" >> /tmp/aw.cfg_tempfile
echo "\$excludeHosts = \"\";" >> /tmp/aw.cfg_tempfile
echo "###############################################################################" >> /tmp/aw.cfg_tempfile 
echo "#####                          Program Options                            #####" >> /tmp/aw.cfg_tempfile
echo "###############################################################################" >> /tmp/aw.cfg_tempfile 
echo "\$maxPagesToList = -1;" >> /tmp/aw.cfg_tempfile
echo "\$maxDomainsToList = -1;" >> /tmp/aw.cfg_tempfile
echo "\$maxHostsToList = 15;" >> /tmp/aw.cfg_tempfile
echo "\$maxRefsToList = 10;" >> /tmp/aw.cfg_tempfile
echo "\$maxAgentsToList = 15;" >> /tmp/aw.cfg_tempfile
echo "\$customFooter = <<EOM;" >> /tmp/aw.cfg_tempfile
echo "<!-- START custom footer -->" >> /tmp/aw.cfg_tempfile
echo "$2" >> /tmp/aw.cfg_tempfile
echo "<!-- END   custom footer -->" >> /tmp/aw.cfg_tempfile
echo "EOM" >> /tmp/aw.cfg_tempfile
echo "1;" >> /tmp/aw.cfg_tempfile
echo "###############################################################################" >> /tmp/aw.cfg_tempfile 
echo "########### End - AccessWatch Custom Configuration ############################" >> /tmp/aw.cfg_tempfile
echo "###############################################################################" >> /tmp/aw.cfg_tempfile 
cp /tmp/aw.cfg_tempfile /usr/local/aw/cfg/$2.cfg

#User Counter datafile Setting (Version 0.31 upgrade)
touch /usr/local/apache/Counter/data/$1.dat
chmod 644 /usr/local/apache/Counter/data/$1.dat
chown nobody:webhost /usr/local/apache/Counter/data/$1.dat
cat /usr/local/apache/Counter/data/counter_default_digit.dat >> $1.dat

# Խ Ѵ.
#Խ ۾1 Խ ϰ ѹ ϼ Ѵ.
cd /home/nice/www/
cp -r /home/nice/www/niceboard /home/$1/www/niceboard/
cd /home/$1/www/
chown -R $1:webhost /home/$1/www/niceboard
cd /home/$1/www/niceboard/
mv /home/$1/www/niceboard/nice.gif /home/$1/www/niceboard/$1.gif
mv /home/$1/www/niceboard/nice_icon /home/$1/www/niceboard/$1_icon
mv /home/$1/www/niceboard/nice.cfg /home/$1/www/niceboard/$1.cfg
vi /home/$1/www/niceboard/auth.inc
vi /home/$1/www/niceboard/dbconn.inc
vi /home/$1/www/niceboard/$1.cfg

#Խ ۾2 mysqlͺ̽ ڿ ʿ DB۾ Ѵ.
cd /usr/local/mysql/bin/
vi /usr/local/mysql/bin/niceboard-create.sql
vi /usr/local/mysql/bin/niceboard-create2.sql
echo " Please input mysql Administrator's passwd"
/usr/local/mysql/bin/mysql -u root -p niceboard < niceboard-create.sql
echo " Please input mysql Administrator's passwd"
/usr/local/mysql/bin/mysql -u root -p mysql < niceboard-create2.sql

#  Ѵ.
#۾1  ϰ ѹ  Ѵ.
cd /home/nice/www/
cp -r /home/nice/www/nicebook /home/$1/www/
cd /home/$1/www/
chown -R $1:webhost /home/$1/www/nicebook
cd /home/$1/www/nicebook/
mv /home/$1/www/nicebook/nice.cfg /home/$1/www/nicebook/$1.cfg
mv /home/$1/www/nicebook/nice.gif /home/$1/www/nicebook/$1.gif
mv /home/$1/www/nicebook/nice_icon /home/$1/www/nicebook/$1_icon
vi /home/$1/www/nicebook/auth.inc
vi /home/$1/www/nicebook/dbconn.inc
vi /home/$1/www/nicebook/$1.cfg

#   /sbin/NICEBACKUP Է
echo "tar cvfpz /home/sspark/BACKUP/$2.tar.gz /home/$1 >> /sbin/NICEBACKUP

#۾2 mysqlͺ̽ ڿ ʿ DB۾ Ѵ.
cd /usr/local/mysql/bin/
vi /usr/local/mysql/bin/nicebook-create.sql
echo " Please input mysql Administrator's passwd"
/usr/local/mysql/bin/mysql -u root -p GUESTBOOK < nicebook-create.sql

#Խ  ۾mysql reload
echo " Please input mysql Administrator's passwd"
/usr/local/mysql/bin/mysqladmin -u root -p reload

#  (޸𸮿 Ҵ)
unset hostip_address
unset name_server

# ü restart
/etc/rc.d/init.d/named restart
/usr/local/apache/bin/apachectl restart

#ϼ  ϰDB۾
makemap hash /etc/mail/virtusertable < /etc/mail/virtusertable
