bagus on June 24th, 2013

FTP masih sering digunakan sebagai protokol untuk sharing file antar satu host ke host dengan menggunakan jaringan berbasis TCP semisal internet.

Berikut tutorial cara membuat account ftp pada server FreeBSD 9

  1. Pertama kita aktifkan terlebih dahulu server ftp yang ada, pd kesempatan kali ini penulis gunakan ftpd
      • edit file /etc/inetd.conf hilangkan tanda pagar untuk ftpd :

    #vi /etc/inetd.conf
    ftp     stream  tcp     nowait  root    /usr/libexec/ftpd       ftpd -l
    ftp     stream  tcp6    nowait  root    /usr/libexec/ftpd       ftpd -l

      • tambahkan inetd_enable=”YES” dan ftpd_enable=”YES” pada /etc/rc.conf supaya bisa diload setiap kali booting
      • Jalankan inetd dengan perintah

    #/etc/rc.d/inetd start

      • Jalankan server ftpd dengan perintah

    #service ftpd start

    1. Membuat script untuk membatasi user account supaya tidak bisa login ke shell (via ssh)

    #vi /usr/sbin/ftponly
    #!/bin/sh -p
    echo ‘Account ini hanya untuk akses ftp saja.’
    exit 1

  2. membuat user ftp dengan perintah adduser

# adduser
Username: bagus
Full name: Bagus Setiawan
Uid (Leave empty for default):
Login group [bagus]:
Login group is bagus. Invite bagus into other groups? []:
Login class [default]:
Shell (sh csh tcsh ftponly nologin) [sh]: ftponly
Home directory [/home/bagus]:
Home directory permissions (Leave empty for default):
Use password-based authentication? [yes]:
Use an empty password? (yes/no) [no]:
Use a random password? (yes/no) [no]:
Enter password:
Enter password again:
Lock out the account after creation? [no]:
Username   : bagus
Password   : *****
Full Name  : Bagus Setiawan
Uid        : 1005
Class      :
Groups     : bagus
Home       : /home/bagus
Home Mode  :
Shell      : /usr/sbin/ftponly
Locked     : no
OK? (yes/no): yes

Sumber : http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/network-ftp.html

bagus on May 27th, 2013
  • booting in  single user mode
  • remount / (root) file system in read and write mode

# mount -u /
# mount -a

  • ubah password kemudian restart

Untuk linux ubuntu dan debian :

  • booting recovery mode
  • drop to root shell prompt
  • remount root

mount -rw -o remount /

  • Ubah password
  • reboot
bagus on April 9th, 2013

tambahakan pada rc.conf

#mysql_enable=”YES”
#mysql_args=”–skip-grant-tables –skip-networking”

restart service mysql

#usr/local/etc/rc.d/mysql-server restart

Login mysql dengan user root

#mysql -u root

>use mysql;

> update user set password=password(“newpassword”) where user=”root”;

>exit;

 

 

mysql> SELECT User, Host, Password FROM mysql.user;
+——+————–+———-+
| User | Host         | Password |
+——+————–+———-+
| root | localhost    |                  |
| root | xxxx.ac.id  |                   |
| root | 127.0.0.1    |                  |
| root | ::1                |                    |
|          | localhost    |                  |
|          | xxxx.ac.id |                      |
+——+————–+———-+
6 rows in set (0.00 sec)

shell> mysql -u root
mysql> UPDATE mysql.user SET Password = PASSWORD('newpwd')
    ->     WHERE User = 'root';
mysql> FLUSH PRIVILEGES; mysql> SELECT User, Host, Password FROM mysql.user; +------+--------------+-------------------------------------------+ | User | Host         | Password                                  | +------+--------------+-------------------------------------------+ | root | localhost    | *4B7EC5AD1342E0011F75151A84C077B6ED45FC9 | | root | db.uns.ac.id | *4B7EC5AD1342E0011F75151A84C077B6ED45FC9 | | root | 127.0.0.1    | *4B7EC5AD1342E0011F75151A84C077B6ED45FC9 | | root | ::1          | *4B7EC5AD1342E0011F75151A84C077B6ED45FC9 | |      | localhost    |                                           | |      | db.uns.ac.id |                                           | +------+--------------+-------------------------------------------+ 6 rows in set (0.00 sec) mysql> exit; Bye 
shell>

																				
				
