Advertisement
Guest User

Untitled

a guest
Jul 18th, 2018
413
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.82 KB | None | 0 0
  1. #!/usr/bin/env bash
  2. apt-get install -qq lsb-release curl -y
  3. rm -fr wordpress latest.zip domain.txt domain-tanpa-titik.txt db_name.txt db_name1.txt u_name.txt u_name1.txt versi{1..4}.txt versi.txt /var/www/html/info.php
  4. printf "\n\n\nMau tambah domain ga usah bingung lagi\nYang perlu Anda masukkan hanya nama domain\nyang ingin ditambahkan ke VPS.\n\nKalo ada yang kurang jelas, silahkan hubungi saya.\n\n\nSkrip ini juga bisa digunakan untuk menginstall sub domain.\nYang perlu diinput nanti bukan nama domain, melainkan dengan sub domainnya\n\nMisal domainnya bernama example.com, maka kalo mau install subdomain\ninput full URL sub domainnya, misalnya sub.example.com\n\n\nSilahkan masukan nama domain\n"
  5. while true
  6. do
  7. read -p "Tanpa www dan tanpa http, misal example.com: " domain
  8. echo
  9. read -p "Masukan nama domain (sekali lagi): " domain2
  10. echo
  11. [ "$domain" = "$domain2" ] && break
  12. echo
  13. echo "Nama domain ga cocok, ulang lagi ya!"
  14. echo
  15. done
  16. echo $domain >> domain.txt
  17. clean_domain_1=`sed 's/[^a-zA-Z0-9]//g' domain.txt > domain-tanpa-titik.txt`
  18. untuk_db=`cat domain-tanpa-titik.txt`
  19. echo $untuk_db >> db_name1.txt
  20. echo $untuk_db >> u_name1.txt
  21. sed 's/^/db_/' db_name1.txt > db_name.txt
  22. sed 's/^/u_/' u_name1.txt > u_name.txt
  23. db_name=`cat db_name.txt`
  24. u_name=`cat u_name.txt`
  25. rm -f domain.txt domain-tanpa-titik.txt db_name.txt db_name1.txt u_name.txt u_name1.txt
  26. file="/root/.pwdmysql"
  27. if [ -f "$file" ]
  28. then
  29. echo
  30. else
  31. printf "Sorry, skrip ini hanya bekerja di VPS yang di setting Hardinal\ninfo lanjut silahkan email ke jasa@hardinal.com\n\n"
  32. exit 1
  33. fi
  34. echo
  35. printf "Sip, udah semua..\nTekan 'y' untuk melanjutkan (tunggu maks. 1 menit)\n"
  36. read -p "Atau 't' untuk membatalkan ... <y/t> ?" tanya
  37. echo
  38. if [[ $tanya == "y" || $tanya == "Y" || $tanya == "yes" || $tanya == "Yes" || $tanya == "Ya" || $tanya == "ya" ]]
  39. then
  40. echo "Mohon tunggu..."
  41. echo
  42. password_root_mysql=`cat /root/.pwdmysql`
  43. password_wp_config=`cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 12 | head -n 1`
  44. mysql -uroot -p$password_root_mysql -e "CREATE DATABASE $db_name /*\!40100 DEFAULT CHARACTER SET utf8 */;"
  45. mysql -uroot -p$password_root_mysql -e "CREATE USER $u_name@localhost IDENTIFIED BY '$password_wp_config';"
  46. mysql -uroot -p$password_root_mysql -e "GRANT ALL PRIVILEGES ON $db_name.* TO '$u_name'@'localhost';"
  47. mysql -uroot -p$password_root_mysql -e "FLUSH PRIVILEGES;"
  48. php -r \@phpinfo\(\)\; | grep 'PHP Version' -m 1 > versi-php.txt
  49. awk '{ print $4 }' versi-php.txt > versi-php1.txt
  50. cut -c -1 versi-php1.txt > jessie_php.txt
  51. jessie_php=`cat jessie_php.txt`
  52. cut -c -3 versi-php1.txt > stretch_php.txt
  53. stretch_php=`cat stretch_php.txt`
  54. rm -f versi-php.txt versi-php1.txt jessie_php.txt stretch_php.txt
  55. wget -q --no-check-certificate https://www.dropbox.com/s/65by3jhkq5q9o54/master-by-rev.vhost?dl=0 -O master.vhost
  56. debversion=`lsb_release -sc`
  57. if [ "$debversion" = "jessie" ]; then
  58. if [ $jessie_php = 5 ]
  59. then
  60. sed -i 's/xGANTIx/unix:\/var\/run\/php5-fpm.sock/g' master.vhost
  61. else
  62. sed -i 's/xGANTIx/unix:\/run\/php\/php7.0-fpm.sock/g' master.vhost
  63. fi
  64. elif [ "$debversion" = "stretch" ]; then
  65. sed -i 's/xGANTIx/unix:\/run\/php\/php'$stretch_php'-fpm.sock/g' master.vhost
  66. else
  67. sed -i 's/xGANTIx/unix:\/var\/run\/php5-fpm.sock/g' master.vhost
  68. fi
  69. sed -i "s/xDOMAINx/$domain/g" master.vhost
  70. mv master.vhost /etc/nginx/sites-available/$domain
  71. sed -i '/robots.txt {/a \\t try_files $uri $uri/ /index.php?$args;' /etc/nginx/sites-available/$domain
  72. ln -sf /etc/nginx/sites-available/$domain /etc/nginx/sites-enabled/
  73. mkdir -p /etc/nginx/untuk_cache/$domain
  74. service nginx reload
  75. curl -L -# -k --connect-timeout 5 --retry 1 'https://wordpress.org/latest.zip' -o latest.zip
  76. unzip -qq latest.zip
  77. rm -f latest.zip
  78. mv wordpress /var/www/html/$domain
  79. mv /var/www/html/$domain/wp-config-sample.php /var/www/html/$domain/wp-config.php
  80. sed -i "s/database_name_here/$db_name/g" /var/www/html/$domain/wp-config.php
  81. sed -i "s/username_here/$u_name/g" /var/www/html/$domain/wp-config.php
  82. sed -i "s/password_here/$password_wp_config/g" /var/www/html/$domain/wp-config.php
  83. salts=$(curl -s https://api.wordpress.org/secret-key/1.1/salt/)
  84. while read -r salt; do
  85. cari="define('$(echo "$salt" | cut -d "'" -f 2)"
  86. ganti=$(echo "$salt" | cut -d "'" -f 4)
  87. sed -i "/^$cari/s/put your unique phrase here/$(echo $ganti | sed -e 's/\\/\\\\/g' -e 's/\//\\\//g' -e 's/&/\\\&/g')/" /var/www/html/$domain/wp-config.php
  88. done <<< "$salts"
  89. chown -R www-data:www-data /var/www/html/$domain
  90. rm -f latest.zip
  91. printf "_________________\n"
  92. printf "\nSelamat, domain $domain baru saja ditambahkan ke VPS ini\nSilahkan daftarkan dan ganti NS ke Cloudflare, lalu tunggu +/- 30 menit supaya domain bisa diakses.\n\n"
  93. printf "Materi Cloudflare bisa Anda baca di blog saya\n\nhttps://www.hardinal.com/blog/cara-menggunakan-dns-cloudflare-lengkap-dengan-gambar/\n\n"
  94. printf "_________________\n\n\n"
  95. printf "Setelah menunggu 30 menit-an, silahkan kunjungi:\n\n"
  96. printf "http://$domain\n\n"
  97. printf "Atau kalo ingin pake www kunjungi\n\nhttp://www.$domain\n\n"
  98. printf "Anda nanti akan dibawa ke proses instalasi Wordpress\n\n"
  99. printf "_________________\n\n\n"
  100. printf "Oia, Jika Anda perlu rincian database, silahkan gunakan rincian di bawah ini\n"
  101. printf "\nDATABASE: $db_name\nUSERNAME: $u_name\nPASSWORD: $password_wp_config\n\n"
  102. else
  103. rm -f db_name1.txt db_name.txt domain-tanpa-titik.txt domain.txt u_name1.txt u_name.txt info.php
  104. exit 0
  105. fi
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement