Showing posts with label Bash. Show all posts
Showing posts with label Bash. Show all posts

Monday, March 5, 2012

Koneksi Wifi Menggunakan wpa_supplicant (Linux)

Pertama buat dulu settingannya di /etc/wpa_supplicant.conf

# cat << EOF >> /etc/wpa_supplicant.conf

> network={

> scan_ssid=1

> ssid="ISIKAN_NAMA_SSIDNYA_DISINI"

> key_mgmt=WPA-PSK

> psk="ISIKAN_PASSWORDNYA_DISINI"

> }

> EOF



Kemudian aktifkan interface wifinya, biasanya di linux menggunakan wlan0 atau eth1.

# ifconfig eth1 up


Jalankan wpa_supplicant sebagai daemon menggunakan konfigurasi tadi.

# wpa_supplicant -B -ieth1 -c/etc/wpa_supplicant.conf


Untuk mendapatkan IP kita bisa menggunakan dhcpcd atau dhclient, disini kita coba menggunakan dhcpcd

# dhcpcd eth1

dhcpcd[6088]: version 5.2.12 starting

dhcpcd[6088]: eth1: broadcasting for a lease

dhcpcd[6088]: eth1: offered 192.168.*.* from 192.168.*.*

dhcpcd[6088]: eth1: ignoring offer of 192.168.*.* from 192.168.*.*

dhcpcd[6088]: eth1: acknowledged 192.168.*.* from 192.168.*.*

dhcpcd[6088]: eth1: checking for 192.168.*.*

dhcpcd[6088]: eth1: leased 192.168.*.* for 86400 seconds

dhcpcd[6088]: forked to background, child pid 6124




Agar internetan lebih cepet, kita bisa setting dns. Biasanya sih saya pake punya google, kita setting nya di /etc/resolv.conf.

# echo -ne "nameserver 8.8.8.8\nnameserver 8.8.4.4" > /etc/resolv.conf


Coba cek koneksinya berhasil apa tidak dengan ping ke url mana saja, contoh saya ping ke google

# ping -c 3 www.google.co.id

PING www.l.google.com (74.125.*.*) 56(84) bytes of data.

64 bytes from sin01s05-in-f18.1e100.net (74.125.*.*): icmp_req=1 ttl=54 time=16.1 ms

64 bytes from sin01s05-in-f18.1e100.net (74.125.*.*): icmp_req=2 ttl=54 time=16.4 ms
64 bytes from sin01s05-in-f18.1e100.net (74.125.*.*): icmp_req=3 ttl=54 time=17.1 ms



--- www.l.google.com ping statistics ---

3 packets transmitted, 3 received, 0% packet loss, time 2002ms

rtt min/avg/max/mdev = 16.105/16.539/17.108/0.445 ms




Oh yaa saya sekalian kasih bash scriptnya untuk koneksi manual maupun wpa di linux nih, silahkan di coba sekalian di review :)


function tanya() {
        read -p "Mau static ip ga [y/t] ? " pilih
        if [ $pilih = 'y' ] || [ $pilih = 'Y' ]; then
                read -p ">> Masukkan ip yang anda inginkan: " ip
                read -p ">> Masukkan gateway: " gw
                echo ">> Setting up ip to $ip.. "; ifconfig eth1 $ip/24
                echo ">> Setting up gateway ip to $gw.. "; route add default gw $gw

                if [ $pil = 2 ]; then
                        echo ">> Setting up iwconfig to the ssid.. ";
                        iwconfig $wireless $ssid;
                else
                        echo ">> Setting up wpa supplicant with wpa configuration.. ";
                        wpa_supplicant -B -i $wireless -c /etc/wpa_supplicant.conf;
                fi

        else
                echo ">> Setting up $wireless to $konek "; iwconfig $wireless essid $ssid; echo;
                echo ">> Obtaining ip address.. ";
                dhclient eth1;
        fi
}


clear

echo "##########################################################
##    _____           _____ _______       ___           ##
##    \   \          /   /  |   _  \     /  \           ##
##     \   \        /   /   |  | \  \   / /\ \          ##
##      \   \  /\  /   /    |  |_/  /  / /__\ \         ##
##       \   \/  \/   /     |   ___/  /  ____  \        ##
##        \          /      |  |     /  /    \  \       ##
##         \___/\___/       |__|    /__/      \__\      ##
##########################################################"

echo;
echo -e "\tMenu"
echo "1. WPA"
echo "2. Koneksi Manual";echo;
read -p "Masukkan pilihan anda : " pil
if [ $pil = 1 ]; then
        read -p ">> Nama Interface Device Wireless Anda: " wireless
        echo ">> Getting down $wireless.. "; ifconfig $wireless down;
        echo ">> Changging mac address.. "; macchanger -ar $wireless;
        echo ">> Waking up $wireless.. "; ifconfig $wireless up;
        echo ">> Hasil scan wireless: "; echo; iwlist $wireless scan | grep SSID
        read -p ">> Masukkan SSID yang ingin di koneksikan : " ssid
        read -p ">> Masukkan passwordnya : " pass
        echo ">> Setting up ssid and password to wpa supplicant configuration.. ";
        wpa_passphrase $ssid $pass >> /etc/wpa_supplicant.conf;echo;
        tanya;
