#!/bin/bash ############################################################################## # # # º» ½ºÅ©¸³Æ®´Â CentOS4.x, 5.x, Fedora, RedHat9 ¸¦ ±âÁØÀ¸·Î ÀÛ¼ºµÇ¾ú½À´Ï´Ù. # # # ############################################################################## clear ## ¼³Ä¡ ±ÇÇÑ(root) üũ if [ "$(whoami)" != "root" ] ; then echo "Error: You must be root to run this command." >&2 exit 1 fi ## ¾ð¾îÄÚµå Á¶Á¤ #LANG=ko_KR.eucKR sed -i "s/LANG=\"en_US.UTF-8\"/LANG=\"ko_KR.eucKR\"/g" /etc/sysconfig/i18n source /etc/profile ## ·Î°í ¹× ½ºÅ©¸³Æ® Á¤º¸ Ãâ·Â echo " " echo " " echo " " echo -e "\\033[01;31m=========================================" echo -e "\\033[01;31m= =" echo -e "\\033[01;31m= SEKOREA APM Setup Script =" echo -e "\\033[01;31m= =" echo -e "\\033[01;31m= Last Upated 2008.01.25 (Version 8.1) =" echo -e "\\033[01;31m= =" echo -e "\\033[01;31m= - OS : CentOS 4.x, 5.x Fedora 7 Add =" echo -e "\\033[01;31m= - APM : PHP 5.2.3, MySQL 5.0.44 Up =" echo -e "\\033[01;31m= =" echo -e "\\033[01;31m= http://www.sekorea.co.kr =" echo -e "\\033[01;31m= =" echo -e "\\033[01;31m=========================================" echo " " echo " " ########################################################################## ############## ############## ############## ¼³Ä¡¿¡ ÇÊ¿äÇÑ ±âº» ȯ°æ º¯¼ö ÁöÁ¤ "½ÃÀÛ" ############## ############## ############## ########################################################################## ## ½Ã½ºÅÛ IP ÃßÃâ SYSTEM_IP="`ifconfig eth0 | grep "inet addr" | awk -F" " '{print $2}' | awk -F":" '{print $2}'`" ### ¼Ò½º ´Ù¿î·Îµå ÁÖ¼Ò ### #SOURCE_ADDR="http://ÀÓÀÇÀÇÁÖ¼Ò" SOURCE_ADDR="http://secuidc.com/ins/apm_source" ### ´Ù¿î·ÎµåµÈ ¼Ò½ºÀÇ ±âº» ÀúÀå °æ·Î º¯¼ö SOURCE_DIR="/usr/local/src/APM_Setup" ### OS Á¾·ù ºÐ¼® CHK_OS_NAME="`cat /etc/redhat-release | awk -F" " '{print $1}'`" if [ "$CHK_OS_NAME" = "CentOS" ]; then CHK_OS_GRADE="`cat /etc/redhat-release | awk -F" " '{print $3}' | awk -F"." '{print $1}'`" elif [ "$CHK_OS_NAME" = "Fedora" ]; then IF_CORE="`cat /etc/redhat-release | awk -F" " '{print $2}'`" if [ "$IF_CORE" = "Core" ]; then CHK_OS_GRADE="`cat /etc/redhat-release | awk -F" " '{print $4}'`" elif [ "$IF_CORE" = "release" ]; then CHK_OS_GRADE="`cat /etc/redhat-release | awk -F" " '{print $3}'`" else echo -e "\\033[01;31m Unidentified OS !! Check /etc/redhat-release !!" fi elif [ "$CHK_OS_NAME" = "Red" ]; then CHK_OS_GRADE="`cat /etc/redhat-release | awk -F" " '{print $5}'`" else echo -e "\\033[01;31m Unidentified OS is not CentOS, Fedora, Redhat !! Check Your OS !!" fi ######## APM(with ZendOptimize) º¯¼öÀÇ ½ÇÁ¦ ÆÄÀÏÀÇ È®ÀåÀÚ´Â ¸ðµÎ tar.gz ÀÌ´Ù ######### ### Apache ¼Ò½º ¹öÀü º¯¼ö APACHE1="apache_1.3.37" APACHE2="httpd-2.0.59" APACHE3="httpd-2.2.4" ### PHP ¼Ò½º ¹öÀü º¯¼ö PHP4="php-4.4.7" PHP5="php-5.2.3" ### ZendOptimizer 32bit ÆÄÀϸí(È®ÀåÀÚ Á¦¿Ü) º¯¼ö #Zend32="ZendOptimizer-3.2.8-linux-glibc21-i386" Zend32="ZendOptimizer-3.3.0a-linux-glibc21-i386" ### ZendOptimizer 64bit ÆÄÀϸí(È®ÀåÀÚ Á¦¿Ü) º¯¼ö #Zend64="ZendOptimizer-3.2.8-linux-glibc23-x86_64" Zend64="ZendOptimizer-3.3.0a-linux-glibc23-x86_64" ### MYSQL 3.X.X ´ë ¹öÀü º¯¼ö MYSQL_3_X="3.23.58" ### MYSQL 4.0.x ´ë ¹öÀü º¯¼ö MYSQL_4_0="4.0.27" ### MYSQL 4.1.x ´ë ¹öÀü º¯¼ö MYSQL_4_1="4.1.22" ### MYSQL 5.0.x ´ë ¹öÀü º¯¼ö MYSQL_5_0="5.0.44" ### Apache 1.3.x ¹öÀü¿ë mod_ssl ¹öÀü º¯¼ö MOD_SSL="mod_ssl-2.8.28-1.3.37" ########################## ### Apahce ÄÄÆÄÀÏ º¯¼ö ### ########################## # apache 1.3.x APACHE1_CONF="--prefix=/usr/local/apache --enable-shared=max --enable-rule=SHARED_CORE --enable-module=so --enable-module=rewrite --enable-module=vhost_alias --enable-module=headers --enable-module=expires --enable-module=speling" # httpd 2.0.x #APACHE2_CONF="--prefix=/usr/local/apache --enable-shared=max --enable-rule=SHARED_CORE --enable-module=so --with-mpm=worker --enable-module=rewrite --enable-module=vhost_alias --enable-module=headers --enable-module=expires --enable-module=speling" APACHE2_CONF="--prefix=/usr/local/apache --with-mpm=prefork --enable-ssl --enable-mods-shared=all" # httpd 2.2.x #APACHE3_CONF="--prefix=/usr/local/apache --enable-shared=max --enable-rule=SHARED_CORE --enable-module=so --with-mpm=worker --enable-module=rewrite --enable-module=vhost_alias --enable-module=headers --enable-module=expires --enable-module=speling" APACHE3_CONF="--prefix=/usr/local/apache --with-mpm=prefork --enable-ssl --enable-mods-shared=all" ###################################################################### # # # Mysql ¼³Ä¡ Á¤º¸´Â MySQL root ºñ¹ø ÁöÁ¤ ´ÙÀ½´Ü°è·Î À̵¿ µÇ¾ú½À´Ï´Ù. # # # ###################################################################### ### PHP 32bit ÄÄÆÄÀÏ º¯¼ö - Apache 1.3.x & PHP 4.x.x & 32bit PHP_CONF1_32="--prefix=/usr/local/php --with-apxs=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-language=korean --with-kerberos --with-imap-dir --with-imap-ssl --with-tiff-dir --with-pdflib --with-cpdflib --with-mhash --with-mcrypt --with-xml --disable-debug --with-zend-multibyte --with-regex=php --with-mod_charset --with-iconv --with-dbx --with-gdbm --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-zlib --with-curl --enable-mbstring --enable-mbregex --enable-sigchild --enable-ftp --enable-dba --enable-sockets --with-bz2 --enable-ftp --enable-exif --with-openssl --enable-wddx --with-dom --enable-saft-mode --enable-inline-optimization --enable-magic-quotes --enable-track-vars --enable-debugger --enable-sysvmsg --enable-sysvsem --enable-sysvshm" ### PHP 64bit ÄÄÆÄÀÏ º¯¼ö - Apache 1.3.x & PHP 4.x.x & 64bit PHP_CONF1_64="--prefix=/usr/local/php --with-apxs=/usr/local/apache/bin/apxs --with-language=korean --with-kerberos --with-imap-dir --with-imap-ssl --with-mysql=/usr/local/mysql --with-tiff-dir --with-pdflib --with-cpdflib --with-mhash --enable-sockets --with-regex=php --with-mod_charset --enable-track-vars --enable-ftp --enable-modules=so --enable-inline-optimization --disable-debug --with-config-file-path=/usr/local/apache/conf --with-zlib --with-zlib-dir --with-curl --with-iconv --with-dbx --with-gdbm --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-mbstring --enable-mbregex --enable-sigchild --with-xml --enable-dba --with-zend-multibytei --with-bz2 --enable-ftp --enable-exif --with-openssl --enable-wddx --with-dom --enable-saft-mode --enable-magic-quotes --enable-debugger --enable-sysvmsg --enable-sysvsem --enable-sysvshm" ### PHP 32bit ÄÄÆÄÀÏ º¯¼ö - Apache 2.x.x & PHP 5.x.x & 32bit #PHP_CONF2_32="--prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-mysql=/usr/local/mysql --with-language=korean --with-kerberos --with-imap-dir --with-imap-ssl --with-tiff-dir --with-pdflib --with-cpdflib --with-mhash --with-mcrypt --with-xml --disable-debug --with-zend-multibyte --with-regex=php --with-mod_charset --with-iconv --with-dbx --with-gdbm --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --with-zlib --enable-mbstring --enable-mbregex --enable-sigchild --enable-ftp --enable-dba --enable-sockets --enable-saft-mode --enable-inline-optimization --enable-magic-quotes --enable-track-vars --enable-debugger --enable-sysvsem --enable-sysvshm" PHP_CONF2_32="`echo $PHP_CONF1_32 | sed 's/--with-apxs/--with-apxs2/g'`" ### PHP 64bit ÄÄÆÄÀÏ º¯¼ö - Apache 2.x.x & PHP 5.x.x & 6bit #PHP_CONF2_64="--prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with-language=korean --with-kerberos --with-imap-dir --with-imap-ssl --with-mysql=/usr/local/mysql --with-tiff-dir --with-pdflib --with-cpdflib --with-mhash --enable-sockets --with-regex=php --with-mod_charset --enable-track-vars --enable-ftp --enable-modules=so --enable-inline-optimization --disable-debug --with-config-file-path=/usr/local/apache/conf --with-zlib --with-zlib-dir --with-iconv --with-dbx --with-gdbm --with-gd --with-jpeg-dir --with-png-dir --with-freetype-dir --enable-mbstring --enable-mbregex --enable-sigchild --with-xml --enable-dba --with-zend-multibytei --enable-saft-mode --enable-magic-quotes --enable-debugger --enable-sysvsem --enable-sysvshm" PHP_CONF2_64="`echo $PHP_CONF1_64 | sed 's/--with-apxs/--with-apxs2/g'`" #################################################################################################### ########################################## ### ¿ø°Ý ¼³Ä¡ ¼Ò½º Á¢±Ù ÀÎÁõ Á¤º¸ ÀÔ·Â ### ########################################## echo " " echo -e "\\033[01;31m << INPUT RIS Source Auth Info >>" echo -e "\\033[01;32m====================================================================" echo -n -e "\\033[01;32m RIS Auth ID : " read ris_auth_id echo -n -e "\\033[01;32m RIS Auth PW : " read ris_auth_pw echo " " echo -e "\\033[01;31m << RIS Source Auth Info Confirm >>" echo -e "\\033[01;32m====================================================================" echo -e "\\033[01;32m ID = $ris_auth_id" echo -e "\\033[01;32m PW = $ris_auth_pw" echo " " echo -e "\\033[01;32m 1) YES" echo -e "\\033[01;32m 2) NO" echo -e "\\033[01;32m====================================================================" echo -n -e "\\033[01;32m ID, PW is Sure ?? [1,2] : " read ris_auth_confirm if [ "$ris_auth_confirm" = "1" ] || [ "$ris_auth_confirm" = "2" ]; then if [ "$ris_auth_confirm" = "1" ]; then echo " " echo "Install is continued...." elif [ "$fis_auth_confirm" = "2" ]; then echo -e "\\033[01;31m Restart this script !! and Retry Input RIS Source Auth Info !!" echo -e "\\033[00;00m" exit 1 fi else echo -e "\\033[01;31m Invalid Choice. Restart this script !!" echo -e "\\033[00;00m" exit 1 fi echo " " echo " " #################################################################################################### ### OS /etc/redhat-release È®ÀÎ (Redhat9 ¿Í Ÿ OS ±¸ºÐ : wget ¿É¼Ç Â÷ÀÌ ÇؼÒ) WGET_RH9_CHK="`cat /etc/redhat-release | awk -F" " '{print $1 $2 $5}'`" WGET_FC4_CHK="`cat /etc/redhat-release | awk -F" " '{print $1 $4}'`" if [ "$WGET_RH9_CHK" = "RedHat9" ] || [ "$WGET_FC4_CHK" = "Fedora3" ] || [ "$WGET_FC4_CHK" = "Fedora4" ]; then WGET="wget --http-user=$ris_auth_id --http-passwd=$ris_auth_pw" else WGET="wget --user=$ris_auth_id --password=$ris_auth_pw" fi ########################################################################## ############## ############## ############## ¼³Ä¡¿¡ ÇÊ¿äÇÑ ±âº» ȯ°æ º¯¼ö ÁöÁ¤ "³¡" ############## ############## ############## ########################################################################## ############################################################################################################ ## OS Arch Type Á¤ÀÇÇÏ´Â ºÎºÐÀ̸ç, ±âº»ÀûÀ¸·Î ÀÚµ¿À¸·Î °Ë»öµÇ³ª, ÀÚµ¿ °Ë»öÀÌ µÇÁö ¾ÊÀ»°æ¿ì [ÀÚµ¿°Ë»ö] ¼½¼Ç ## Àº ÁÖ¼®Ã³¸®ÇÏ°í, [¼öµ¿°Ë»ö] ¼½¼ÇÀ» È°¼ºÈ­ÇÏ¿©, ´Ù½Ã ½Ãµµ ÇϽʽÿÀ. ############################################################################################################ ##### [ÀÚµ¿¼±ÅÃ] ##### OS_ARCH_TYPE=`uname -i` if [ "$OS_ARCH_TYPE" = "i386" ]; then OS_TYPE="1" elif [ "$OS_ARCH_TYPE" = "x86_64" ]; then OS_TYPE="2" else echo -e "\\033[00;00m" echo -e "\\033[00;31OS * Check 110 line on this script !!!" echo -e "\\033[00;00m" echo exit fi ##### [¼öµ¿¼±ÅÃ] ##### ## 32ºñÆ®, 64ºñÆ® ¼±Åà #echo " " #echo -e "\\033[01;32m 1) 32 Bit" #echo -e "\\033[01;32m 2) 64 Bit" #echo " " #echo -n -e "\\033[01;32m* OS Á¾·ù ¼±Åà : " #read OS_TYPE #echo " " #echo " " ############################################################################################################ if [ "$OS_TYPE" = "1" ] || [ "$OS_TYPE" = "2" ]; then ## MySQL °ü·Ã ±âº» ¶óÀ̺귯¸® Ãß°¡ WORD_IF="`grep \"/usr/local/mysql/include/mysql\" /etc/ld.so.conf | wc -l`" if [ $WORD_IF = 0 ]; then echo "/usr/local/mysql/include/mysql" >> /etc/ld.so.conf fi WORD_IF="`grep \"/usr/local/mysql/lib/mysql\" /etc/ld.so.conf | wc -l`" if [ $WORD_IF = 0 ]; then echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf fi ## ¶óÀ̺귯¸® üũ ldconfig 2> /dev/null ## MySQL ¹öÀü ¼±Åà echo -e "\\033[01;31m<< MySQL Version Choice >>" echo -e "\\033[01;32m====================================================================" echo -e "\\033[01;32m 1) Mysql-$MYSQL_3_X" echo -e "\\033[01;32m 2) Mysql-$MYSQL_4_0" echo -e "\\033[01;32m 3) MySQL-$MYSQL_4_1" echo -e "\\033[01;32m 4) MySQL-$MYSQL_5_0" echo " " echo -n -e "\\033[01;32m* Choice MySQL. [1,2,3,4] : " read MYSQL_S case "$MYSQL_S" in 1) echo " " MYSQL="mysql-$MYSQL_3_X" ;; 2) echo " " MYSQL="mysql-$MYSQL_4_0" ;; 3) echo " " MYSQL="mysql-$MYSQL_4_1" ;; 4) echo " " MYSQL="mysql-$MYSQL_5_0" ;; *) echo " " echo -e "\\033[01;31m MySQL : Invalid Choice. Restart this script." echo -e "\\033[00;00m" exit ;; esac ## MySQL root ºñ¹ø ÀÔ·Â echo " " echo " " echo -e "\\033[01;31m MySQL root password input !!" echo -e "\\033[01;32m====================================================================" echo -n -e "\\033[01;32m MySQL root PW : " read mysql_root_pw_1 echo -n -e "\\033[01;32m MySQL root PW Confirm : " read mysql_root_pw_2 echo if [ "$mysql_root_pw_1" != "$mysql_root_pw_2" ]; then echo -e "\\033[01;31m MySQL root's Password is not matched !! Retry This Script file.... !!" echo -e "\\033[00;00m" exit 1 fi ## MySQL Data µð·ºÅ丮 º¯°æ À¯¹« echo " " echo " " echo -e "\\033[01;31m MySQL Data Directory" echo -e "\\033[01;32m====================================================================" echo -e "\\033[01;32m 1) Default : /usr/local/mysql/data" echo -e "\\033[01;32m 2) Change : Do Input the Mysql New Data Dir !! " echo " " echo -n -e "\\033[01;32m* Choice Setting for Mysql Data Directory. [1,2] : " read MYSQL_DATA_DIR_NUM if [ "$MYSQL_DATA_DIR_NUM" = "1" ]; then echo " " MYSQL_DATA_DIR="/usr/local/mysql/data" echo -n -e "\\033[01;32m* Notice : Installed Mysql Data Dir is $MYSQL_DATA_DIR" elif [ "$MYSQL_DATA_DIR_NUM" = "2" ]; then echo -n -e "\\033[01;32m* Input the MySQL New Data Directory : " read MYSQL_DATA_DIR echo -e "\\033[01;31m << Comfirm MySQL New Data DIR >>" echo -e "\\033[01;32m====================================================================" echo -e "\\033[01;32m New DIR = $MYSQL_DATA_DIR" echo echo -e "\\033[01;32m 1) YES" echo -e "\\033[01;32m 2) NO" echo -e "\\033[01;32m====================================================================" echo " " echo -n -e "\\033[01;32m Your MySQL DATA DIR is Sure ?? [1,2] : " read mysql_data_dir_confirm if [ ! -e `echo $MYSQL_DATA_DIR | awk -F"/" '{print "/"$2}'` ]; then echo -e "\\033[01;31m The MySQL DATA DIR is wrong !! Restart this script !!" echo -e "\\033[00;00m" exit 1 fi if [ "$mysql_data_dir_confirm" = "1" ] || [ "$mysql_data_dir_confirm" = "2" ]; then if [ "$mysql_data_dir_confirm" = "1" ]; then echo " " echo "Install is continued...." elif [ "$mysql_data_dir_confirm" = "2" ]; then echo " " echo -e "\\033[01;31m Restart this script !! and Retry Input the Mysql New Data DIR !!" echo -e "\\033[00;00m" exit 1 fi else echo " " echo -e "\\033[01;31m Invalid Choice. Restart this script !!" echo -e "\\033[00;00m" exit 1 fi else echo -e "\\033[01;31m Invalid Choice. Restart this script !!" echo -e "\\033[00;00m" exit 1 fi echo " " echo " " ############################################################################################################ ###################################### # ¹öÀüº° MySQL ÄÄÆÄÀÏ ¿É¼Ç º¯¼ö ¼³Á¤ # ###################################### ### MYSQL 3.23.x MYSQL_3_X_CONF="--prefix=/usr/local/mysql --localstatedir=$MYSQL_DATA_DIR --with-charset=euc_kr --with-mysql-user=mysql" ### MYSQL 4.0.x ´ë ¹öÀü ÄÄÆÄÀÏ º¯¼ö MYSQL_4_0_CONF="--prefix=/usr/local/mysql --localstatedir=$MYSQL_DATA_DIR --with-charset=euc_kr --with-mysql-user=mysql --with-extra-charsets=all" ### MYSQL 4.1.x ´ë ¹öÀü ÄÄÆÄÀÏ º¯¼ö MYSQL_4_1_EUCKR_CONF="--prefix=/usr/local/mysql --localstatedir=$MYSQL_DATA_DIR --with-charset=euckr --with-mysql-user=mysql --with-extra-charsets=all" MYSQL_4_1_UTF8_CONF="`echo $MYSQL_4_1_EUCKR_CONF | sed 's/euckr/utf8/g'`" ### MYSQL 5.0.x ´ë ¹öÀü ÄÄÆÄÀÏ º¯¼ö MYSQL_5_0_EUCKR_CONF="--prefix=/usr/local/mysql --localstatedir=$MYSQL_DATA_DIR --with-charset=euckr --with-mysql-user=mysql --with-extra-charsets=all" MYSQL_5_0_UTF8_CONF="`echo $MYSQL_5_0_EUCKR_CONF | sed 's/euckr/utf8/g'`" ############################################################################################################ ## MySQL 4.1.x ¶Ç´Â 5.0.x ¿¡¼­ ¾ð¾î ¼±Åà if [ $MYSQL_S = "3" ] || [ $MYSQL_S = "4" ]; then echo " " echo -e "\\033[01;31m MySQL Character-Set Select !!" echo -e "\\033[01;32m====================================================================" echo -n -e "\\033[01;32m [1] EUCKR [2] UTF-8 : " read MYSQL_CHAR_SET if [ $MYSQL_CHAR_SET = "1" ] || [ $MYSQL_CHAR_SET = "2" ]; then if [ $MYSQL_CHAR_SET = "1" ]; then MYSQL_4_1_CONF="`echo $MYSQL_4_1_EUCKR_CONF`" MYSQL_5_0_CONF="`echo $MYSQL_5_0_EUCKR_CONF`" elif [ $MYSQL_CHAR_SET = "2" ]; then MYSQL_4_1_CONF="`echo $MYSQL_4_1_UTF8_CONF`" MYSQL_5_0_CONF="`echo $MYSQL_5_0_UTF8_CONF`" fi else echo -e "\\033[01;31m MySQL Character-Set : Invalid Choice. Restart this script !!" echo -e "\\033[00;00m" exit 1 fi fi ## Apache ¼±Åà echo " " echo -e "\\033[01;31m << Apache Version Choice >> " echo -e "\\033[01;32m====================================================================" echo -e "\\033[01;32m 1) Ver $APACHE1" echo -e "\\033[01;32m 2) Ver $APACHE2" echo -e "\\033[01;32m 3) Ver $APACHE3" echo " " echo -n -e "\\033[01;32m* Choice Web Server. [1,2,3] : " read APACHE_VER if [ "$APACHE_VER" = "1" ] || [ "$APACHE_VER" = "2" ] || [ "$APACHE_VER" = "3" ]; then echo else echo -e "\\033[01;31m Apache : Invalid Choice. Restart this script !!" echo -e "\\033[00;00m" exit 1 fi echo " " echo -e "\\033[01;31m << Real IP Info, in KT-IDC >>" echo -e "\\033[01;32m====================================================================" echo -n -e "\\033[01;32m Input IDC Real IP : " read real_ip_1 echo -n -e "\\033[01;32m Input IDC Real IP Confirm : " read real_ip_2 if [ "$real_ip_1" != "$real_ip_2" ]; then echo -e "\\033[01;31m System Real IP is not matched !! Retry This Script file... !!" echo -e "\\033[00;00m" exit 1 else REAL_IP="$real_ip_1""blank" fi echo " " ## Apache¿¡ mod_ssl ¿¬µ¿ À¯¹« echo " " echo -e "\\033[01;31m << Apache Module mod_ssl >> " echo -e "\\033[01;32m====================================================================" echo -e "\\033[01;32m 1) NO" echo -e "\\033[01;32m 2) YES" echo " " echo -n -e "\\033[01;32m* Choice Your Answer [1,2] : " read mod_ssl_answer if [ "$mod_ssl_answer" = "1" ] || [ "$mod_ssl_answer" = "2" ]; then echo " " else echo -e "\\033[01;31m Apache mod-ssl : Invalid Choice. Restart this script !!" echo -e "\\033[00;00m" exit 1 fi ## PHP ¼±Åà echo " " echo -e "\\033[01;31m << PHP Version Choice >>" echo -e "\\033[01;32m====================================================================" echo -e "\\033[01;32m 1) PHP Ver $PHP4" echo -e "\\033[01;32m 2) PHP Ver $PHP5" echo " " echo -n -e "\\033[01;32m* Choice PHP. [1,2] : " read PHP_VER if [ "$PHP_VER" = "1" ] || [ "$PHP_VER" = "2" ]; then echo else echo -e "\\033[01;31m PHP : Invalid Choice. Restart this script !!" echo -e "\\033[00;00m" exit 1 fi echo -e "\\033[00;00m" # ¼³Ä¡ ¼Ò½º ÀúÀå µð·ºÅ丮 »ý¼º mkdir $SOURCE_DIR; cd $SOURCE_DIR; yum -y remove php* yum -y remove httpd* #rpm -e --nodeps `rpm -qa | egrep "mysql|httpd|php"` rpm -e --nodeps `rpm -qa | egrep "httpd|php"` 2> /dev/null rpm -e --nodeps `rpm -qa | grep mysql | grep -v "^mysql-[0-9]"` 2> /dev/null #MYSQL_SERVER_REMOVE_TMP="`rpm -qa | grep mysql-server | head -n 1`" #rpm -e --nodeps $MYSQL_SERVER_REMOVE_TMP.x86_64 #rpm -e --nodeps $MYSQL_SERVER_REMOVE_TMP.i386 ## YUM GPG Å° Importing rpm --import `find /usr/share/doc/ | grep "RPM-GPG-KEY"` ## APM ¼³Ä¡¿¡ ÇÊ¿äÇÑ µµ±¸ ¼³Ä¡ if [ "$WGET_RH9_CHK" = "RedHat9" ]; then if [ -e /etc/yum-sekorea.conf ]; then yum -c /etc/yum-sekorea.conf -y update yum -c /etc/yum-sekorea.conf -y install krb5-libs yum -c /etc/yum-sekorea.conf -y install libc-client* yum -c /etc/yum-sekorea.conf -y install libc-client-devel* yum -c /etc/yum-sekorea.conf -y install uw-imap-devel yum -c /etc/yum-sekorea.conf -y install openssl yum -c /etc/yum-sekorea.conf -y install openssl-devel yum -c /etc/yum-sekorea.conf -y install mhash yum -c /etc/yum-sekorea.conf -y install mhash-devel yum -c /etc/yum-sekorea.conf -y install libtoo yum -c /etc/yum-sekorea.conf -y install libtool-ltdl yum -c /etc/yum-sekorea.conf -y install libtool-ltdl-devel yum -c /etc/yum-sekorea.conf -y install imap-devel yum -c /etc/yum-sekorea.conf -y install imap yum -c /etc/yum-sekorea.conf -y install zlib-devel yum -c /etc/yum-sekorea.conf -y install zlib yum -c /etc/yum-sekorea.conf -y install freetype-devel yum -c /etc/yum-sekorea.conf -y install freetype yum -c /etc/yum-sekorea.conf -y install libpng-devel yum -c /etc/yum-sekorea.conf -y install libpng yum -c /etc/yum-sekorea.conf -y install libjpeg-devel yum -c /etc/yum-sekorea.conf -y install libjpeg yum -c /etc/yum-sekorea.conf -y install libtiff-devel yum -c /etc/yum-sekorea.conf -y install libtiff yum -c /etc/yum-sekorea.conf -y install gd-devel yum -c /etc/yum-sekorea.conf -y install gd yum -c /etc/yum-sekorea.conf -y install pcre-devel yum -c /etc/yum-sekorea.conf -y install pcre yum -c /etc/yum-sekorea.conf -y install libxml-devel yum -c /etc/yum-sekorea.conf -y install libxml yum -c /etc/yum-sekorea.conf -y install libxml2-devel yum -c /etc/yum-sekorea.conf -y install libxml2 yum -c /etc/yum-sekorea.conf -y install gdbm-devel yum -c /etc/yum-sekorea.conf -y install gdbm yum -c /etc/yum-sekorea.conf -y install ncurses-devel yum -c /etc/yum-sekorea.conf -y install ncurses yum -c /etc/yum-sekorea.conf -y install curl-devel yum -c /etc/yum-sekorea.conf -y install curl yum -c /etc/yum-sekorea.conf -y install expat-devel yum -c /etc/yum-sekorea.conf -y install expat yum -c /etc/yum-sekorea.conf -y install bzip2-devel yum -c /etc/yum-sekorea.conf -y install bzip2-libs yum -c /etc/yum-sekorea.conf -y install bzip2 yum -c /etc/yum-sekorea.conf -y install dovecot else yum -y update yum -y install krb5-libs yum -y install libc-client* yum -y install libc-client-devel* yum -y install uw-imap-devel yum -y install openssl yum -y install openssl-devel yum -y install mhash yum -y install mhash-devel yum -y install libtool yum -y install libtool-ltdl yum -y install libtool-ltdl-devel yum -y install imap-devel yum -y install imap yum -y install zlib-devel yum -y install zlib yum -y install freetype-devel yum -y install freetype yum -y install libpng-devel yum -y install libpng yum -y install libjpeg-devel yum -y install libjpeg yum -y install libtiff-devel yum -y install libtiff yum -y install gd-devel yum -y install gd yum -y install pcre-devel yum -y install pcre yum -y install libxml-devel yum -y install libxml yum -y install libxml2-devel yum -y install libxml2 yum -y install gdbm-devel yum -y install gdbm yum -y install ncurses-devel yum -y install ncurses yum -y install curl-devel yum -y install curl yum -y install expat-devel yum -y install expat yum -y install bzip2-devel yum -y install bzip2-libs yum -y install bzip2 yum -y install dovecot fi else if [ -e /etc/yum-sekorea.conf ]; then yum -c /etc/yum-sekorea.conf -y update yum -c /etc/yum-sekorea.conf -y install krb5-libs libc-client libc-client-devel uw-imap-devel openssl openssl-devel mhash mhash-devel libtool libtool-ltdl libtool-ltdl-devel zlib-devel zlib freetype-devel freetype libpng-devel libpng libjpeg-devel libjpeg libtiff-devel libtiff gd-devel gd pcre-devel pcre libxml2-devel libxml2 libxml-devel libxml gdbm-devel gdbm ncurses-devel ncurses imap-devel imap curl-devel curl expat-devel expat bzip2-devel bzip2-libs bzip2 dovecot else yum -y update yum -y install krb5-libs libc-client libc-client-develuw-imap-devel openssl openssl-devel mhash mhash-devel libtool libtool-ltdl libtool-ltdl-devel zlib-devel zlib freetype-devel freetype libpng-devel libpng libjpeg-devel libjpeg libtiff-devel libtiff gd-devel gd pcre-devel pcre libxml2-devel libxml2 libxml-devel libxml gdbm-devel gdbm ncurses-devel ncurses imap-devel imap curl-devel curl expat-devel expat bzip2-devel bzip2-libs bzip2 dovecot fi fi rpm -e mysql --nodeps ## x86_64 ½Ã½ºÅÛ¿¡¼­ PHP ±×·¡ÇÈ °ü·Ã ¶óÀ̺귯¸® ¹× kerberos, imap ¶óÀ̺귯¸® ¸µÅ© ¼¼Æà if [ "$OS_TYPE" = "2" ]; then ln -sf /usr/lib64/libjpeg.so /usr/lib/libjpeg.so ln -sf /usr/lib64/libpng12.a /usr/lib/libpng12.a ln -sf /usr/lib64/libfreetype.so /usr/lib/libfreetype.so ############ ([Cent 64bit], [Fedora 5 64bit] ÀÌÇÏ ¿¡¼­ ¿¡·¯ ¹ß»ý ÇØ°áÃ¥) ############ ## ¹ß»ý ¿øÀÎ : 64bit¿ë(/usr/lib64/ÇÏÀ§¿¡)Àº Á¸ÀçÇϳª, ## 32bit¿ë(/usr/lib/ÇÏÀ§¿¡)Àº Cent¿¡¼­ Á¸ÀçÇÏÁö ¾ÊÀ½. ############################################################ if [ "$CHK_OS_NAME" = "CentOS" ]; then ln -sf /usr/lib64/libtiff.so /usr/lib/libtiff.so ln -sf /usr/lib64/libtiffxx.so /usr/lib/libtiffxx.so ln -sf /usr/lib64/libpng.so /usr/lib/libpng.so ln -sf /usr/lib64/libpng12.so /usr/lib/libpng12.so ## PHP : --wiht-imap ¿É¼Ç »ç¿ëÀ» À§ÇÑ ¶óÀ̺귯¸® ¸µÅ© ó¸® (Cent °è¿­ 64bit ÇØ´ç) if [ "$OS_TYPE" = "2" ]; then ln -s /usr/lib64/libc-client.a /usr/lib/libc-client.a fi fi if [ "$CHK_OS_NAME" = "Fedora" ] && [ "$CHK_OS_GRADE" -le "5" ]; then ln -sf /usr/lib64/libtiff.so /usr/lib/libtiff.so ln -sf /usr/lib64/libtiffxx.so /usr/lib/libtiffxx.so ln -sf /usr/lib64/libpng.so /usr/lib/libpng.so ln -sf /usr/lib64/libpng12.so /usr/lib/libpng12.so fi ##################################################################################### ## 64bit ±â¹Ý¿¡¼­ kerberos ¸µÅ© ó¸® KRB5_LIBS_64_FILES=`rpm -ql krb5-libs.x86_64 | grep "/usr/lib64/lib"` for FILE_LISTS_TMP in $KRB5_LIBS_64_FILES do if [ ! -L $FILE_LISTS_TMP ]; then KRB5_LIBS_32_FILES=`echo $FILE_LISTS_TMP | sed -e 's/\/lib64\//\/lib\//g' | awk -F"." '{print $1"."$2}'` ln -s $FILE_LISTS_TMP $KRB5_LIBS_32_FILES fi done ##################################################################################### fi ################################## ######### APACHE INSTALL ######### ################################## ########################################################################### ## 64bit ½Ã½ºÅÛ¿¡¼­, libexpat.so ¶óÀ̹ö·¯¸® ¸µÅ© ¿À·ù ¹®Á¦ ó¸® ±¸¹® if [ "$OS_TYPE" = "2" ] && [ \( "$APACHE_VER" = "2" \) -o \( "$APACHE_VER" = "3" \) ]; then if [ \( "$CHK_OS_NAME" = "Fedora" \) -a \( $CHK_OS_GRADE -ge 6 \) ] || [ \( "$CHK_OS_NAME" = "CentOS" \) -a \( $CHK_OS_GRADE -ge 5 \) ]; then ln -sf /usr/lib64/libexpat.so /usr/lib/libexpat.so fi fi ########################################################################### if [ "$mod_ssl_answer" = "1" ]; then if [ "$APACHE_VER" = "1" ]; then ## Apache Ver 1.3.x DSO ¼³Ä¡ cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[Apache Web Server Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$APACHE1.tar.gz; tar zxvf $APACHE1.tar.gz; cd $APACHE1; sed -i "s/#define HARD_SERVER_LIMIT 256/#define HARD_SERVER_LIMIT 2048/g" ./src/include/httpd.h echo " " ./configure $APACHE1_CONF make; make install; echo "--- /etc/rc.d/init.d/apachectl ---" >> /usr/local/apache/bin/apachectl; echo "# chkconfig: - 92 92 " >> /usr/local/apache/bin/apachectl; echo "# description: Apache Web Server Version : $APACHE1 " >> /usr/local/apache/bin/apachectl; cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/; chkconfig --add apachectl; chkconfig --level 345 apachectl on; elif [ "$APACHE_VER" = "2" ]; then ## httpd Ver 2.0.x DOS ¼³Ä¡ cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[Apache Web Server Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$APACHE2.tar.gz; tar zxvf $APACHE2.tar.gz; cd $APACHE2; sed -i "s/#define DEFAULT_SERVER_LIMIT 256/#define DEFAULT_SERVER_LIMIT 2048/g" ./server/mpm/prefork/prefork.c sed -i "s/#define DEFAULT_SERVER_LIMIT 16/#define DEFAULT_SERVER_LIMIT 32/g" ./server/mpm/worker/worker.c echo " " ./configure $APACHE2_CONF make; make install; echo "--- /etc/rc.d/init.d/apachectl ---" >> /usr/local/apache/bin/apachectl; echo "# chkconfig: - 92 92 " >> /usr/local/apache/bin/apachectl; echo "# description: Apache Web Server Version : $APACHE2 " >> /usr/local/apache/bin/apachectl; cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/; chkconfig --add apachectl; chkconfig --level 345 apachectl on; else ## httpd Ver 2.2.x DOS ¼³Ä¡ cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[Apache Web Server Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$APACHE3.tar.gz; tar zxvf $APACHE3.tar.gz; cd $APACHE3; sed -i "s/#define DEFAULT_SERVER_LIMIT 256/#define DEFAULT_SERVER_LIMIT 2048/g" ./server/mpm/prefork/prefork.c sed -i "s/#define DEFAULT_SERVER_LIMIT 16/#define DEFAULT_SERVER_LIMIT 64/g" ./server/mpm/worker/worker.c echo " " ./configure $APACHE3_CONF make; make install; echo "--- /etc/rc.d/init.d/apachectl ---" >> /usr/local/apache/bin/apachectl; echo "# chkconfig: - 92 92 " >> /usr/local/apache/bin/apachectl; echo "# description: Apache Web Server Version : $APACHE3 " >> /usr/local/apache/bin/apachectl; cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/; chkconfig --add apachectl; chkconfig --level 345 apachectl on; fi elif [ "$mod_ssl_answer" = "2" ]; then if [ "$APACHE_VER" = "1" ]; then ## Apache Ver 1.3.x DSO ¼³Ä¡ cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[Apache Web Server Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$APACHE1.tar.gz; tar zxvf $APACHE1.tar.gz; ## mod-ssl ¼³Ä¡ $WGET $SOURCE_ADDR/$MOD_SSL.tar.gz; tar zxvf $MOD_SSL.tar.gz cd $MOD_SSL; if [ "$OS_TYPE" = "2" ] && [ "$CHK_OS_NAME" = "CentOS" ]; then ln -s /usr/lib64/libcrypto.a /usr/lib/libcrypto.a ln -s /usr/lib64/libcrypto.so /usr/lib/libcrypto.so ln -s /usr/lib64/libssl.a /usr/lib/libssl.a ln -s /usr/lib64/libssl.so /usr/lib/libssl.so ln -s /usr/lib64/pkgconfig/openssl.pc /usr/lib/pkgconfig/openssl.pc fi ./configure --prefix=/usr/local/apache --with-apache=$SOURCE_DIR/$APACHE1 --with-ssl=SYSTEM cd $SOURCE_DIR/$APACHE1 sed -i "s/#define HARD_SERVER_LIMIT 256/#define HARD_SERVER_LIMIT 2048/g" ./src/include/httpd.h echo " " # export SSL_BASE="SYSTEM" # export LDFLAGS="-L/lib" # export CPPFLAGS="-l/usr" export CFLAGS="-I/usr/kerberos/include -L/usr/kerberos/lib" ./configure `echo $APACHE1_CONF | sed -e 's/--enable-module=so/--enable-module=so --enable-module=ssl/g'` make; make install; # unset SSL_BASE LDFLAGS CPPFLAGS cp -arp /usr/local/apache/conf/ssl.key/server.key /usr/local/apache/conf/ssl.key/server.key.orig openssl genrsa 1024 > /usr/local/apache/conf/ssl.key/server.key MOD_SSL_CONF_START_LINE="`grep -n \"SSL Global Context\" /usr/local/apache/conf/httpd.conf | awk -F\":\" '{print $1}'`" sed -i "${MOD_SSL_CONF_START_LINE},$ d" /usr/local/apache/conf/httpd.conf $WGET $SOURCE_ADDR/apache_1.3.x_mod-ssl.conf -O /usr/local/apache/conf/mod-ssl.conf echo "## Secure (SSL/TLS) connections Setting Files" >> /usr/local/apache/conf/httpd.conf echo "#include /usr/local/apache/conf/mod-ssl.conf" >> /usr/local/apache/conf/httpd.conf echo "--- /etc/rc.d/init.d/apachectl ---" >> /usr/local/apache/bin/apachectl; echo "# chkconfig: - 92 92 " >> /usr/local/apache/bin/apachectl; echo "# description: Apache Web Server Version : $APACHE1 " >> /usr/local/apache/bin/apachectl; cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/; chkconfig --add apachectl; chkconfig --level 345 apachectl on; elif [ "$APACHE_VER" = "2" ]; then ## httpd Ver 2.0.x DSO ¼³Ä¡ cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[Apache Web Server Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$APACHE2.tar.gz; tar zxvf $APACHE2.tar.gz; cd $APACHE2; sed -i "s/#define DEFAULT_SERVER_LIMIT 256/#define DEFAULT_SERVER_LIMIT 2048/g" ./server/mpm/prefork/prefork.c sed -i "s/#define DEFAULT_SERVER_LIMIT 16/#define DEFAULT_SERVER_LIMIT 64/g" ./server/mpm/worker/worker.c echo " " export CFLAGS="-I/usr/kerberos/include -L/usr/kerberos/lib" ./configure `echo $APACHE2_CONF | sed -e 's/--with-mpm=worker/--with-mpm=worker --enable-ssl/g'` make; make install; MOD_SSL_CONF_START_LINE="`grep -n \"\" /usr/local/apache/conf/httpd.conf | awk -F\":\" '{print $1}'`" MOD_SSL_CONF_STOP_LINE="`expr $MOD_SSL_CONF_START_LINE \+ 2`" sed -i "${MOD_SSL_CONF_START_LINE},${MOD_SSL_CONF_STOP_LINE}s/^/#/g" /usr/local/apache/conf/httpd.conf mkdir /usr/local/apache/conf/ssl.key mkdir /usr/local/apache/conf/ssl.crt chmod 600 /usr/local/apache/conf/ssl.key /usr/local/apache/conf/ssl.crt openssl genrsa 1024 > /usr/local/apache/conf/ssl.key/server.key cp -arp /usr/local/apache/conf/ssl.key/server.key /usr/local/apache/conf/ssl.key/server.key.orig echo "--- /etc/rc.d/init.d/apachectl ---" >> /usr/local/apache/bin/apachectl; echo "# chkconfig: - 92 92 " >> /usr/local/apache/bin/apachectl; echo "# description: Apache Web Server Version : $APACHE2 " >> /usr/local/apache/bin/apachectl; cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/; chkconfig --add apachectl; chkconfig --level 345 apachectl on; else ## httpd Ver 2.2.x DSO ¼³Ä¡ cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[Apache Web Server Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$APACHE3.tar.gz; tar zxvf $APACHE3.tar.gz; cd $APACHE3; sed -i "s/#define DEFAULT_SERVER_LIMIT 256/#define DEFAULT_SERVER_LIMIT 2048/g" ./server/mpm/prefork/prefork.c sed -i "s/#define DEFAULT_SERVER_LIMIT 16/#define DEFAULT_SERVER_LIMIT 64/g" ./server/mpm/worker/worker.c echo " " export CFLAGS="-I/usr/kerberos/include -L/usr/kerberos/lib" ./configure `echo $APACHE3_CONF | sed -e 's/--with-mpm=worker/--with-mpm=worker --enable-ssl/g'` make; make install; cp -arp /usr/local/apache/conf/server.key /usr/local/apache/conf/server.key.orig openssl genrsa 1024 > /usr/local/apache/conf/server.key echo "--- /etc/rc.d/init.d/apachectl ---" >> /usr/local/apache/bin/apachectl; echo "# chkconfig: - 92 92 " >> /usr/local/apache/bin/apachectl; echo "# description: Apache Web Server Version : $APACHE3 " >> /usr/local/apache/bin/apachectl; cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/; chkconfig --add apachectl; chkconfig --level 345 apachectl on; fi fi ################################# ######### MYSQL INSTALL ######### ################################# ## MySQL ¼³Ä¡ case "$MYSQL_S" in # MySQL-3.X.X install 1) cd $SOURCE_DIR; echo " "; echo -e "\\033[01;31m[MySQL DataBase Install]"; echo -e "\\033[00;00m"; sleep 1 echo " "; $WGET $SOURCE_ADDR/$MYSQL.tar.gz; tar zxvf $MYSQL.tar.gz; cd $MYSQL; groupadd -g 400 mysql; useradd -u400 -g400 -d /usr/local/mysql -s /bin/false mysql; if [ "$PHP_VER" = "2" ]; then ./configure `echo $MYSQL_3_X_CONF | sed -e 's/--prefix=\/usr\/local\/mysql/--prefix=\/usr\/local\/mysql --enable-thread-safe-client/g'`; else ./configure $MYSQL_3_X_CONF fi make; make install; sleep 1 # $SOURCE_DIR/$MYSQL/scripts/mysql_install_db; # chown -R mysql:mysql /usr/local/mysql; # cp $SOURCE_DIR/$MYSQL/support-files/my-huge.cnf /etc/my.cnf; # cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld; ;; # MySQL-4.0.x install 2) # if [ "$CHK_OS_NAME" = "Fedora" ] && [ $CHK_OS_GRADE -ge 4 ]; then if [ \( "$CHK_OS_NAME" = "Fedora" \) -a \( $CHK_OS_GRADE -ge 4 \) ] || [ \( "$CHK_OS_NAME" = "CentOS" \) -a \( $CHK_OS_GRADE -ge 5 \) ]; then echo "/* Linuxthreads */" >> /usr/include/pthread.h fi cd $SOURCE_DIR; echo " "; echo -e "\\033[01;31m[MySQL DataBase Install]"; echo -e "\\033[00;00m"; sleep 1 echo " "; $WGET $SOURCE_ADDR/$MYSQL.tar.gz; tar zxvf $MYSQL.tar.gz; cd $MYSQL; groupadd -g 400 mysql; useradd -u400 -g400 -d /usr/local/mysql -s /bin/false mysql; if [ "$PHP_VER" = "2" ]; then ./configure `echo $MYSQL_4_0_CONF | sed -e 's/--prefix=\/usr\/local\/mysql/--prefix=\/usr\/local\/mysql --enable-thread-safe-client/g'`; else ./configure $MYSQL_4_0_CONF fi make; make install; sleep 1 # $SOURCE_DIR/$MYSQL/scripts/mysql_install_db; # chown -R mysql:mysql /usr/local/mysql; # cp $SOURCE_DIR/$MYSQL/support-files/my-huge.cnf /etc/my.cnf; # cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld; ;; # MySQL-4.1.x install 3) cd $SOURCE_DIR; echo "/* Linuxthreads */" >> /usr/include/pthread.h echo " "; echo -e "\\033[01;31m[MySQL DataBase Install]"; echo -e "\\033[00;00m"; sleep 1 echo " "; $WGET $SOURCE_ADDR/$MYSQL.tar.gz; tar zxvf $MYSQL.tar.gz; cd $MYSQL; groupadd -g 400 mysql; useradd -u400 -g400 -d /usr/local/mysql -s /bin/false mysql; if [ "$PHP_VER" = "2" ]; then ./configure `echo $MYSQL_4_1_CONF | sed -e 's/--prefix=\/usr\/local\/mysql/--prefix=\/usr\/local\/mysql --enable-thread-safe-client/g'`; else ./configure $MYSQL_4_1_CONF fi make; make install; sleep 1 # $SOURCE_DIR/$MYSQL/scripts/mysql_install_db; # chown -R mysql:mysql /usr/local/mysql; # cp $SOURCE_DIR/$MYSQL/support-files/my-huge.cnf /etc/my.cnf; # cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld; ;; # MySQL-5.0.x install 4) cd $SOURCE_DIR; echo " "; echo -e "\\033[01;31m[MySQL DataBase Install]"; echo -e "\\033[00;00m"; sleep 1 echo " "; $WGET $SOURCE_ADDR/$MYSQL.tar.gz; tar zxvf $MYSQL.tar.gz; cd $MYSQL; groupadd -g 400 mysql; useradd -u400 -g400 -d /usr/local/mysql -s /bin/false mysql; if [ "$PHP_VER" = "2" ]; then ./configure `echo $MYSQL_5_0_CONF | sed -e 's/--prefix=\/usr\/local\/mysql/--prefix=\/usr\/local\/mysql --enable-thread-safe-client/g'`; else ./configure $MYSQL_5_0_CONF fi make; make install; sleep 1 # $SOURCE_DIR/$MYSQL/scripts/mysql_install_db; # chown -R mysql:mysql /usr/local/mysql; # cp $SOURCE_DIR/$MYSQL/support-files/my-huge.cnf /etc/my.cnf; # cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld; ;; esac ######## MySQL ¼³Ä¡ÈÄ ¸¶¹«¸® ÀÛ¾÷ ######### $SOURCE_DIR/$MYSQL/scripts/mysql_install_db; chown -R mysql:mysql /usr/local/mysql; chown -R mysql.mysql $MYSQL_DATA_DIR cp $SOURCE_DIR/$MYSQL/support-files/my-huge.cnf /etc/my.cnf; cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld; chmod 700 /etc/init.d/mysqld chown root.root /etc/init.d/mysqld chkconfig --add mysqld chmod 711 /usr/local/mysql chmod 700 $MYSQL_DATA_DIR chmod 751 /usr/local/mysql/bin chmod 750 /usr/local/mysql/bin/* chmod 755 /usr/local/mysql/bin/mysql chmod 755 /usr/local/mysql/bin/mysqldump ## MySQL RPM ÀÇ lib ÆÄÀϵé -> ¼Ò½º ÄÄÆÄÀÏ MySQL lib ÆÄÀÏ·Î ´ëü(µ¤¾î¾¸) #\cp -ar /usr/local/mysql/lib/mysql /usr/lib/ #if [ "$OS_TYPE" = "2" ]; then # \cp -ar /usr/local/mysql/lib/mysql /usr/lib64/ #fi sed -i "s/mysql:!!:/mysql:*:/g" /etc/shadow ## mysql, mysqldump ¸µÅ©Ã³¸® WORD_IF="`grep \"alias mysqladmin='/usr/local/mysql/bin/mysqladmin'\" /root/.bashrc | wc -l`" if [ $WORD_IF = 0 ]; then echo "alias mysqladmin='/usr/local/mysql/bin/mysqladmin'" >> /root/.bashrc fi WORD_IF="`grep \"alias mysqldump='/usr/local/mysql/bin/mysqldump'\" /etc/bashrc | wc -l`" if [ $WORD_IF = 0 ]; then echo "alias mysqldump='/usr/local/mysql/bin/mysqldump'" >> /etc/bashrc fi WORD_IF="`grep \"alias mysql='/usr/local/mysql/bin/mysql'\" /etc/bashrc | wc -l`" if [ $WORD_IF = 0 ]; then echo "alias mysql='/usr/local/mysql/bin/mysql'" >> /etc/bashrc fi # ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql > /dev/null 2>&1 # ln -s /usr/local/mysql/bin/mysqldump /usr/bin/mysqldump > /dev/null 2>&1 #### my.cnf ¼³Á¤ Ãß°¡, º¸¿Ï #### #if [ "$MYSQL_S" = "3" ] || [ "$MYSQL_S" = "4" ]; then # sed -i '/\[client\]/a default-character-set=euckr' /etc/my.cnf # sed -i '/\[mysqld\]/a default-character-set=euckr' /etc/my.cnf # sed -i '/\[mysqldump\]/a default-character-set=euckr' /etc/my.cnf # sed -i '/\[mysql\]/a default-character-set=euckr' /etc/my.cnf # sed -i '/\[isamchk\]/a default-character-set=euckr' /etc/my.cnf # sed -i '/\[myisamchk\]/a default-character-set=euckr' /etc/my.cnf # sed -i '/\[mysqlhotcopy\]/a default-character-set=euckr' /etc/my.cnf #fi #if [ "$MYSQL_S" = "2" ]; then # sed -i '/\[client\]/a default-character-set=euc_kr' /etc/my.cnf # sed -i '/\[mysqld\]/a default-character-set=euc_kr' /etc/my.cnf # sed -i '/\[mysqldump\]/a default-character-set=euc_kr' /etc/my.cnf # sed -i '/\[mysql\]/a default-character-set=euc_kr' /etc/my.cnf # sed -i '/\[isamchk\]/a default-character-set=euc_kr' /etc/my.cnf # sed -i '/\[myisamchk\]/a default-character-set=euc_kr' /etc/my.cnf # sed -i '/\[mysqlhotcopy\]/a default-character-set=euc_kr' /etc/my.cnf #fi ### ±âŸ APM °ü·Ã µµ±¸ ¼³Ä¡ ## mhash(./configure && make && make install) cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[mhash Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/mhash-0.9.7.1.tar.gz; tar zxvf mhash-0.9.7.1.tar.gz; cd mhash-0.9.7.1; ./configure && make && make install; ## mcrypt(./configure && make && make install) cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[mcrypt Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/libmcrypt-2.5.7.tar.gz; tar zxvf libmcrypt-2.5.7.tar.gz; cd libmcrypt-2.5.7; ./configure && make && make install; ## ClibPDF cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[clibpdf Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/clibpdf202r1.tar.gz; tar zxvf clibpdf202r1.tar.gz; cd ClibPDF/source; mv Makefile Makefile.orig; cp Makefile.Linux Makefile; sed -i "s/CFLAGS=-Wall -g -DLinux/CFLAGS=-Wall -g -DLinux -fPIC/g" Makefile; make lib && make install; ## pdflib( ./configure && make && make install) cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[pdflib Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/pdflib-4.0.3.tar.gz; tar zxvf pdflib-4.0.3.tar.gz; cd pdflib-4.0.3; ./configure && make && make install; ## ¶óÀ̺귯¸® üũ ldconfig ################################### ########## PHP INSTALL ############ ################################### ## PHP-5.x.x ¼³Ä¡½Ã libxml2 ¹öÀü üũ ¹× ¾÷µ¥ÀÌÆ® if [ "$PHP_VER" = "2" ]; then CHECK_NUM=`rpm -qa | grep libxml2 | head -n1 | awk -F"." '{print $2}'` if [ $CHECK_NUM -lt 6 ]; then $WGET $SOURCE_ADDR/libxml2-2.6.16-6.src.rpm rpmbuild --rebuild libxml2-2.6.16-6.src.rpm rm -f ibxml2-2.6.16-6.src.rpm # mv /usr/src/redhat/RPMS/`uname -a | awk -F" " '{print $14}'`/libxml2* $SOURCE_DIR mv /usr/src/redhat/RPMS/`uname -i`/libxml2* $SOURCE_DIR rpm -Uvh $SOURCE_DIR/libxml2* fi fi ########### 32bit PHP-Zend ########### if [ "$OS_TYPE" = "1" ]; then if [ "$PHP_VER" = "1" ]; then # PHP4 install cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[PHP Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$PHP4.tar.gz; tar zxvf $PHP4.tar.gz; cd $PHP4; if [ "$APACHE_VER" = "1" ]; then ./configure $PHP_CONF1_32 else ./configure $PHP_CONF2_32 fi make; make install; cp php.ini-dist /usr/local/apache/conf/php.ini; # ZendOptimizer install cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[ZendOptimizer Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$Zend32.tar.gz; tar zxvf $Zend32.tar.gz; cd $Zend32; ./install.sh cd $SOURCE_DIR fi if [ "$PHP_VER" = "2" ]; then # PHP5 install cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[PHP Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$PHP5.tar.gz; tar zxvf $PHP5.tar.gz; cd $PHP5; if [ "$APACHE_VER" = "1" ]; then ./configure $PHP_CONF1_32 else ./configure $PHP_CONF2_32 fi make; make install; cp php.ini-dist /usr/local/apache/conf/php.ini; # ZendOptimizer install cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[ZendOptimizer Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$Zend32.tar.gz; tar zxvf $Zend32.tar.gz; cd $Zend32; ./install.sh cd $SOURCE_DIR fi fi ########### 64bit PHP-Zend ########### if [ "$OS_TYPE" = "2" ]; then if [ "$PHP_VER" = "1" ]; then # PHP4 install cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[PHP Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$PHP4.tar.gz; tar zxvf $PHP4.tar.gz; cd $PHP4; if [ "$APACHE_VER" = "1" ]; then ./configure $PHP_CONF1_64 else ./configure $PHP_CONF2_64 fi make; make install; cp php.ini-dist /usr/local/apache/conf/php.ini; # ZendOptimizer install cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[ZendOptimizer Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$Zend64.tar.gz; tar zxvf $Zend64.tar.gz; cd $Zend64; ./install.sh cd $SOURCE_DIR fi if [ "$PHP_VER" = "2" ]; then # PHP5 install cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[PHP Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$PHP5.tar.gz; tar zxvf $PHP5.tar.gz; cd $PHP5; if [ "$APACHE_VER" = "1" ]; then ./configure $PHP_CONF1_64 else ./configure $PHP_CONF2_64 fi make; make install; cp php.ini-dist /usr/local/apache/conf/php.ini; # ZendOptimizer install cd $SOURCE_DIR; echo " " echo -e "\\033[01;31m[ZendOptimizer Install]" echo -e "\\033[00;00m" sleep 1 echo " " $WGET $SOURCE_ADDR/$Zend64.tar.gz; tar zxvf $Zend64.tar.gz; cd $Zend64; ./install.sh cd $SOURCE_DIR fi fi ######## MySQL ¼³Ä¡ÈÄ ¸¶¹«¸® ÀÛ¾÷ ¹Ýº¹ (data µð·ºÅ丮 ¹Ì»ý¼º½Ã) ######### if [ ! -s $MYSQL_DATA_DIR ]; then $SOURCE_DIR/$MYSQL/scripts/mysql_install_db; chown -R mysql:mysql /usr/local/mysql; chown -R mysql:mysql $MYSQL_DATA_DIR cp $SOURCE_DIR/$MYSQL/support-files/my-huge.cnf /etc/my.cnf; cp /usr/local/mysql/share/mysql/mysql.server /etc/init.d/mysqld; chmod 700 /etc/init.d/mysqld chown root.root /etc/init.d/mysqld chkconfig --add mysqld chmod 711 /usr/local/mysql chmod 700 $MYSQL_DATA_DIR chmod 751 /usr/local/mysql/bin chmod 750 /usr/local/mysql/bin/* chmod 755 /usr/local/mysql/bin/mysql chmod 755 /usr/local/mysql/bin/mysqldump ## MySQL RPM ÀÇ lib ÆÄÀϵé -> ¼Ò½º ÄÄÆÄÀÏ MySQL lib ÆÄÀÏ·Î ´ëü(µ¤¾î¾¸) #\cp -ar /usr/local/mysql/lib/mysql /usr/lib/ #if [ "$OS_TYPE" = "2" ]; then # \cp -ar /usr/local/mysql/lib/mysql /usr/lib64/ #fi sed -i 's/mysql:!!:/mysql:*:/g' /etc/shadow ## mysql, mysqldump ¸µÅ©Ã³¸® # sed -i "/alias mv='mv -iv'/a alias mysqladmin='/usr/local/mysql/bin/mysqladmin'" /root/.bashrc # sed -i "/alias mv='mv -iv'/a alias mysqldump='/usr/local/mysql/bin/mysqldump'" /root/.bashrc # sed -i "/alias mv='mv -iv'/a alias mysql='/usr/local/mysql/bin/mysql'" /root/.bashrc # ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql > /dev/null 2>&1 # ln -s /usr/local/mysql/bin/mysqldump /usr/bin/mysqldump > /dev/null 2>&1 fi #### php.ini º¸¾È°ü·Ã ±âº»°ª ¼öÁ¤ #### sed -i 's/register_globals = Off/register_globals = On/g' /usr/local/apache/conf/php.ini sed -i 's/;upload_tmp_dir =/upload_tmp_dir = \/tmp/g' /usr/local/apache/conf/php.ini sed -i 's/upload_max_filesize = 2M/upload_max_filesize = 10M/g' /usr/local/apache/conf/php.ini sed -i 's/post_max_size = 8M/post_max_size = 10M/g' /usr/local/apache/conf/php.ini sed -i 's/memory_limit = 8M/memory_limit = 10M/g' /usr/local/apache/conf/php.ini sed -i 's/allow_url_fopen = On/allow_url_fopen = Off/g' /usr/local/apache/conf/php.ini sed -i 's/log_errors = Off/log_errors = On/g' /usr/local/apache/conf/php.ini sed -i 's/;error_log = syslog/error_log = syslog/g' /usr/local/apache/conf/php.ini #### Apache 1.3.x ¼³Á¤ ¼öÁ¤ ¹×, httpd.conf ÆÄÀÏ ¼öÁ¤, mod_ssl È°¼ºÈ­ Á¤º¸ ÆÄÀÏ »ý¼º #### if [ "$APACHE_VER" = "1" ]; then $WGET $SOURCE_ADDR/mod_url-1.c mv $SOURCE_DIR/mod_url-1.c $SOURCE_DIR/mod_url.c $WGET $SOURCE_ADDR/mod_url.conf -O /usr/local/apache/conf/mod_url.conf /usr/local/apache/bin/apxs -aic $SOURCE_DIR/mod_url.c sed -i "/# End of browser customization directives/a include /usr/local/apache/conf/mod_url.conf" /usr/local/apache/conf/httpd.conf if [ "$REAL_IP" != "blank" ]; then REAL_IP=`echo $REAL_IP | sed -e "s/blank//g"` sed -i "/#ServerName www.example.com/a ServerName $REAL_IP" /usr/local/apache/conf/httpd.conf fi sed -i "s/`grep \"^User \" /usr/local/apache/conf/httpd.conf`/User nobody/g" /usr/local/apache/conf/httpd.conf sed -i "s/`grep \"^Group \" /usr/local/apache/conf/httpd.conf`/Group nobody/g" /usr/local/apache/conf/httpd.conf sed -i "s/MinSpareServers 5/MinSpareServers 20/g" /usr/local/apache/conf/httpd.conf sed -i "s/MaxSpareServers 10/MaxSpareServers 100/g" /usr/local/apache/conf/httpd.conf sed -i "s/StartServers 5/StartServers 30/g" /usr/local/apache/conf/httpd.conf sed -i "s/MaxKeepAliveRequests 100/MaxKeepAliveRequests 10000/g" /usr/local/apache/conf/httpd.conf sed -i "s/MaxClients 150/MaxClients 512/g" /usr/local/apache/conf/httpd.conf sed -i "/MaxClients 512/i ## [È®ÀÎ] MaxClients Limit : 1024 " /usr/local/apache/conf/httpd.conf rm -rf /usr/local/apache/htdocs/index.html*; cp -arp /usr/local/apache/conf/httpd.conf /usr/local/apache/conf/httpd.conf.save; sed -i 's/DirectoryIndex index.html/DirectoryIndex index.html index.htm index.php index.php3 index.php4 index.php5 index.phtml index.cgi index.jsp/g' /usr/local/apache/conf/httpd.conf sed -i '/AddType application\/x-tar .tgz/a # PHP Enable' /usr/local/apache/conf/httpd.conf sed -i '/# PHP Enable/a AddType application/x-httpd-php .html .htm .php .php3 .php4 .php5 .phtml .cgi .inc' /usr/local/apache/conf/httpd.conf sed -i '/AddType application\/x-httpd-php .html .htm .php .php3 .php4 .php5 .phtml .cgi .inc/a AddType application/x-httpd-php-source .phps' /usr/local/apache/conf/httpd.conf sed -i 's/#AddHandler cgi-script .cgi/AddHandler cgi-script .cgi/g' /usr/local/apache/conf/httpd.conf echo " AllowOverride All Options +ExecCGI Order allow,deny Allow from all " >> /usr/local/apache/conf/httpd.conf echo "" > /usr/local/apache/htdocs/index.php; if [ "$mod_ssl_answer" = "2" ]; then echo "TEST ÀÎÁõÅ° »ý¼º ¸í·É ===================== apachectl startssl ½ÇÇà½Ã ºñ¹Ð¹øÈ£ ¾øÀ½ : # openssl genrsa 1024 > /usr/local/apache/conf/ssl.key/server.key apachectl startssl ½ÇÇà½Ã ºñ¹Ð¹øÈ£ ÀÖÀ½ : # openssl genrsa -des3 1024 > /usr/local/apache/conf/ssl.key/server.key TESTÀÎÁõ¿ä±¸¼­ »ý¼º ¸í·É ======================== # openssl req -new -x509 -days 365 -key /usr/local/apache/conf/ssl.key/server.key -out /usr/local/apache/conf/ssl.crt/server.crt * ¼³Ä¡ÈÄ, À§ÀÇ °úÁ¤À» °ÅÄ£ÈÄ, /usr/local/apache/conf/httpd.conf ÆÄÀÏ ¸¶Áö¸· ³¡ºÎºÐ¿¡, --------------------------------------------------- #include /usr/local/apache/conf/apache_mod-ssl.conf --------------------------------------------------- ¿Í °°ÀÌ ÁÖ¼®Ã³¸® µÇ¾î ÀÖ´Â SSL ¼³Á¤À» È°¼ºÈ­(# Á¦°Å)¿Í µ¿½Ã¿¡, ÇØ´ç ÆÄÀÏÀ» ÀûÀýÈ÷ ¼öÁ¤ÇÑ ÈÄ, # /etc/init.d/apachectl startssl ¸í·ÉÀ» ÅëÇØ SSL º¸¾È Apache ¼­¹ö¸¦ ½ÃÀÛÇÒ¼ö ÀÖÀ½. " >> /usr/local/src/APM_Setup/README_Apache-mod_ssl_Active.txt fi #### httpd 2.0.x ¼³Á¤ ¼öÁ¤ ¹×, httpd.conf ÆÄÀÏ ¼öÁ¤ #### elif [ "$APACHE_VER" = "2" ]; then $WGET -N $SOURCE_ADDR/mod_url_2.x.tar.gz tar xzpfv mod_url_2.x.tar.gz #mv $SOURCE_DIR/mod_url-2.c $SOURCE_DIR/mod_url.c $WGET $SOURCE_ADDR/mod_url.conf -O /usr/local/apache/conf/mod_url.conf /usr/local/apache/bin/apxs -aic $SOURCE_DIR/mod_url/apache2/mod_url.c sed -i "/# Use name-based virtual hosting./i include /usr/local/apache/conf/mod_url.conf" /usr/local/apache/conf/httpd.conf if [ "$REAL_IP" != "blank" ]; then REAL_IP=`echo $REAL_IP | sed -e "s/blank//g"` sed -i "/#ServerName www.example.com/a ServerName $REAL_IP" /usr/local/apache/conf/httpd.conf fi rm -rf /usr/local/apache/htdocs/index.html*; cp -arp /usr/local/apache/conf/httpd.conf /usr/local/apache/conf/httpd.conf.save; #WORKER_MODULE_LIMIT_1="`grep -n \"worker.c\" /usr/local/apache/conf/httpd.conf | awk -F\":\" '{print $1}'`" #WORKER_MODULE_LINET_2="`expr $WORKER_MODULE_LIMIT_1 \+ 2`" #sed -i "${WORKER_MODULE_LINET_2}s/150/500/g" /usr/local/apache/conf/httpd.conf sed -i "s/`grep \"^User \" /usr/local/apache/conf/httpd.conf`/User nobody/g" /usr/local/apache/conf/httpd.conf sed -i "s/`grep \"^Group \" /usr/local/apache/conf/httpd.conf`/Group nobody/g" /usr/local/apache/conf/httpd.conf sed -i 's/DirectoryIndex index.html/DirectoryIndex index.html index.htm index.php index.php3 index.php4 index.php5 index.phtml index.cgi index.jsp/g' /usr/local/apache/conf/httpd.conf sed -i '/AddType application\/x-gzip .gz .tgz/a # PHP Enable' /usr/local/apache/conf/httpd.conf sed -i '/# PHP Enable/a AddType application/x-httpd-php .html .htm .php .php3 .php4 .php5 .phtml .cgi .inc' /usr/local/apache/conf/httpd.conf sed -i '/AddType application\/x-httpd-php .html .htm .php .php3 .php4 .php5 .phtml .cgi .inc/a AddType application/x-httpd-php-source .phps' /usr/local/apache/conf/httpd.conf sed -i 's/#AddHandler cgi-script .cgi/AddHandler cgi-script .cgi/g' /usr/local/apache/conf/httpd.conf echo " AllowOverride All Options +ExecCGI Order allow,deny Allow from all " >> /usr/local/apache/conf/httpd.conf echo "" > /usr/local/apache/htdocs/index.php; if [ "$mod_ssl_answer" = "2" ]; then echo "TEST ÀÎÁõÅ° »ý¼º ¸í·É ===================== apachectl startssl ½ÇÇà½Ã ºñ¹Ð¹øÈ£ ¾øÀ½ : # openssl genrsa 1024 > /usr/local/apache/conf/ssl.key/server.key apachectl startssl ½ÇÇà½Ã ºñ¹Ð¹øÈ£ ÀÖÀ½ : # openssl genrsa -des3 1024 > /usr/local/apache/conf/ssl.key/server.key TESTÀÎÁõ¿ä±¸¼­ »ý¼º ¸í·É ======================== # openssl req -new -x509 -days 365 -key /usr/local/apache/conf/ssl.key/server.key -out /usr/local/apache/conf/ssl.crt/server.crt * ¼³Ä¡ÈÄ, À§ÀÇ °úÁ¤À» °ÅÄ£ÈÄ, /usr/local/apache/conf/httpd.conf ÆÄÀÏ ÇÏ´Ü ºÎ±Ù¿¡, ----------------------------- # # Include conf/ssl.conf # ----------------------------- ¿Í °°ÀÌ ÁÖ¼®Ã³¸® µÇ¾î ÀÖ´Â SSL ¼³Á¤À» È°¼ºÈ­(# Á¦°Å)¿Í µ¿½Ã¿¡, ÇØ´ç ÆÄÀÏÀ» ÀûÀýÈ÷ ¼öÁ¤ÇÑ ÈÄ, # /etc/init.d/apachectl startssl ¸í·ÉÀ» ÅëÇØ SSL º¸¾È Apache ¼­¹ö¸¦ ½ÃÀÛÇÒ¼ö ÀÖÀ½. " >> /usr/local/src/APM_Setup/README_Apache-mod_ssl_Active.txt fi #### httpd 2.2.x ¼³Á¤ ¼öÁ¤ ¹×, httpd.conf ÆÄÀÏ ¼öÁ¤ #### elif [ "$APACHE_VER" = "3" ]; then $WGET -N $SOURCE_ADDR/mod_url_2.x.tar.gz tar xzpfv mod_url_2.x.tar.gz #mv $SOURCE_DIR/mod_url-2.c $SOURCE_DIR/mod_url.c $WGET $SOURCE_ADDR/mod_url.conf -O /usr/local/apache/conf/mod_url.conf /usr/local/apache/bin/apxs -aic $SOURCE_DIR/mod_url/apache2/mod_url.c sed -i "/# necessary./a include /usr/local/apache/conf/mod_url.conf" /usr/local/apache/conf/httpd.conf if [ "$REAL_IP" != "blank" ]; then REAL_IP=`echo $REAL_IP | sed -e "s/blank//g"` sed -i "/#ServerName www.example.com/a ServerName $REAL_IP" /usr/local/apache/conf/httpd.conf fi rm -rf /usr/local/apache/htdocs/index.html*; cp -arp /usr/local/apache/conf/httpd.conf /usr/local/apache/conf/httpd.conf.save; #WORKER_MODULE_LIMIT_1="`grep -n \"mpm_worker_module\" /usr/local/apache/conf/extra/httpd-mpm.conf | awk -F\":\" '{print $1}'`" #WORKER_MODULE_LINET_2="`expr $WORKER_MODULE_LIMIT_1 \+ 2`" #sed -i "${WORKER_MODULE_LINET_2}s/150/500/g" /usr/local/apache/conf/extra/httpd-mpm.conf sed -i "s/`grep \"^User \" /usr/local/apache/conf/httpd.conf`/User nobody/g" /usr/local/apache/conf/httpd.conf sed -i "s/`grep \"^Group \" /usr/local/apache/conf/httpd.conf`/Group nobody/g" /usr/local/apache/conf/httpd.conf sed -i 's/DirectoryIndex index.html/DirectoryIndex index.html index.htm index.php index.php3 index.php4 index.php5 index.phtml index.cgi index.jsp/g' /usr/local/apache/conf/httpd.conf sed -i '/AddType application\/x-gzip .gz .tgz/a # PHP Enable' /usr/local/apache/conf/httpd.conf sed -i '/# PHP Enable/a AddType application/x-httpd-php .html .htm .php .php3 .php4 .php5 .phtml .cgi .inc' /usr/local/apache/conf/httpd.conf sed -i '/AddType application\/x-httpd-php .html .htm .php .php3 .php4 .php5 .phtml .cgi .inc/a AddType application/x-httpd-php-source .phps' /usr/local/apache/conf/httpd.conf sed -i 's/#AddHandler cgi-script .cgi/AddHandler cgi-script .cgi/g' /usr/local/apache/conf/httpd.conf echo " AllowOverride All Options +ExecCGI Order allow,deny Allow from all " >> /usr/local/apache/conf/httpd.conf echo "" > /usr/local/apache/htdocs/index.php; if [ "$mod_ssl_answer" = "2" ]; then echo "TEST ÀÎÁõÅ° »ý¼º ¸í·É ===================== apachectl startssl ½ÇÇà½Ã ºñ¹Ð¹øÈ£ ¾øÀ½ : # openssl genrsa 1024 > /usr/local/apache/conf/server.key apachectl startssl ½ÇÇà½Ã ºñ¹Ð¹øÈ£ ÀÖÀ½ : # openssl genrsa -des3 1024 > /usr/local/apache/conf/server.key TESTÀÎÁõ¿ä±¸¼­ »ý¼º ¸í·É ======================== # openssl req -new -x509 -days 365 -key /usr/local/apache/conf/server.key -out /usr/local/apache/conf/server.crt * ¼³Ä¡ÈÄ, À§ÀÇ °úÁ¤À» °ÅÄ£ÈÄ, /usr/local/apache/conf/httpd.conf ÆÄÀÏ ¸¶Áö¸· ³¡ºÎºÐ¿¡, ------------------------------------------------------ #include /usr/local/apache/conf/extra/httpd-ssl.conf ------------------------------------------------------ ¿Í °°ÀÌ ÁÖ¼®Ã³¸® µÇ¾î ÀÖ´Â SSL ¼³Á¤À» È°¼ºÈ­(# Á¦°Å)¿Í µ¿½Ã¿¡, ÇØ´ç ÆÄÀÏÀ» ÀûÀýÈ÷ ¼öÁ¤ÇÑ ÈÄ, # /etc/init.d/apachectl start ¸í·ÉÀ» ÅëÇØ SSL º¸¾È Apache ¼­¹ö¸¦ ½ÃÀÛÇÒ¼ö ÀÖÀ½. " >> /usr/local/src/APM_Setup/README_Apache-mod_ssl_Active.txt fi fi #### Apache ·Î±×ÆÄÀÏ - ·Î±×·ÎÅ×ÀÌ¼Ç ¼³Á¤ echo "/home/apache_log/*_log {" > /etc/logrotate.d/apache echo "daily" >> /etc/logrotate.d/apache echo "rotate 8" >> /etc/logrotate.d/apache echo "missingok" >> /etc/logrotate.d/apache echo "create 0600 root root" >> /etc/logrotate.d/apache echo "postrotate" >> /etc/logrotate.d/apache #echo "/bin/kill -HUP `cat /usr/local/apache/logs/httpd.pid 2>/dev/null` 2> /dev/null || true" >> /etc/logrotate.d/apache echo "endscript" >> /etc/logrotate.d/apache echo "}" >> /etc/logrotate.d/apache sed -i '/postrotate/a /bin/kill -HUP `cat /usr/local/apache/logs/httpd.pid 2>/dev/null` 2> /dev/null || true' /etc/logrotate.d/apache ## hosts ÆÄÀÏ¿¡ loop hostname-IP µî·Ï #echo "127.0.0.1 `hostname`" >> /etc/hosts ###mod_url.c ¼³Ä¡ cd /usr/local/src/ wget -N http://mirror.secuidc.com/pub/mod_url/mod_url-apache-2-1.15.tar.bz2 tar xvf mod_url-apache-2-1.15.tar.bz2 cd mod_url-apache2 /usr/local/apache/bin/apxs -iac mod_url.c ###modsecurity ¼³Ä¡ cd /usr/local/src/ wget -N http://mirror.secuidc.com/pub/modsecurity/modsecurity-apache_2.5.6.tar.gz tar xvfz modsecurity-apache_2.5.6.tar.gz cd modsecurity-apache_2.5.6/apache2 ./configure --with-apxs=/usr/local/apache/bin/apxs --with-httpd-src=/usr/local/src/APM_Setup/httpd-2.2.4/ --with-libxml=/usr/ make make install ###cband ¼³Ä¡ cd /usr/local/src/ wget -N http://mirror.secuidc.com/pub/cband/mod-cband-0.9.7.5.tgz tar xvfz mod-cband-0.9.7.5.tgz cd mod-cband-0.9.7.5 ./configure --with-apxs=/usr/local/apache/bin/apxs make clean make make install ###secumod ´Ù¿î mkdir /usr/local/apache/secumod cd /usr/local/apache/secumod wget -N http://mirror.secuidc.com/pub/secumod/mod_cband.conf wget -N http://mirror.secuidc.com/pub/secumod/mod_security2.conf ###secumod ¼³Á¤ echo "##mod_security" >> /usr/local/apache/conf/httpd.conf echo "Include secumod/mod_security2.conf" >> /usr/local/apache/conf/httpd.conf echo "#secuadmin mod_cband" >> /usr/local/apache/conf/httpd.conf echo "Include secumod/mod_cband.conf" >> /usr/local/apache/conf/httpd.conf ###geoip cd /usr/local/src/ wget -N http://mirror.secuidc.com/pub/geoip/geoip.sh sh geoip.sh ##snmp, ftp ¼³Á¤ yum -y install vsftpd yum -y install net-snmp* yum -y install sendmail-cf yum -y install spamassassin ##¼³Á¤¸ðÀ½ sed -i '/LoadModule geoip_module modules\/mod_geoip.so/a LoadModule security2_module modules\/mod_security2.so' /usr/local/apache/conf/httpd.conf sed -i "s/ErrorLog logs\/error_log/ErrorLog \/home\/apache_log\/error_log/g" /usr/local/apache/conf/httpd.conf sed -i "s/CustomLog logs\/access_log common/CustomLog \/home\/apache_log\/access_log common/g" /usr/local/apache/conf/httpd.conf sed -i "s/#Include conf\/extra\/httpd-mpm.conf/Include conf\/extra\/httpd-mpm.conf/g" /usr/local/apache/conf/httpd.conf sed -i "s/#Include conf\/extra\/httpd-autoindex.conf/Include conf\/extra\/httpd-autoindex.conf/g" /usr/local/apache/conf/httpd.conf sed -i "s/#Include conf\/extra\/httpd-languages.conf/Include conf\/extra\/httpd-languages.conf/g" /usr/local/apache/conf/httpd.conf sed -i "s/#Include conf\/extra\/httpd-userdir.conf/Include conf\/extra\/httpd-userdir.conf/g" /usr/local/apache/conf/httpd.conf sed -i "s/#Include conf\/extra\/httpd-info.conf/Include conf\/extra\/httpd-info.conf/g" /usr/local/apache/conf/httpd.conf sed -i "s/#Include conf\/extra\/httpd-vhosts.conf/Include conf\/extra\/httpd-vhosts.conf/g" /usr/local/apache/conf/httpd.conf sed -i "s/#Include conf\/extra\/httpd-manual.conf/Include conf\/extra\/httpd-manual.conf/g" /usr/local/apache/conf/httpd.conf sed -i "s/#Include conf\/extra\/httpd-default.conf/Include conf\/extra\/httpd-default.conf/g" /usr/local/apache/conf/httpd.conf sed -i "s/rpc:x:32:32:Portmapper\ RPC\ user:\/:\/sbin\/nologin/#rpc:x:32:32:Portmapper RPC user:\/:\/sbin\/nologin/g" /etc/passwd sed -i "s/rpcuser:x:29:29:RPC\ Service\ User:\/var\/lib\/nfs:\/sbin\/nologin/#rpcuser:x:29:29:RPC\ Service\ User:\/var\/lib\/nfs:\/sbin\/nologin/g" /etc/passwd sed -i "s/MaxClients 150/MaxClients 2048/g" /usr/local/apache/conf/extra/httpd-mpm.conf sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/g" /usr/local/apache/conf/httpd.conf sed -i "s/AllowOverride FileInfo AuthConfig Limit Indexes/AllowOverride FileInfo AuthConfig Limit/g" /usr/local/apache/conf/extra/httpd-userdir.conf sed -i "s/Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec/Options MultiViews SymLinksIfOwnerMatch IncludesNoExec/g" /usr/local/apache/conf/extra/httpd-userdir.conf sed -i "s/ServerSignature On/ServerSignature Off/g" /usr/local/apache/conf/extra/httpd-default.conf sed -i "s/ Allow from .example.com/ Allow from 203.251.81.148/g" /usr/local/apache/conf/extra/httpd-info.conf sed -i "s/#ExtendedStatus On/ExtendedStatus On/g" /usr/local/apache/conf/extra/httpd-info.conf sed -i "s/view systemview included .1.3.6.1.2.1.25.1.1/#view systemview included .1.3.6.1.2.1.25.1.1/g" /etc/snmp/snmpd.conf sed -i "s/com2sec notConfigUser default public/com2sec notConfigUser default iboanpublic/g" /etc/snmp/snmpd.conf sed -i "s/view systemview included .1.3.6.1.2.1.1/view systemview included .1/g" /etc/snmp/snmpd.conf sed -i "s/-Lsd -Lf \/dev\/null -p \/var\/run\/snmpd.pid -a/-LS\ 2\ d -Lf \/dev\/null -p \/var\/run\/snmpd.pid -a/g" /etc/init.d/snmpd sed -i "s/#chroot_list_enable=YES/chroot_local_user=YES/g" /etc/vsftpd/vsftpd.conf sed -i "s/#ftpd_banner=Welcome to blah FTP service./ftpd_banner=Welcome to blah FTP service./g" /etc/vsftpd/vsftpd.conf sed -i "s/anonymous_enable=YES/anonymous_enable=NO/g" /etc/vsftpd/vsftpd.conf sed -i "s/dnl TRUST_AUTH_MECH(\`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl/TRUST_AUTH_MECH(\`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl/g" /etc/mail/sendmail.mc sed -i "s/dnl define(\`confAUTH_MECHANISMS', \`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl/define(\`confAUTH_MECHANISMS', \`EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN')dnl/g" /etc/mail/sendmail.mc sed -i "s/DAEMON_OPTIONS(\`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl/dnl DAEMON_OPTIONS(\`Port=smtp,Addr=127.0.0.1, Name=MTA')dnl/g" /etc/mail/sendmail.mc sed -i "s/#O MaxRecipientsPerMessage=0/O MaxRecipientsPerMessage=10/g" /etc/mail/sendmail.cf sed -i "s/TCP_ALLOWPORT = 22/TCP_ALLOWPORT = 21 22 25 80 110/g" /etc/oops-firewall/filter.conf sed -i "s/expose_php = On/expose_php = Off/g" /usr/local/Zend/etc/php.ini sed -i "s/O Timeout.queuereturn=5d/O Timeout.queuereturn=1h/g" /etc/mail/sendmail.cf echo "use_localtime=YES" >> /etc/vsftpd/vsftpd.conf echo "% -A INPUT -p tcp --dport 21 -m state --state NEW -m recent --set --name FTPSCAN" >> /etc/oops-firewall/user.conf echo "% -A INPUT -p tcp --dport 21 -m state --state NEW -m recent --update --seconds 60 --hitcount 10 --rttl --name FTPSCAN -j LOG --log-prefix FTP_SCAN:" >> /etc/oops-firewall/user.conf echo "% -A INPUT -p tcp --dport 21 -m state --state NEW -m recent --update --seconds 60 --hitcount 10 --rttl --name FTPSCAN -j DROP" >> /etc/oops-firewall/user.conf #m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf chmod 600 /etc/hosts chmod 600 /etc/xinetd.conf chmod 600 /etc/xinetd.d/* source /etc/profile ##½ºÆԾ½Å¼³Á¤ cd /etc/mail/spamassassin wget -N http://mirror.secuidc.com/pub/spam/local.cf cd /etc/ wget -N http://mirror.secuidc.com/pub/procmailrc/procmailrc /etc/rc.d/init.d/vsftpd start /etc/rc.d/init.d/snmpd start /etc/rc.d/init.d/sendmail restart /etc/rc.d/init.d/oops-firewall restart /etc/rc.d/init.d/dovecot restart /etc/rc.d/init.d/saslauthd restart /etc/rc.d/init.d/portmap stop /etc/rc.d/init.d/avahi-daemon stop /etc/rc.d/init.d/nfslock stop /etc/rc.d/init.d/spamassassin start chkconfig --level 345 vsftpd on chkconfig --level 345 smartd on chkconfig --level 345 spamassassin on chkconfig --level 345 snmpd on chkconfig --level 345 saslauthd on chkconfig --level 345 dovecot on chkconfig --level 345 avahi-daemon off chkconfig --level 345 bluetooth off chkconfig --level 345 acpid off chkconfig --level 345 anacron off chkconfig --level 345 atd off chkconfig --level 345 gpm off chkconfig --level 345 haldaemon off chkconfig --level 345 ip6tables off chkconfig --level 345 mcstrans off chkconfig --level 345 netfs off chkconfig --level 345 nfslock off chkconfig --level 345 iscsi off chkconfig --level 345 iscsid off chkconfig --level 345 pcscd off chkconfig --level 345 portmap off chkconfig --level 345 restorecond off chkconfig --level 345 rpcgssd off chkconfig --level 345 xfs off chkconfig --level 345 xinetd off chkconfig --level 345 hidd off chkconfig --level 345 setroubleshoot off chkconfig --level 345 rpcidmapd off chkconfig --level 345 apmd off chkconfig --level 345 iscsi off chkconfig --level 345 iscsid off chkconfig --level 345 setroubleshoot off #### ±âŸ ¼­ºñ½º ¼³Á¤ ¹× °¡µ¿ ### ln -s /usr/local/apache/conf/php.ini /usr/local/php/lib/php.ini; chmod 700 /etc/init.d/apachectl; chmod 700 /etc/init.d/mysqld; killall httpd > /dev/null 2>&1 sleep 3 killall libhttpd.ep > /dev/null 2>&1 sleep 3 killall mysqld > /dev/null 2>&1 sleep 3 /etc/init.d/apachectl start; /etc/init.d/mysqld start; sleep 5 #### Ãʱ⿡ ÀԷ¹ÞÀº MySQL root ºñ¹ø Àû¿ë /usr/local/mysql/bin/mysqladmin -u root password $mysql_root_pw_1 ## º» Script ÆÄÀÏ Á¦°Å ¹× ¸ðµç ÀÛ¾÷ Á¾·á ¸Þ½ÃÁö Ãâ·Â #rm -f /usr/local/src/APM_Setup_Script.sh echo " " echo " " if [ "$mod_ssl_answer" = "2" ]; then echo -e "\\033[01;32m===================================================================\\033[0m"; echo -e "\\033[01;32m=== mos_ssl È°¼ºÈ­ ¹æ¹ýÀº ¾Æ·¡ ¹®¼­ ÆÄÀÏÀ» ¹Ýµå½Ã È®ÀÎÇϽʽÿÀ ===\\033[0m"; echo -e "\\033[01;32m=== /usr/local/src/APM_Setup/README_Apache-mod_ssl_Active.txt ===\\033[0m"; echo -e "\\033[01;32m===================================================================\\033[0m"; fi echo " " echo " " echo -e "\\033[01;31m=== APM Install Finished !!! - http://www.sekorea.co.kr ===\\033[0m"; echo -e "\\033[01;31m=== APM Install Finished !!! - http://www.sekorea.co.kr ===\\033[0m"; echo " " echo " " ## ¸¶¹«¸® ºÎºÐ else echo -e "\\033[00;31OS * Invalid choice !! Restart this Script !!" echo -e "\\033[00;00m" echo " " echo " " echo -e "\\033[00;00m" fi ## °ü¸®ÇÁ·Î±×·¥ ¼³Ä¡ cd tar xvfz ssu_151118.tar.gz cd bin sh install.sh cd /root/bin/hosting_set/ sh WebalizerInstall.sh ## Ä¿³Î geoip ¼³Ä¡ cd /usr/local/src wget -N http://mirror.secuidc.com/pub/geoip/kgeoip.sh #sh kgeoip.sh ## phpinfo »ý¼º touch /home/secuadmin/public_html/phpinfo.php echo "" > /home/secuadmin/public_html/phpinfo.php