Tuesday, February 05, 2008

Reverse Proxy with Apache

Sometimes, when we need to configure network devices within LAN (via http), we need to do it on site due to private addressing. While making the devices directly accessible from the Internet is a big no-no, there is another way to connect remotely and securely: Reverse HTTP Proxy (with Apache).

Apache has proxy-related modules to enable this operation. To get it working, you need to enable this modules:
- proxy
- proxy_http

Using Ubuntu 7.10, this modules can be loaded simply by typing:

sudo a2enmod proxy
sudo a2enmod proxy_http
sudo /etc/init.d/apache2 restart

To forward any http request to your internal address, you need to add the destination url into your virtual host configuration, i.e:

sudo nano /etc/apache2/sites-available/yourvirtualhostconfig

then add this line:

ProxyPass /your-public-url/ http://your-private-address

enable your site by typing:

sudo a2ensite yourvirtualhostconfig
sudo /etc/init.d/apache2/restart

By default, in Ubuntu 7.10 all proxy access are denied. Therefore, you
need to white list your address into the proxy.conf file

sudo nano /etc/apache2/mods-available/proxy.conf

change the config to allow your source address i.e:

<Proxy *>
AddDefaultCharset off
Order deny,allow
Deny from all
Allow from 203.153.240.197
</Proxy>

Then reload the configurations

sudo a2enmod proxy
sudo /etc/init.d/apache2 restart

That's it folks. Enjoy working on your devices remotely, securely.
(It is not so secure as the traffic is not encrypted. What I mean by
secure, is that I can hide the private address from any port scan.
Therefore, what is deemed secure by me, is not necessarily secure by
your definition. This is MY blog, so no complain!!!)

Monday, November 12, 2007

Connecting to XL 3G via Sony Ericsson W850i

While it is not so newbie friendly, I never thought that configuring Internet connectivity using my cellular phone will be a straightforward process. All I did just edit the /wtc/wvdial.conf into this:

Init1 = ATZ
Init2 = ATQ0 V1 E1 S0=0 &C1 &D2 +FCLASS=0

Modem Type = USB Modem
Baud = 460800
Modem = /dev/ttyACM1
ISDN = 0
Phone = *99***1#
Phone1 = *99***2#
Password = proxl
Username = xlgprs

then, I connect by calling wvdial (with root privillege)

sudo wvdial

Just be very cautious with the cost as it is charged per KB!
Enjoy...

Tuesday, September 18, 2007

Monday, August 20, 2007

Installing ZABBIX 1.4.1

The new ZABBIX is getting better and better. Below are the steps I did to get
ZABBIX 1.4.1 up and running. (Assumed there is already Apache2, PHP and MySQL running)

1. First, get the source code.
$ wget

http://optusnet.dl.sourceforge.net/sourceforge/zabbix/zabbix-1.4.1.tar.gz

2. Extract the source code
$ tar -xvvzf zabbix-1.4.1.tar.gz

3. Prepare MySQL. by creating database for ZABBIX
$ mysql -u<username> -p<password>
mysql> create database zabbix;
mysql> grant all on zabbix.* to <username>@localhost identified
by '<mysqlpassword>';
mysql> quit;
$ cd <path-of-your-zabbix-source>/create/schema/
$ cat mysql.sql | mysql -u<username> -p<password> zabbix
$ cd ../data
$ cat data.sql | mysql -u<username> -p<password> zabbix
$ cat images_mysql.sql | mysql -u<username> -p<password> zabbix
$ cd ../..

4. Configure the source code, then proceed with install
$ ./configure --enable-server --enable-agent --with-mysql --with-net-snmp --with-libcurl
$ sudo make install

5. Create zabbix config files
$ sudo mkdir /etc/zabbix/
$ sudo cp
<path-of-your-zabbix-source>/misc/conf/zabbix_server.conf /etc/zabbix/
$ sudo nano /etc/zabbix/zabbix_server.conf

6. Create directories for the frontends
$ sudo mkdir /usr/local/zabbix
$ sudo chown -R <username.username> /usr/local/zabbix/
$ rsync -rvu <path-of-your-zabbix-source>/frontend/php /usr/local/zabbix/

7. Edit Apache2 config file to point your own ZABBIX url into the frontend's
path

8. Open a web browser, go to your ZABBIX url, then proceeds from there

9. To get ZABBIX up, you need to execute zabbix_server.

Done :-)

Monday, July 30, 2007

Wednesday, January 03, 2007

2007

Selamat Tahun Baru 2007

Friday, December 22, 2006

Bimbo - Semalam di Malaysia

aku pulang
dari rantau
bertahun-tahun di
negeri orang
oh, Malaysia

oh, dimana
kawan dulu, kawan dulu
yang sama berjuang
oh, Malaysia

kekasih hatipun
telah pula hilang
hilang tiada pesan
aduhai nasib
apakah daya
cita hampa
jiwaku merana
mana dinda

inilah kisahku
semalam di Malaysia
diri rasa sunyi
aduhai nasib
apakah daya
aku hanya
seorang pengembara
yang hina

Friday, November 17, 2006

It works!!!

One thing I just realized after upgrading to Edgy, all hotkey in my desknote, which by the way is an ECS A907, works out of the box. No hacking, no tweaking, no user intervention. The volume manager key works, the "internet" key fires up Firefox and the "mail" key opens Evolution.



Now...if only I could make use of that f***in' flyin' windows key ...

Thursday, November 16, 2006

Edgy upgrade fail on acpid

