26 January 2014

Install Web Server di Ubuntu 12.04 LTS

Install Web Server di Ubuntu 12.04 LTS

Saya tuliskan beberapa catatan saat instalasi web server menggunakan Ubuntu 12.04. Saya tuliskan disini biar nanti kalau butuh gak nyari-nyari lagi.
Saya menggunakan versi desktop karena kebetulan server ini juga rencananya akan saya pakai untuk kegiatan komputasi sehari-hari dan kebutuhan server untuk web ini hanya untuk sementara semasa pengembangan saja.
  1. Installasi Ubuntu Desktop 12.04 LTS
    Installasi ubuntu seperti biasanya, dalam kasus ini, saya menggunakan USB FDD. Pada awalnya ada sedikit masalah karena tidak BIOS tidak mau booting dari USB FDD padahal first boot sudah diatur ke USB FDD. Tapi akhirnya bisa booting setelah Hard Disk priority-nya diubah ke USB-FDD. Agar bisa dipilih dalam prioritas Hard Disk di BIOS, USB berarti harus sudah diposisinya sebelum masuk ke BIOS.
  2. Ubah repository Ubuntu 12.04 ke lokal
    Dalam hal ini, karena saya ingin berhemat dengan bandwidth international yang ada, maka saya ubah repository default ke repository dalam negeri, yaitu repository Kambing UI dan FTP ITB. Selain menghemat bandwidth internasional juga lebih cepat dalam aksesnya.
    sudo gedit /etc/apt/sources.list
    ganti dengan berikut
    ## ITB
    deb ftp://ftp.itb.ac.id/pub/ubuntu/ precise-proposed main restricted universe multiverse
    deb ftp://ftp.itb.ac.id/pub/ubuntu/ precise-security main restricted universe multiverse
    deb ftp://ftp.itb.ac.id/pub/ubuntu/ precise-updates main restricted universe multiverse
    deb ftp://ftp.itb.ac.id/pub/ubuntu/ precise main restricted universe multiverse
    
    # Kambing
    deb http://kambing.ui.ac.id/ubuntu/ precise-proposed main restricted universe multiverse
    deb http://kambing.ui.ac.id/ubuntu/ precise-security main restricted universe multiverse
    deb http://kambing.ui.ac.id/ubuntu/ precise-updates main restricted universe multiverse
    deb http://kambing.ui.ac.id/ubuntu/ precise main restricted universe multiverse
    Simpan kemudian
    sudo apt-get update
    biar ubuntunya tau kemana harus nyari aplikasi.
  3. Installasi LAMP (Linux-Apache-MySQL-PHP) Server
    Untuk bagian yang paling penting dalam web server ini saya pakai tasksel, suatau tools untuk menginstall satu paket lamp, biar gampang.
    sudo apt-get install tasksel
    setelah selesai
    sudo tasksel
    karena saya mengalami sedikit masalah dengan installasi menggunakan GUI tasksel, akhirnya saya pakai command
    sudo apt-get install lamp-server
  4. Install phpmyadmin
    Sebenarnya bisa tanpa phpmyadmin tetapi butuh waktu untuk menyesuaikan diri pakai text command, jadi pakai phpmyadmin saja.
    sudo apt-get install phpmyadmin
    Setelah installasi selesai, tinggal tambahkan phpmyadmin kedalam konfiguarsi apache.
    sudo gedit /etc/apache2/apache2.conf
    Memasukkan phpmyadmin agar phpmyadmin bisa diakses dari browser.
    Include /etc/phpmyadmin/apache.conf
    Restart apache:
    sudo service apache2 restart
  5. Install ProFTPD
    Install
    sudo apt-get install proftpd
    Sedikit konfigurasi
    sudo nano /etc/proftpd/proftpd.conf
    Menentukan direktori pengguna agar di berada di direktori home masing-masing.
    # Use this to jail all users in their homes
     DefaultRoot                    ~
    Restart:
    sudo service proftpd restart
  6. Selesai
Informasi ini berupa garis besarnya saja yang saya rangkum dari berbagai sumber di internet. Terimakasih bagi semua yang telah berbagi ilmu pengetahuan. Semoga dengan niat yang ikhlas Lillahi Ta’ala bisa mendatangkan pahala untuk ilmu yang bermanfaat..aamiin…

25 January 2014

squid Caching Youtube with storeurl.pl Method (100% Working in 2014)

squid Caching Youtube with storeurl.pl Method (100% Working in 2014)

 configuration.
Install Ubuntu 13.10, 12.xx

Install Squid

apt-get update
 apt-get install ccze -y
apt-get install vim mc make gcc g++


Download squid dan configuration dari http://www.4shared.com/zip/bVgqjNQY/squid_n_shorewall_conf.html. 

 copy kan hasil downloand ke /usr/local