else
        read -p ">> Nama Interface Device Wireless Anda: " wireless
        echo ">> Getting down $wireless.. "; ifconfig $wireless down
        echo ">> Changging mac address.. "; macchanger -ar $wireless
        echo ">> Waking up $wireless.. "; ifconfig $wireless up
        echo ">> Hasil scan wireless: "; echo; echo; iwlist $wireless scan | grep SSID
        read -p ">> Masukkan SSID yang ingin anda koneksikan: " ssid; echo
        tanya;
fi

exit 0



Oke selamat mencoba semoga berhasil kawan!

Sunday, February 26, 2012

Merubah Waktu Secara Manual Di Linux

Gue nulis ini sebenernya mau menginspiriasi linux users yang mau belajar linux dengan serius, tidak hanya point & click. Memang belakangan linux diciptakan sedemikian rupa untuk menghilangkan statement bahwa linux itu sulit, dan untuk memudahkan penggunanya. Tapi ini justru menghilangkan ciri dari OS unix basis linux itu sendiri yang menggunakan beribu-ribu perintah dalam mengoperasikan komputernya. Suatu kebanggaan tersendiri dan adalah nilai plus jika kita biasa menggunakan CLI (Command Line Interface) :) .


Langsung saja to the point, ini sebenernya pengalaman pribadi gue menggunakan GNU/Linux Slackware dengan DE (Desktop Environment) fluxbox. Seringkali setiap booting dan saya cek jam nya beda antara jam di kamar, jam di OS, sama jam di BIOS. Setinggan zona waktunya pun Jakarta, Indonesia +7 GMT. Padahal BIOS udah gue save dengan jam yang seharusnya, tp pas booting selalu berubah lagi. Yaudah curhat mulu kan jadinya gue, kalo mau tau jam lo sama atau tidak dengan bios cek dengan perintah berikut:

[fathiraz@slackware][~]
[#]date
Sun Feb 26 18:57:10 WIT 2012


Ket:
  Sun                 hari
  Feb                 bulan
  26                   tanggal
  18                    jam
  57                   menit
  10                   detik
  WIT                 zona waktu
  2012               tahun


Itu waktu di OS Linux nya, nah cek waktu biosnya pake hwclock.

[fathiraz@slackware][~]
[#]hwclock
Sun 26 Feb 2012 02:09:10 PM WIT -0.703874 seconds


Beda jauh banget yaa jam BIOS sama jam OS nya, gue baca-baca sendiri menggunakan perintah date kita bisa mengganti nya. Kalo mau ganti jamnya doang:

[fathiraz@slackware][~]
[#]date -s 14:09:00
Sun Feb 26 14:09:00 WIT 2012


Gue sendiri pernah ngalamin semuanya beda, dari tahun sampe detik. Nah kalo mau gantinya gini formatnya:

date nnddhhmmyyyy.ss

nn
> bulan (01-12)
dd > tanggal (01-31)
hh > jam (01-23)
mm > menit (01-59)
yyyy > tahun (4 digit)
ss > detik (00-59)



Misal kita mau ganti waktunya jadi jam 14:00:00 tanggal 4, bulan maret, tahun 2011.

[fathiraz@slackware][~]
[#]date 030414002011.00
Fri Mar 4 14:00:00 WIT 2011


Nah ini biar lebih praktis dan sekalian kita belajar bash programming, gue bikin bash scriptnya nih:


#!/bin/bash

lagi='t'
        echo -e "Waktu OS   : `date`";
        echo -e "Waktu BIOS : `hwclock`";
        read -p "Apakah sudah sama ? [y/t] " lagi;
        echo ""
while [ $lagi == 't' ] || [ $lagi == 'T' ]; do

        read -p "Masukkan jam [01 - 24]     :  " jam;
        read -p "Masukkan menit [01 - 60]   :  " menit;
        read -p "Masukkan tanggal [01 - 31] :  " tanggal;
        read -p "Masukkan bulan [01 - 12]   :  " bulan;
        read -p "Masukkan tahun [4 digit]   :  " tahun;

        date $bulan$tanggal$jam$menit$tahun.00;
        echo "" 
        echo -e "Waktu OS   : `date`";
        echo -e "Waktu BIOS : `hwclock`";
        read -p "Apakah sudah sama ? [y/t] " lagi;
        echo ""
done


Demikian tutorial singkat kali ini, selamat mencoba semoga sukses! salam imut