bagus on April 8th, 2013

Update port di FreeBSD bisa menggunakan fasilitas Portsnap, dikarenakan “by February 28th 2013 the FreeBSD ports tree will no longer be exported to CVS”.

Beikut langkah-2x yg dilakukan untuk update koleksi port dengan Portsnap :

#portsnap fetch
#portsnap extract

#portsnap update

 

bagus on February 14th, 2013

Tutorial install webserver di server ubuntu

  • Persiapan

Assumsi server ubuntu sudah tersinstall :

# lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description:    Ubuntu 12.04.1 LTS
Release:        12.04
Codename:       precise

Set konfigurasi jaringan  :

# vi /etc/network/interfaces
The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
auto eth0
iface eth0 inet static
address 203.x.x.x
network 203.x.x.255
netmask 255.255.255.0
brodcast 203.x.x.255
gateway 203.x.x.1

# vi /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
# DO NOT EDIT THIS FILE BY HAND — YOUR CHANGES WILL BE OVERWRITTEN
nameserver 2203.x.x.x
nameserver 2203.x.x.x

# /etc/init.d/networking restart
# ifconfig
# ping >www.google.com

PING google.com (74.125.236.66) 56(84) bytes of data.
64 bytes from maa03s05-in-f2.1e100.net (74.125.236.66): icmp_req=1 ttl=55 time=58.8 ms
64 bytes from maa03s05-in-f2.1e100.net (74.125.236.66): icmp_req=2 ttl=55 time=58.9 ms

# vi /etc/network/options
ip_forward=no
spoofprotect=yes
syncookies=no

Set koneksi ssh supaya bisa remote :

#apt-get install openssh-server openssh-client

 

  • Sekarang saatnya install webserver : mysql5+apache2+php5+phpmyadmin

#apt-get update (untuk update paket2x di ubuntu – klo di freebsd pakai cvsup-without-gui)
#apt-get install mysql-server
#apt-get install apache2
#apt-get install php5
#apt-get install phpmyadmin

  • Post Installation…..

cek service apache :
#/etc/init.d/apache2 stop
#/etc/init.d/apache2 start
#ps ax | grep apache2

 5538 ?        Ss     0:00 /usr/sbin/apache2 -k start
 5543 ?        S      0:00 /usr/sbin/apache2 -k start
 5544 ?        S      0:00 /usr/sbin/apache2 -k start
 5545 ?        S      0:00 /usr/sbin/apache2 -k start
 5546 ?        S      0:00 /usr/sbin/apache2 -k start
 5547 ?        S      0:00 /usr/sbin/apache2 -k start

#netstat -pln | grep 80
tcp        0      0 0.0.0.0:80              0.0.0.0:*               LISTEN      5538/apache2

konfigurasi apache :

#/etc/apache2/apache2.conf

File2x konfigurasi ada di folder -> /etc/apache2/
Default httpddocs -> /var/www/

- Menambah server Alias :

#a2enmod alias
#vi /etc/apache2/sites-available/default

- Mengaktifkan mod rewrite :

#locate  mod_rewrite.so
#nano /etc/apache2/mods-enabled/rewrite.load
LoadModule rewrite_module /usr/lib/apache2/modules/mod_rewrite.so
#service apache2 restart  

cek php dengan membuat file info.php berisi fungsi phpinfo()
# cd /var/www/
# vi info.php

<?
phpinfo ()
?>

untul lokasi php.ini di -> /etc/php5/apache2/php.ini

cek koneksi ke mysql dengan membuat file dbtest.php
# cd /var/www/ # vi dbtest.php
<?php
$con = mysql_connect(“localhost”,”root”,”password_root_mysql”);
if (!$con)
{
die(‘Tidak bisa koneksi: ‘ . mysql_error());
}
else
{
echo “Selamat, Koneksi ke database berhasil !”;
}
mysql_close($con);
?>

lokasi my.cnf di -> /etc/mysql/my.cnf

Untuk meremote database menggunakan navicat atau tool lain hidupkan fasilitas networking dengan meng-comment : #bind-address=127.0.0.1

restart mysql
#/etc/init.d/mysql restart

lokasi database mysql di : /var/lib/mysql