cd /usr/local
unzip squid_n_shorewall_conf.zip
tar zxvf squid-2.7.STABLE9PATCH.tar.gz
cd squid-2.7.STABLE9
./configure --prefix=/usr   --exec-prefix=/usr   --bindir=/usr/sbin   --sbindir=/usr/sbin   --sysconfdir=/etc/squid   --datadir=/usr/share/squid   --includedir=/usr/include   --libdir=/usr/lib   --libexecdir=/usr/lib/squid   --localstatedir=/var   --sharedstatedir=/usr/com   --mandir=/usr/share/man   --infodir=/usr/share/info   --x-includes=/usr/include   --x-libraries=/usr/lib   --enable-shared=yes   --enable-static=no   --enable-carp    --enable-storeio=aufs,ufs   --enable-removal-policies=heap,lru   --disable-icmp   --disable-delay-pools   --disable-esi   --enable-icap-client   --enable-useragent-log   --enable-referer-log   --disable-wccp   --enable-wccpv2   --disable-kill-parent-hack   --enable-snmp   --enable-cachemgr-hostname=localhost   --enable-arp-acl   --disable-htcp  --disable-forw-via-db   --disable-follow-x-forwarded-for   --enable-cache-digests    --disable-poll   --enable-epoll   --enable-linux-netfilter   --disable-ident-lookups   --enable-default-hostsfile=/etc/hosts    --with-default-user=squid   --with-large-files  --enable-mit=/usr   --with-logdir=/var/log/squid   --enable-http-violations   --enable-zph-qos   --with-filedescriptors=65536   --enable-gnuregex --enable-async-io=64 --with-aufs-threads=64  --with-pthreads --with-aio  --enable-default-err-languages=English --enable-err-languages=English --disable-hostname-checks --enable-underscores
make; make install
steps berikut nya
cd /usr/local/
mv storeurl.pl /etc/squid/
mv squid.conf /etc/squid/
mv squid /etc/init.d/
chmod 755 /etc/init.d/squid
chmod 755  /etc/squid/storeurl.pl
mkdir /cache
chown proxy:proxy /cache
mkdir /var/log/squid
touch /var/log/squid/access.log
touch /var/log/squid/cache.log
chown -Rf proxy:proxy /var/log/squid
update-rc.d squid defaults
squid -z
service squid restart
Selanjut nya, install shorewall.
Install Shorewall.
cd /usr/local/
wget http://www.shorewall.com.au/CURRENT_STABLE_VERSION_IS_4.5/shorewall-4.5.21/shorewall-4.5.21.5.tgz
wget http://www.shorewall.com.au/CURRENT_STABLE_VERSION_IS_4.5/shorewall-4.5.21/shorewall-core-4.5.21.5.tgz
tar zxvf shorewall-core-4.5.21.5.tgz
tar zxvf shorewall-4.5.21.5.tgz
cd shorewall-core-4.5.21.5
./configure
./install.sh
cd ..
cd shorewall-4.5.21.5
./configure
./install.sh
   contoh copy dari downloand