I just upgraded my dapper into edgy. everything went fine but acpid and
everything that depends on it.
After several hours of googling... I found the answer from launchpad.
The workaround are:
1. Shutdown the acpid (I removed it instead)
2. sudo killall hald
3. sudo dpkg --configure -a
4. sudo apt-get install acpid

Perhaps 4 months is a bit too short for a release cycle of a distro as
massive as Ubuntu...

Mounting Remote Directories using SSHFS

Due to limited harddisk capacity, I stored my edgy repository in an external USB hard drive.
To access it, I mount it using sshfs. Here is how I did it in Ubuntu 6.06.

$ sudo apt-get install sshfs

$ sudo modprobe fuse

$ mkdir /somewhere/localfolder/

$ sshfs -o allow_other user@remotehost:/somewhere/somefolder /somewhere/localfolder

To unmount it just use the normal umount command

$ sudo umount /somewher/localfolder

Now I have edgy repo, shall I start upgrading now... ?
I heard some bad rumors about upgrading dapper to edgy.
I think I need to do some backup first.

Tuesday, November 14, 2006

screen bash

When executing application using screen, I found that if the application went bad, we couldn't find out the error unless we specificy to log it. My debmirror script sometimes fail and I don't know if it is fail unless I repeat the script again.

Hence, bash must go first :-)

It's also quite handy to hide whatever I am doing on the screen as I only need to press C-a d to detach it.

Monday, November 13, 2006

Lust : Feature or Bug

Q: What is lust, a feature or a bug?
If it is a bug, then we are still in development stage and shouldn't have been released yet.
If it is a feature, then why some of us must go to hell because of it?

A: Well, probably deep inside our heart, there are lots of things that was meant to be patched by ourselves.

Hmm... a self-repairing apps...
Thank God we're not running Vista :p

Friday, November 10, 2006

pmount vs perl

After modifying debmirror, i copied it into a folder in my mounted portable hard drive.
The remaining space is quite large, so I put dapper & edgy as the target and start executing the script.
*bam*
myscript: /usr/bin/perl: bad interpreter: Permission denied

what the h###?!

I am absolutely sure I have no problem with permissions as the same script also copied into the parent directory of
a running ubuntu local ftp repository, and it works.

After checking every possible permission problem I encountered, I finally came into mount permission.
I mounted the portable hd using pmount (it's a usb-connected external hd) and it turnout that the default parameter
used by pmount include a noexec option, therefore, when I mounted it using the classic mount, the script worked.

Now, one question remain...
How come a perl script is considered a binary executable, while bash script is not?
Hmm...

Blogging via mutt

In blogspot, one can post his/her blog via mail. I like this feature because of two reasons :
1. The built in blogspot editor is terribly *cough*bloated*cough* slow
2. Due to aging hardware, opening firefox in my laptop takes zillion years
The problem is, the reason #2 is also the reason why I hate opening evolution in my laptop.

Few days ago, I installed mutt. The setup is not perfect yet, but I found myself quite enjoying it.
It loads extremely fast... that I only keep evolution just for reading html-formatted-mail sent to me.
I can also deal with junk mails much better :-)

Thursday, November 09, 2006

Patching debmirror...

I just realized that debmirror has a weakness in its design. Debmirror is designed to download the packages lists, selecting correct packages to be downloaded, then and only then,  download the packages. However, the packages selection, is somewhat long and tedious. Even worse, there is no progress indicator to tell us how much time left for package selection process to start downloading those damn packages.

I wonder if I can modify it to make it faster.

* searching google with keywords: perl tutorial*

Monday, October 16, 2006

Free as in Freedom

I just saw Ust. Quraish Shihab on MetroTV this morning saying that we are free to choose our religion. He also said that one must face the corresponding consequences of choosing such faith him/herself.
However, since apostasy in Islam is punishable by death, I doubt it is free enough to be called freedom.

It's not that I lost my faith. I just found it disturbing that such foremost muslim scholar unaware of such thing.

Tuesday, September 19, 2006

Shiver Me Timbers!

Avast!

Monday, September 11, 2006

apt-get moo

$ apt-get moo

(__)
(oo)
/------\/
/ | ||
* /\---/ ~~ ~~
...."Have you mooed today?"...

Tuesday, September 05, 2006

Partitioning USB Drive from Linux

USB drive is indeed can be partitioned.
What you need to do is:
1. Unmount USB drive,
2. Disable auto-mounting
3. gparted /dev/sda

As I haven't been able to tame the automounting feature of Kubuntu, I used
Gparted-Live and partitioned from there. When I partitioned my USB drive in
Kubuntu, it persistently automounted the first partition (sda1) after it had
been created, even the whole partitioning process hadn't been finished yet.

Thus, it's the value of having a pocket-CD of Gparted-Live everywhere you go.

Now I have a 128MiB USB pen-drive partitioned into 80s MiB FAT16 and 30s MiB EXT2

And...

250 GiB USB Harddrive partitioned into 40s GiB FAT32, and two 100s GiB EXT3

Now ... I am backing-up everything :-D

Wednesday, August 30, 2006

Managing Wireless Equipment (802.11x) using ap-utils

Being maintaining snmp-based nms for months, I've just found this tool few
hours ago. With ap-utils, I can manage my SmartBridge devices natively from
Linux. Ironically, I've been struggling with wine for years just to configure
my WiFi equipment, and even installing windows 98 via Qemu just to have the
wireless configuration software installed.

To install it in Ubuntu :

sudo apt-get install ap-utils

then

ap-config

The menu inside ap-utils is self-explanatory.
If only this tools can manage other proprietary wi-fi devices, (alvarion,
canopy, trango, etc) it will be much better.