set konfigurasi phpmyadmin di apache2 :
edit file /etc/apache2/apache2.conf kemudian tambahkan baris berikut “Include /etc/phpmyadmin/apache.conf”
# vi /etc/apache2/apache2.conf
#include phpmyadmin configurations:
Include /etc/phpmyadmin/apache.conf

restart apache
#service apache2 restart

akses phpmyadmin dari : http://alamat.anda/phpmyadmin

Install WP 3.5 di server frebsd 9 muncul tampilan error : “Your PHP installation appears to be missing the MySQL extension which is required by WordPress”. Setelah mencoba menganalisis ketemu penyebanya bahwa modul yg terinstall di php adalah mysqli (mysql improved) sehingga ekstensi yg ada baru php5-mysqli.

Maka muncul pesan error diatas “missing MySQL extension”….

Solusinya install saja ektensi php5-mysql sbb


bagus# cd /usr/ports/databases/php5-mysql
bagus# make install clean
===> Checking if databases/php5-mysql already installed
===> Registering installation for php5-mysql-5.4.10
****************************************************************************

The following line has been added to your /usr/local/etc/php/extensions.ini
configuration file to automatically load the installed extension:

extension=mysql.so

****************************************************************************
===> Cleaning for php5-mysql-5.4.10

Kemudian restart webserver :

bagus# apachectl restart

Refresh web broswer, maka pesan error sudah hilang masuk kehalaman awal instalasi WP 3.5

Pengalaman install joomla 1.5 di server freebsd9 muncul eror :  PHP Fatal error:  Call to undefined function xml_parse()

Solusi dari masalah tsb adalah install kembali php5-xml via port saja seperti biasa :
bagus# cd /usr/ports/textproc/php5-xml/
bagus# make install clean
bagus# apachectl restart

bagus on May 18th, 2011

Firewall tersusun dari dua kata “fire” dan “wall” yang berarti api dan tembok, so firewall mean that tembok yang melindungi dari api (definisi saya sendiri lho). Dalam suatu jaringan, firewall memegang peranan penting dalam fungsi keamanan jaringan tersebut, terlebih jika network terhubung dengan internet. Selain itu firewall juga dapat digunakan untuk mengatur/menyeleksi paket yang masuk maupun keluar.

Secara umum firewall dapat diseting dengan dua type yakni exclusive firewall (default-accept) dan inclusive firewall (default-deny).

Pada Operating System FreeBSD terdapat dua bawaan paket untuk firewall, yakni IPFW dan PF. IP Firewall (IPFW) merupakan bawaan orisinil FreebSD (th 1994) sedang Paket Filter (PF) diambil dari OpenBSD project sekitar tahun 2003.