http://www.4shared.com/zip/bVgqjNQY/squid_n_shorewall_conf.html
cp /usr/local/shorewallconf/* /etc/shorewall/
update-rc.d shorewall defaults

tambahkan code2 berikut sebelum exit 0 

iptables -t nat -A POSTROUTING -o eth0 -s 192.168.1.0/24 -j MASQUERADE
iptables --table nat -A PREROUTING -s 192.168.1.0/24 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports   3128

22 January 2014

CPanel Install is easy

CPanel Install is easy

Bagi anda yang belum pernah memakai Linux sebagai OS server padahal anda membutuhkannya, seperti halnya saya harus mencari managemen website untuk seluruh website yang ada di kantor, maka saya sarankan anda memilih CPanel dengan OS centos.
Instalasi sangatlah mudah, tahap pertama adalah kita menyiapakan hardware (ini tugas orang lain untuk beli).
  1. Download ISO Centos dari cpanel, DISINI
  2. Burn dalam DVD
  3. Server boot dari DVD ang barusan dibuat (direkomendasikan install OS yang FRESH (baru))
  4. Konfigurasi server saat install
    - Ikuti step-step instalasi, isikan dengan default saja
    - Install dengan minimal install, tidak boleh ada Apache, MySQL, DNS dan sejenisnya
    - Jangan install XWindows, karena server akan lebih berat dan akan membuka hole security
    - lihat referensi disini
  5. Kira-kira 30 menis instalasi OS Centos 5.1 akan selesai
  6. Lakukan setup dasar secukupnya
    - IP LAN, dengan perintah : system-config-network
  7. Download script instalasi
    - cd /home
    - wget http://layer1.cpanel.net/latest
    - sh latest
    - Proses instalasi cpanel akan berjalan, silahkan tunggu kira-kira 3jam (tergantung bandwith internet anda). Server akan dikonfigurasi otomatis.
  8. Saat proses selesai, berarti instalasi cpanel anda telah berhasil
Memang tahapan instalasi ini belum 100% selesai, sebab belum dilakukan konfigurasi cpanel. Tanpa dilakukan konfigurasi maka cpanel tidak akan berfungsi.
Silahkan lihat manual menjalankan cpanel pertama kali di panduan login pertamakali

05 January 2014

Cara instalasi Cpanel EHCP di Ubuntu Server

EHCP (Easy Hosting Control Panel) adalah aplikasi opensource yang sangat effective digunakan untuk Control Panel Hosting yang menawarkan Anda untuk meng-host situs web, membuat account ftp, account email, sub domain dan sebagainya. Ehcp adalah control panel hosting yang pertama ditulis dengan menggunakan bahasa pemrograman PHP dan tersedia secara gratis.
EHCP ini menawarkan semua fitur kontrol  panel hosting seperti FTP Account, MySQL Database, Pengguna Panel, Reseller, MailBox dengan Squirrelmail and Round Cube dll Ini adalah satu-satunya control panel pertama yang menyediakan untuk mendukung Nginx dan PHP-FPM dengan benar-benar membuang Apache dan memberikan kinerja yang lebih baik untuk server low end atau VPS.

EHCP Features

  • Complete php, free opensource, easily customizable and more free templaes.
  • Unlimited resllers, user accounts, ftp accounts, email accounts, mysql and domains.
  • Management of DNS, domains, subdomains, ftp, mysql, email etc.
  • Domains password protected, Email forwarding, autoreply etc.
  • Website analytics with webalizer and ftp with net2ftp.
  • One click third party script install.
  • User Disk quota control, SSL suport, custom http redirects, domain aliases, domain redirect.
  • Different langauge support and template supports with few languages.
  • Server backup and restore including files and databases.
Artikel ini akan membantu Anda untuk menginstal dan setup  Hosting Control Panel dengan Mudah di Ubuntu 12.04/12.10/13.04/13.10. Harap dicatat ehcp dapat diinstal pada instalasi baru dari Linux. Instalasi ehcp cukup sederhana dan mudah, pengguna baru tidak akan menghadapi masalah apapun memasangnya pada saat pertama.
Langkah-langkah Instalasi EHCP

 wget -O ehcp.tgz www.ehcp.net/ehcp_latest.tgz
tar -zxvf ehcp.tgz
cd ehcp
./install.sh

 setelah kita melakukan instruksi install.sh maka akan menginstal semua paket yang diperlukan untuk EHCP yaitu  termasuk Apache, MySQL, PHP, Postfix dan sebagainya.
Hal ini sangat, disarankan bagi Anda untuk mengatur MySQL ‘root’ password untuk administrasi MySQL.
Kemudian masuk password root and klik OK.
 Kemudian masukan password lagi dan klik OK.
 Sekarang pilih mail server mana yang kompatibel untuk Anda.
 Dalam kasus ini saya memilih “Internet Site”.
Masukkan email nama domain Anda dan klik OK.
Pilih ‘Yes’ untuk membuat web based directories
Klik ‘OK’ untuk membuat sertifikat SSL.
Pilih webserver yang Anda inginkan dan klik ‘OK’ dalam kasus ini saya memilih webserver apache2.

Kemudian kita lakukan konfigurasi phpmyadmin untuk mengelola database. Klik Yes
Tentukan password user administrator database phpmyadmin
 Masukkan password root MySQL Anda dan klik OK

Sekarang kita lanjutkan mengkonfigurasi roundcube-core.
Pilih database untuk roundcube. Dalam kasus ini saya pilih MySQL
Kemudian kita tentukan password untuk account administrator roundcube
menentukan password MySQL untuk roundcube
Dan instalasi Cpanel EHCP selesai
Sekarang kita buka jendela  Web browser dan masukkan alamat IP dari server Anda.

  1. http://youripaddress/
  2. OR
  3. http://localhost

24 December 2013

KONFIGURASI FTP SERVER - Ubuntu Server

Pengertian FTP Server

FTP (File Transfer Protocol) merupakan protokol yang berguna untuk transfer data antar komputer maupun anter jaringan. Protokol ini memiliki port 21 secara defaultnya. Protokol ini juga masih digunakan hingga sekarang sebagai media upload dan download data yang ada di internet.

Jenis-jenis FTP Server

Ftp server memiliki 2 jenis, yaitu :
1. Anonymous FTP
2. Private FTP

Anonymous FTP adalah FTP yang bisa digunakan dan dilihat oleh semua orang yang berada di internet. Apabila kita ingin membuka ftp jenis ini tidak perlu memasukan user dan password, jadi kita hanya perlu memasukan link ftp kedalam url browser.

Private FTP adalah FTP yang hanya bisa digunakan bagi mereka yang memiliki hak akses atau akun ftp tersebut. Apabila kita ingin membuka ftp jenis ini kita perlu memasukan akun seperti user dan password. Karena jenisnya yang private jadi keamanan datanya lebih terjamin dibandingkan dengan Anonymous FTP.

Cara Kerja FTP Server

Komputer client bertindak sebagai ftp client yang memberikan command atau query kepada si ftp server. Ftp server menerima command dari ftp client dan memberikan layanan sesuai dengan apa yang diperintahkan oleh si ftp client. Ftp server itu sendiri adalah sebuah layanan untuk membantu tugas ftp client dalam melakukan proses upload dan download data antar komputer bahkan jaringan komputer.

Instalasi FTP Server

Pertama-tama kita harus menginstall software untuk ftp servernya. Disini saya menggunakan proftpd. Untuk menginstallnya ketikan perintah berikut di terminal :




Tunggu hingga proses instalasi selesai. Apabila ada jendela yang muncul pilih saja standalone.

Konfigurasi FTP Server

Disini kita akan mengkonfigurasi 2 jenis FTP, yaitu
1. Anonymous FTP
2. Private FTP

Sebelum mengkonfigurasi FTP server ada beberapa file yang akan kita konfig, yaitu :
1. /etc/proftpd/proftpd.conf
2. /home/ftp  merupakan tempat dimana file/data disimpan untuk private ftp
3. /srv/file  merupakan tempat dimana file/data disimpan untuk anonymous ftp

Konfigurasi Private FTP Server

Pada terminal ketikan perintah berikut :
nano /etc/proftpd/proftpd.conf
kemudian akan muncul isi file dari proftpd.conf seperti berikut :


Selanjutnya kita edit beberapa settingan yang ada, seperti
- UseIpv6 on  off
- ServerName “debian”  “nama_server_name_ftp_anda”
- Aktifkan DefaultRoot dan isikan tempat untuk menaruh file/data. Karena kita tadi sudah sepakat membuatnya di /home/ftp maka tuliskan itu di defaultroot

Berikut contohnya :



Setelah itu save dengan cara yang sama

Kemudian kita akan membuat file yaitu /home/ftp, pada terminal ketikan perintah berikut :
mkdir /home/ftp

setelah itu kita masuk kedalam direkroti /home/ftp, kita akan membuat beberapa folder dan file didalam direktori tersebut, berikut contohnya :


Kalau sudah semuanya, sekarang kita restart paket proftpdnya dengan perintah :
/etc/init.d/proftpd restart

Pengecekan Konfigurasi Private FTP di Client

Untuk settingan IP pada client tidak berubah masih sama dengan sewaktu kita mengkonfigurasi DNS.
Langsung saja kita buka browsernya dan ketikan server name ftp di url, berikut contohnya :


Kemudian enter untuk melakukan request ke ftp server. Pada saat request pasti kalian akan diminta untuk memasukan user dan password. Untuk mengisi form tersebut isikan saja user dan pass sewaktu kalian login di Ubuntu server.


Selanjutkan tekan OK, lalu akan muncul tampilan seperti berikut :


Apabila tampilan kalian muncul seperti itu berarti konfigurasi kalian telah berhasil. Selamat 

Konfigurasi Anonymous FTP Server

Setelah kita membuat Private FTP server, sekarang kita akan membuat anonymous ftp server. Buka kembali file /etc/proftpd/proftpd.conf dengan menulisnya di terminal.
nano /etc/proftpd/proftpd.conf

setalah terbuka, cari tulisan “# <Anonymous ~Ftp>” seperti berikut :


Kemudian hapus tanda pagar pada <Anonymous ~Ftp> hingga </Anonymous>, berikut contohnya :



Setelah itu kita non aktifkan DefaultRoot yang sebelumnya sudah di aktifkan



Lalu save dan restart file dan paket proftpdnya
Ctrl+x  y  enter dan /etc/init.d/proftpd restart

Sekarang kita akan menuju direktori /srv/ftp untuk mengisi file atau data, berikut contohnya


Pengecekan Anonymous FTP Server di Client

Buka browser lalu ketikan nama server ftp di url, kemudian enter. Maka akan muncul isi direktori dari /srv/ftp, seperti beritkut :


Apabila tampilan browser kalian seperti gambar diatas berarti konfigurasi kalian telah berhasil. Selamat

sumber: http://tulisanilmukomputer.blogspot.com/2013/09/konfigurasi-ftp-server-ubuntu-server.html

Cara Instal Repository BackTrack 5 di Ubuntu 12.04

Pada tutorial kali ini saya akan menuliskan cara untuk menambahkan repository BackTrack pada Ubuntu 12.04 sehingga pembaca dapat menginstal tool-tool BackTrack di Ubuntu. Berikut cara menambahkan repository BackTrack di Ubuntu.

1) import dulu gpg BT5.
  Download dulu gpg key BT5:


 GPG Key Back Track 5

Kemudian import key dengan cara buka synaptic kemudian pilih menu 
-Settings  
-Repositories
-kemudian pada jendela Software Sources pilih tab Authentication dan klik tombol Import  Key File yang berada di pojok kiri bawah 
-Pilih file .gpg yang telah Anda download tadi kemudian close.


Atau kalian juga  bisa menambahkan GPG melalui terminal dengan menjalankan perintah di bawah ini:

sudo wget http://all.repository.backtrack-linux.org/backtrack.gpg
sudo apt-key add backtrack.gpg

2) tambahkan source BackTrack dengan menjalankan perintah di bawah ini pada terminal:

sudo gedit /etc/apt/sources.list

Repository dari official resmi

deb http://all.repository.backtrack-linux.org revolution main microverse non-free testing
deb http://32.repository.backtrack-linux.org revolution main microverse non-free testing
deb http://source.repository.backtrack-linux.org revolution main microverse non-free testing

Repository dari IDWS
deb http://backtrack.indowebster.com/repo/all revolution main microverse non-free testing
deb http://backtrack.indowebster.com/repo/32 revolution main microverse non-free testing
deb http://backtrack.indowebster.com/repo/source revolution main microverse non-free testing

Tambahkan source di atas di bagian paling bawah pada file sources.list kemudian save dan close.

3) setelah selesai menambahkan sources.list update ubuntu Anda melalui terminal dengan perintah berikut:

sudo apt-get update
 
Cara Instal Repository BackTrack 5 di Ubuntu 12.04~nach sekarang teman-teman sudah bisa menginstalkan repository di Ubuntu 12.04 .
selamat mencobah yach.

Cara Install Web Server Di Ubuntu Server 12.04

Cara Install Web Server Di Ubuntu Server 12.04~Web Server yang digunakan disini adalah LAMP (Linux, Apache, MySQL, PHP).
Install LAMP Server


 (sudo apt-get install lamp-server^)
Pada tahapan instalasi MySQL Server akan diminta untuk memasukkan password root MySQL.
Menjalankan server apache

 (sudo service apache2 start)
Lokasi folder web /var/www/.
Rubah  permission folder agar mudah diakses tanpa harus memakai user root.

 (
sudo chmod -R 777 /var/www)
Pengujian Apache, akses http://localhost. Jika muncul gambar seperti di bawah ini berarti Apache sudah berfungsi apache localhost
Menjalankan server mysql

 (sudo service mysql start)
Pengujian MySQL





-mysql -u root -p
-Enter password:
-Welcome to the MySQL monitor.  Commands end with ; or \g.
-Your MySQL connection id is 53
-Server version: 5.5.24-0ubuntu0.12.04.1 (Ubuntu) 
-Copyright (c) 2000, 2011, Oracle and/or its affiliates. All rights reserved
-Oracle is a registered trademark of Oracle Corporation and/or its
-affiliates. Other names may be trademarks of their respective
owners
-Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
 -mysql>
Pengujian PHP
Buat file phpinfo.php di /var/www/, isinya :


-<?php 
- phpinfo();
-?>
Akses http://localhost/phpinfo.php, jika muncul gambar seperti di bawah ini berarti PHP sudah berfungsi
phpinfo
Install PhpMyAdmin, aplikasi untuk manajemen database via web
(
sudo apt-get install phpmyadmin)
Pengujian, akses http://localhost/phpmyadmin phpmyadmin
Jika akses ke http://localhost/phpmyadmin tidak ditemukan Error 404 ketik perintah dibawah ini. Perintah dibawah ini untuk membuat link folder dari /usr/share/phpmyadmin ke folder /var/www.

cd /var/www
ln -s /usr/share/phpmyadmin/ phpmyadmin
 
Cara Install Web Server Di Ubuntu Server 12.04~demikian pembahasan kali ini tentang cara install web server di ububntu 12.04. (untuk temqan-teman yang ingin mengkonfigurasi DNS server di ubuntu 12.04 sebaiknaya mengisntall terlebih dahulu web server)

23 December 2013

Mengaktifkan HTTPS di Ubuntu

Mengaktifkan HTTPS di Ubuntu

Langkah 0: Instalasi openssl dengan apt-get
apt-get install openssl
Langkah 1: Mengenerate Private Key -
openssl genrsa -des3 -out server.key 1024
Langkah 2: Mengenerate CSR (Certificate Signing Request) -
openssl req -new -key server.key -out server.csr

Langkah 3: Hapus Passphrase dari Key -
cp server.key server.key.org
openssl rsa -in server.key.org -out server.key
Langkah 4: Mengenerate Self-Signed Certificate -
openssl x509 -req -days 365 -in server.csr -signkey server.key -out server.crt
Langkah 5: Salin server.crt dan server.key ke /etc/apache2/ssl -
cp server.key /etc/apache2/ssl
cp server.crt /etc/apache2/ssl
Langkah 6: Meng-Enable-kan ssl -
a2enmod ssl
Langkah 7: Buat konfigurasi SSL -
7.1 – Jika menggunakan Ubuntu ~10.04 (pada versi 12.04 sudah ada secara default)
cp /etc/apache2/sites-available/default /etc/apache2/sites-available/default-ssl
buat symlink untuk sites-enabled:
ln -s /etc/apache2/sites-available/default-ssl /etc/apache2/sites-enabled/000-default-ssl
Langkah 8: Setup Document Root SSL -
cd /var
mkdir www-ssl
Langkah 9: Konfigurasi virtual hosts -
sudo su
cd /etc/apache2/sites-available
cp /etc/apache2/sites-available/default default_original
cp /etc/apache2/sites-available/default-ssl default-ssl_original
Untuk konfigurasi HTTP pada port 443 (edit /etc/apache2/sites-available/default-ssl):
ServerName {nama_domain.com}:443
Listen 443
SSLEngine On
SSLCertificateFile /etc/apache2/ssl/server.crt
SSLCertificateKeyFile /etc/apache2/ssl/server.key
Langkah 10: restart apache -
apache2ctl configtest
Restart Apache:
apache2ctl restart
Selesai. Silakan browsing ke: https://yourdomain.com .

sumber: http://www.edusoftcenter.com/mengaktifkan-https-di-ubuntu/

20 December 2013

cara merbah repository Ubuntu dan install web server

cara merbah repository Ubuntu dan install web server

  1. Ubah repository Ubuntu 12.04 ke lokal
    Dalam hal ini, karena saya ingin berhemat dengan bandwidth international yang ada, maka saya ubah repository default ke repository dalam negeri, yaitu repository Kambing UI dan FTP ITB. Selain menghemat bandwidth internasional juga lebih cepat dalam aksesnya.
    sudo gedit /etc/apt/sources.list
    ganti dengan berikut
    ## ITB
    deb ftp://ftp.itb.ac.id/pub/ubuntu/ precise-proposed main restricted universe multiverse
    deb ftp://ftp.itb.ac.id/pub/ubuntu/ precise-security main restricted universe multiverse
    deb ftp://ftp.itb.ac.id/pub/ubuntu/ precise-updates main restricted universe multiverse
    deb ftp://ftp.itb.ac.id/pub/ubuntu/ precise main restricted universe multiverse
    
    # Kambing
    deb http://kambing.ui.ac.id/ubuntu/ precise-proposed main restricted universe multiverse
    deb http://kambing.ui.ac.id/ubuntu/ precise-security main restricted universe multiverse
    deb http://kambing.ui.ac.id/ubuntu/ precise-updates main restricted universe multiverse
    deb http://kambing.ui.ac.id/ubuntu/ precise main restricted universe multiverse
    Simpan kemudian
    sudo apt-get update
    biar ubuntunya tau kemana harus nyari aplikasi.
  2. Installasi LAMP (Linux-Apache-MySQL-PHP) Server
    Untuk bagian yang paling penting dalam web server ini saya pakai tasksel, suatau tools untuk menginstall satu paket lamp, biar gampang.
    sudo apt-get install tasksel
    setelah selesai
    sudo tasksel
    karena saya mengalami sedikit masalah dengan installasi menggunakan GUI tasksel, akhirnya saya pakai command
    sudo apt-get install lamp-server
  3. Install phpmyadmin
    Sebenarnya bisa tanpa phpmyadmin tetapi butuh waktu untuk menyesuaikan diri pakai text command, jadi pakai phpmyadmin saja.
    sudo apt-get install phpmyadmin
    Setelah installasi selesai, tinggal tambahkan phpmyadmin kedalam konfiguarsi apache.
    sudo gedit /etc/apache2/apache2.conf
    Memasukkan phpmyadmin agar phpmyadmin bisa diakses dari browser.
    Include /etc/phpmyadmin/apache.conf
    Restart apache:
    sudo service apache2 restart
  4. Install ProFTPD
    Install
    sudo apt-get install proftpd
    Sedikit konfigurasi
    sudo nano /etc/proftpd/proftpd.conf
    Menentukan direktori pengguna agar di berada di direktori home masing-masing.
    # Use this to jail all users in their homes
     DefaultRoot                    ~
    Restart:
    sudo service proftpd restart
  5. Selesai

19 December 2013

KETERANGAN TENTANG SQUID.CONF DI PROXY SERVER

KETERANGAN TENTANG SQUID.CONF DI PROXY SERVER

squid.conf adalah file yang digunakan untuk melakukan konfigurasi squid. Disini saya tidak akan menampilkan semua konfigurasi squid.conf, tetapi hanya yang bisa untuk mengoptimalkan kinerja squid. Misal opsi http_port tidak saya cantumkan, jika anda ingin mengetahui list lengkap dan deskripsi dari opsi-opsi konfigurasi squid yang ada


hosts_file /etc/hosts
dns_nameservers 208.67.222.222 208.67.220.220
cache_replacement_policy heap LFUDA
cache_swap_low 90
cache_swap_high 95
maximum_object_size_in_memory 50 KB
cache_dir aufs /var/spool/squid 10000 16 256
cache_mem 64 MB
logfile_rotate 10
memory_pools off
maximum_object_size 50 MB
quick_abort_min 0 KB
quick_abort_max 0 KB
log_icp_queries off
client_db off
buffered_logs on
half_closed_clients off


Apa maksud dari opsi-opsi diatas?

hosts_file /etc/hosts opsi ini untuk memerintahkan squid untuk melihat entri yang ada di /etc/hosts, hal ini berguna jika anda ingin memblokir iklan atau situs jahat dengan memanfaatkan file /etc/hosts (Insya Allah mendatang saya akan membuat tutorial ini.

dns_nameservers 208.67.222.222 208.67.220.220 Ini Penting! Squid akan mem-pause (menghentikan sementara) koneksi ketika melakukan DNS lookup. Dengan memasukkan DNS, maka akan mencegah hal ini. Disini saya menggunakan DNS dari OpenDNS.

cache_replacement_policy heap LFUDA ini adalah pilihan replacement policy, dimana saya menggunakan heal LFUDA. Anda bisa menggunakan pilihan lain, info lengkap perihal cache_replacement_policy

cache_swap_low 90 adalah prosentase dimana squid akan melakukan pembersihan cache, jadi jika anda memiliki 10 GB , maka squid akan melakukan pembersihan cache lama pada penggunaan 9 GB.

cache_swap_high 95 secara agresif squid akan menghapus file cache lama dengan menggunakan opsi replacement policy yang disebutkan diatas.

maximum_object_size_in_memory 50 KB Ini untuk menentukan besaran file yang akan disimpan di memori. Pada konfigurasi ini saya mengaturnya maksimum hanya 50 KB, ini agar tidak mengganggu memori. Penyimpanan file yang besar di memori akan memberikan beban tinggi sehingga mmeori tidak bisa dikontrol dengan baik.

cache_dir aufs /var/spool/squid 10000 16 256 Dianjurkan untuk tidak mengubah opsi AUFS, karena opis ini memiliki performa yang lebih bagus dari opsi lain. Angka 10000 adalah jumlah besarnya file cache yang digunakan squid dalam MB.

cache_mem 64 MB Jangan mengatur cache_mem terlalu besar. Cache_mem menunjukkan jumlah maksimal RAM yang digunakan oleh squid untuk menyimpan obyek di memori. Ingat, squid membutuhkan RAM sekitar 100 MB per 1 GB file cache. Jadi, jika anda memiliki 10 GB file cache, maka squid membutuhkan RAM minimal 1 GB.

memory_pools off Menghentikan squid menempel di memori ketika tidak ada aktifitas.

maximum_object_size 50 MB ini adalah jumlah maksimum obyek yang akan disimpan oleh squid. Dianjurkan untuk tidak mengaturnya terlalu besar.

quick_abort_min 0 KB opsi ini sangat berguna, tetapi dalam kasus tertentu akan membuat squid tidak optimal. Quick_abort_time akan mengevaluasi berapa banyak sisa data yang akan ditransfer jika klien membatalkannya. Jika nilainya berada dalam range quick_abort, maka quid akan melanjutkan download sampai selesai dan kemudian menyimpannya di cache. Memang terdengar bagus, namun masalah akan muncul jika klien melakukan beberapa koneksi, maka squid akan menyelesaikan proses download untuk semua koneksi, dan akibatnya squid menjadi lambat. Dengan mengaturnya ke angka 0, maka squid akan menonaktifkan opsi ini.

quick_abort_max 0 KB fungsi sama dengan quick_abort_min

log_icp_queries off jika anda menggunakan cache_peer, maka opsi ini akan menghentikan squid untuk selalu melakukan query ke masing-masing cache_peer.

client_db off jika diaktifkan maka squid akan menyimpan statistik semua klien, hal ini bisa membebani mmeori, maka sebaiknya dinonaktifkan.

buffered_logs on melakukan buffering pada penulisan file log, dapat meingkatkan performa squid.

half_closed_clients off mengirimkan connection-close ke klien sehingga membuka setengah koneksi untuk squid.

Setelah konfigurasi squid.conf dilakukan, kini saatnya menjalankan squid. Ketikkan perintah agar squid membuat swap

/usr/sbin/squid -z

kemudian aktifkan squid

/usr/sbin/squid start

Cek apakah squid sudah berjalan apa belum dengan perintah

sudo netstat -pln | grep squid

bila muncul tampilan seperti dibawah ini, berarti squid sudah berjalan

tcp 0 0 0.0.0.0:3128 0.0.0.0:* LISTEN 4281/(squid)
udp 0 0 0.0.0.0:3130 0.0.0.0:* 4281/(squid)
udp 0 0 0.0.0.0:50113 0.0.0.0:* 4281/(squid)
udp 0 0 0.0.0.0:3401 0.0.0.0:* 4281/(squid)


Note: Jika anda ingin melakukan pengaturan bandwidth dengan fitur delay_pools, silahkan baca petunjuknya di blog Ghozali.

Pimp Your Squid!

Ok, squid sudah kita optimalkan, bagaimana dengan TCP? Pertama, kita akan melakukan 'modprobe ip_conntrack' dengan menambahkan modul ini di /etc/modules (debian) atau /etc/modprobe.conf (RHEL/CentOS).

Hal diatas akan menghentikan squid memunculkan pesan

parseHttpRequest: NF getsockopt(SO_ORIGINAL_DST) failed: (92) Protocol not available

Kemudian kita akan melakukan modifikasi pada sysctl. Tambahkan baris berikut pada akhir file /etc/sysctl.conf

fs.file-max = 65535
net.core.rmem_default = 262144
net.core.rmem_max = 262144
net.core.wmem_default = 262144
net.core.wmem_max = 262144
net.ipv4.tcp_rmem = 4096 87380 8388608
net.ipv4.tcp_wmem = 4096 65536 8388608
net.ipv4.tcp_mem = 4096 4096 4096
net.ipv4.tcp_low_latency = 1
net.core.netdev_max_backlog = 4000
net.ipv4.ip_local_port_range = 1024 65000
net.ipv4.tcp_max_syn_backlog = 16384


Kemudian tambahkan entri berikut pada file /etc/security/limits.conf

* - nofile 65535

07 December 2013

squid.conf dan storeurl.pl terbaru untuk cache youtube 2013

langkah-langkah

1. apt-get install libfile-readbackwards-perl
2. edit squid.conf dan sisipkan : 

 strip_query_terms off
acl yutub dstdomain .youtube.com .youtu.be
logformat squid1 %{Referer}>h %ru
access_log /var/log/squid/access.log squid1 yutub
acl redirec urlpath_regex -i &redirect_counter=1&cms_redirect=yes &ir=1&rr=12
cache deny redirec
storeurl_access deny redirec
acl reddeny url_regex -i c\.youtube\.com\/videoplayback.*redirect_counter=1.*$
acl reddeny url_regex -i c\.youtube\.com\/videoplayback.*cms_redirect=yes.*$
storeurl_access deny reddeny
acl dontrewrite url_regex redbot\.org \.php
acl getmethod method GET

3. edit storeurl.pl dan sisipkan :

} elsif ($X[1] =~ m/^http\:\/\/.*(youtube|google).*videoplayback.*/){
        sleep(2);
        @itag = m/[&?](itag=[0-9]*)/;
        @CPN = m/[&?]cpn\=([a-zA-Z0-9\-\_]*)/;
        @IDS = m/[&?]id\=([a-zA-Z0-9\-\_]*)/;
        $id = &GetID($CPN[0], $IDS[0]);
        @range = m/[&?](range=[^\&\s]*)/;
        print $x . "http://video-srv.youtube.com.SQUIDINTERNAL/id=" . $id . "&@itag@range\n";


dan paling  bawah setelah if paling terakhir tambahkan :
sub GetID
{
use File::ReadBackwards;
my $lim = 200 ;
my $ref_log = File::ReadBackwards->new('/var/log/squid/access.log');
while (defined($line = $ref_log->readline))
{
if ($line =~ m/.*youtube.*\/watch\?.*v=([a-zA-Z0-9\-\_]*).*\s.*id=$IDS[0].*/){
$id = $1;
last;
}
if ($line =~ m/.*youtube.*\/.*cpn=$CPN[0].*[&](video_id|docid|v)=([a-zA-Z0-9\-\_]*).*/){
$id = $2;
last;
}
if ($line =~ m/.*youtube.*\/.*[&?](video_id|docid|v)=([a-zA-Z0-9\-\_]*).*cpn=$CPN[0].*/){
$id = $2;
last;
}
last if --$lim <= 0;
}
if ($id eq ''){
$id = $CPN[0];
}
$ref_log->close();
return $id;
}




============================================================================
acl youtube url_regex -i youtube.*(ptracking|stream_204|player_204|gen_204)[ada space disini].*$
acl youtube url_regex -i \.c\.(youtube|google)\.com\/(get_video|videoplayback|videoplay).*$

saya ubah jadi

acl youtube url_regex -i youtube.*(ptracking|stream_204|player_204|gen_204) .*$
acl youtube url_regex -i \.(youtube|google|googlevideo)\.com\/(get_video|videoplayback|videoplay).*$
storeurl_access allow youtube
====================================================================
 Seharusnya memang tidak ada spasi. Krn regex apapun tidak mengenal karakter spasi alias kosong/hampa udara.