Berikut penulis sampaikan instalasi dan konfigurasi IPFW dasar pada OS FreeBSD 7 :

  1. Mengaktifkan modul IPFW
    Terdapat dua cara untuk mengaktifkan modul IFW pada FreeBSD, pertama dengan menggunakan rc.conf, yang kedua dengan rebuilt kernel supaya suport IPFW.

    • dengan rc.conf
      #vi /etc/rc.conf
      tambahkan baris firewall_enable=”YES”, kemudian restart system.
      Pada waktu booting, system akan secara otomatis me-load modul ipwf.ko dan menghubungkan dengan kernel secara dinamis. Yang perlu diperhatikan pada cara ini adlah modul ipwf.ko akan menggunakan defaul-policy firewall yakni inclusive (default-deny) artinya akan meblok semua paket yang masuk atau keluar, jadi jika proses instalasi lewat ssh bisa berabe karena firewall aktif, tidak bisa login karena policy port ssh belum ada
    • dengan rebuilt kernel
      Cara kedua ini lebih banyak dipilih karena menawarkan peforma yang lebih baik selain kelebihan dalam hal fasilitas kontrol yang lebih banyak.
      Buat custom kernel misal firewall :
      # cp /usr/src/sys/i386/conf/GENERIC /usr/src/sys/i386/conf/FIREWALL
      # vi /usr/src/sys/i386/conf/FIREWALL

      tambahkan opsi-opsi berikut :
      options IPFIREWALL                   # untuk mengaktifkan IPFW
      options IPFIREWALL_VERBOSE           # untuk mengaktifkan suport syslogd
      options IPFIREWALL_VERBOSE_LIMIT=10  # untuk mencegah syslogd flooding
      options IPFIREWALL_DEFAULT_TO_ACCEPT # untuk merubah dari default-deny ke default-accept

      kemudian re-compile kernel dengan yang sudah dibuat yakni FIREWALL
      # config FIREWALL
      # cd ../compile/FIREWALL
      # make cleandepend && make depend
      # make && make install

      Kemudian reboot system
  2. Menambah rule untuk firewall.
    Setelah berhasil mengaktifkan modul IPFW, sekarang cek basic rule yang ada dengan perintah ipfw show
    lpp# ipfw show
    00040 0 0 divert 8668 ip from any to any via xl0
    00050 0 0 divert 8668 ip4 from any to any via xl0
    00060 215 23527 allow tcp from 10.25.57.2 to any
    00100 8 400 allow ip from any to any via lo0
    00200 0 0 deny ip from any to 127.0.0.0/8
    00300 0 0 deny ip from 127.0.0.0/8 to any
    60000 316 49717 allow ip from any to any
    65000 13 1137 allow ip from any to any
    65535 0 0 allow ip from any to any

    Berikut sedikit penjelasan mengenai rule tsb, IPFW menggunakan urutan rule number dari yg terkecil sampai yang paling besar (65535) artinnya paket yang masuk di cek dari rule number paling atas (1) kemudian apabila ada yang sesuai dengan rule yang ada misal rule number 100 maka paket diperlakukan sesuai rule number 100 (allow ip from any to any via lo0) dan tidak dicek lagi, kemudian apabila tidak ada yg cocok, akan sampai pada rule number yg paling akhir yakni 65535 sehingga paket akan dieksekusi berdasarkan rule number terakhir (65535) yakni allow ip from any to any. Catatan untuk rule terakhir (65535) tidak dapat diubah manual.
    Selanjutnya apabila ingin ditambahkan rule yang lain digunakan perintah ipfw add, misal
    # ipfw add 400 permit ip from 10.25.57.0/24 to any
    400 adalah RULE NUMBER, permit adalah ACTION yang ingin dikenakan pada paket yg lewat, baris perintah berikutnya ip from 10.25.57.0/24 to any adalah SELECTION maksudnya semua trafic IP yang masuk dari subnet 10.25.57.0/24 ke semua host yang ada. Rule diatas membolehkan semua trafic IP yang masuk dari subnet 10.25.57.0/24 ke semua host yang ada di network. Pada rule tsb firewall hanya mengecek header IP karena menggunakan ip from ….., selain ip pada layer 3, IPFW juga dapat mengecek pada layer 2 (MAC Address) dan juga layer 4 (UDP/TCP port number). any mengacu pada semua IP yang ada, bisa juga digunakan me yang mengacu pada IP yg terkonfigurasi pada network interface yang ada di host.
    # ipfw show
    00040 0 0 divert 8668 ip from any to any via xl0
    00050 0 0 divert 8668 ip4 from any to any via xl0
    00060 510 57919 allow tcp from 10.25.57.2 to any
    00200 0 0 deny ip from any to 127.0.0.0/8
    00300 0 0 deny ip from 127.0.0.0/8 to any
    00400 13 1000 allow ip from 10.25.57.0/24 to any
    60000 751 99636 allow ip from any to any
    65000 13 1137 allow ip from any to any
    65535 0 0 allow ip from any to any

    Perintah ipfw show, menampilkan hanya menampilkan rule statis sedang rule dinamis tidak ditampilkan. Kolom pertama pada ipfw show meampilkan rule number, kolom kedua menampilkan jumlah paket yang cocok dengan rule, kolom ketiga menampilkan volume trafik dari rule.
    Untuk perintah ipfw yang lain bisa dibaca pada man page ipfw.
  3. Membuat rule dengan template yang sudah ada.
    Selain dengan menambahkan rule2x pada tabel ipfw, bisa digunakan template yang sudah tersedia di /etc/rc.firewall.
    Ada lima template, yakni open, closed, client, simple, dan workstation. Caranya dengan menambahakan firewall_type pada /etc/rc.conf, misal digunakan template “open”
    # vi /etc/rc.conf
    firewall_type="open"
  4. Membuat custom ruleset.
    Jika ingin menggunakan rule set yang dibuat sendiri, bisa dengan membuat scrip ruleset misal /etc/firewallku.conf kemudian pada /etc/rc.conf ditambahkan baris :
    firewall_script="/etc/firewallku.conf"
    Contoh custom ruleset “firewallku.conf” :
    flush
    add check-state
    add allow tcp from me to any setup keep-state
    add allow tcp from 192.168.1.0/24 to me keep-state
    add allow ip from 10.1.1.0/24 to me
    add allow ip from any to any

    flush digunakan untuk menghapus aturan firewall sebelumnya, sangat dianjurkan untuk menempatkan flush pada baris pertama. Contoh ruleset tersebut mengilustrasikan sebuah stateful-ruleset atau ruleset yang mengandung satu atau lebih kata keep-state, yang berarti apabila suatu paket cocok dengan kata keep-state maka akan terbentuk secara otomatis suatu “dynamic rule” dengan informasi paket bersangkutan dan dengan masa hidup yang terbatas. Untuk melihat dynamic-rule gunakan opsi -d
    ipfw -d show

Tags: , ,

bagus on February 16th, 2011

Pada webserver local pada PC menggunakan XAMPP, untuk mengakses web yang ada pada folder htdocs harus diawali dengan mengetik localhost terlebih dahulu diikuti nama folder yg berkesesuaian, misal http://localhost/web1 atau http://localhost/project1 hal ini tentu kurang “cantik”, untuk mengatasi hal tersebut bisa kita  gunakan vasilitas vhost punyae apache.

Misal instal XAMPP di d:\webserver\xampp, kemudian projek web yang dibuat terletak di d:\webserver\xampp\htdocs\web1, kemudian diinginkan akses via web dengan alamat http://bagus.oke maka langkah yang harus ditempuh adalah sebagai berikut :

  • edit file apache\conf\extra\vhost.conf dengan notepad++, tambahkan item berikut pada bagian paliang bawah :
    NameVirtualHost 127.0.0.1:80

    <VirtualHost 127.0.0.1:80>
    DocumentRoot d:\webserver\xampp\htdocs
    ServerName localhost
    </VirtualHost>

    <VirtualHost bagus.oke>
    DocumentRoot d:\webserver\xampp\htdocs\web1
    ServerName bagus.oke

    <Directory d:\webserver\xampp\htdocs\web1>
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
    </Directory>
    </VirtualHost>

  • Kemudian edit file windows\system32\driver\etc\hosts menggunakan notepad (untuk win vista caranya klik kanan program notepad -> Run as administrator) tambahkan baris berikut
  • 127.0.0.1 bagus.oke

  • Restart Apache via “service” dengan cara mengetikan services.msc pada RUN untuk winXp atau Search pada Vista kemudian ENTER
  • Akses projek web di localhost dengan alamat http://bagus.oke
bagus on February 4th, 2011

Pengalaman kehabisann space untuk webserver, maka diperlukan penambahan space baru berupa hardisk. Berikut langkah-langkah menambahkan hardisk pada OS Freebsd.

Hardisk yang penulis gunakan adalah tipe IDE/ATA, sedangkan freebsd yang digunakan freeBSD versi 7.

  • langkah pertama tentulah memasang hardisk baru ke server, dalam hal ini penulis pasang pada socket IDE 2 (Secondary), kemudian hidupkan PC.
  • Sesudah log in (sebagai root tentunya) mount all dengan perintah #mount -a
  • Penulis menggunakan cara yg mudah yakni sysintall !

#sysintall

pilih configure -> fdisk, pilih hardisk baru untuk kasus saya ad2, kemudian tekan ‘A’ (Use Entire Disk) lalu tekan ‘W’ (Write) pada keyboard ->yes.

tekan ESC install boot manager – Ok, kembali ke jendela FreeBSD Configuration Menu, dengan cara menekan tombol ‘Esc’ 2

pilih Label akan masuk ke FreeBSD Disklabel Editor, silahkan tekan ‘C’ untuk membuat partisi misal: /baru /backup sesuai dengan kebutuhan, jika sudah selesai tekan ‘W’ -> ‘yes’

keluar dari sysinstall kembali ke root promt #

  • cek hasilnya dengan perintah mount #mount
  • langkah terakhir mengedit file fstab supaya partisi tetap dikenali setelah server di restart#vi /etc/fstab
  • Restart komputer, kemudain cek partisi dengan perintah #df -h

Tags: