Place Ghantoos

My first shot of NetBSD (5.0)

As I heard a lot about NetBSD lately, especially with NetBSD5.0 being released, I thought I would give it a try.

I admit, I had a preconceived idea of what I was going to face. I thought I would have to go a couple of time through the installer, try to understand how to use the partitioner, etc. But I was wrong. Ten minutes after booting up the iso image, my first NetBSD was up and running!

Even though all this documentation is available in the NetBSD guide, here are all the steps I went through to install my machine.

My installation was done using kvm-84 on a debian (testing) machine.

Read the rest of this entry »

Windows, botnets et vos données privées

Hello, it’s me again!

Dans un tout autre contexte, je vous propose d’élaborer un exemple d’insécurité informatique sur les machines Windows (XP ou Vista) qui sont branchées sur Internet.

Il y a quelques jours, des chercheurs de l’université de UC Santa Barbara, ont publié un rapport résumant la méthode de prise de contrôle d’un Botnet appelé TORPIG.

Read the rest of this entry »

Debian, BCM4328 and ndiswrapper

This is just a small post that may help those who are trying to install the wifi modules of a BCM4328 card on a debian OS using ndiswrapper.

The debian wiki explains very well how to install the necessary windows drivers using ndiswrapper, so I won’t go into details. Here are the main steps:

$ sudo apt-get install module-assistant wireless-tools
$ sudo m-a prepare
$ sudo m-a a-i ndiswrapper
$ sudo ndiswrapper -i /path /to/your/driver/DRIVER/bcmwl5.inf
$ sudo ndiswrapper -l
bcmwl5 : driver installed
	device (14E4:4328) present (alternate driver: ssb)

Read the rest of this entry »

Disable touchpad while typing on keyboard

I don’t know how you feel about it, but when my hand touches the touchpad “mouse pad” while I am typing on my keyboard, and changes to windows focus or the mouse positioning, it annoys me, A LOT!

So here’s what I did to get over this issue on my debian box. It shouldn’t be very different on other distributions. (I’ll update this post in case I ever try it somewhere else)

Read the rest of this entry »

My memo -cheatsheet- page

I have added a new page to my blog today. It lists commands/tips I collected over the past couple of month. I will be updating it every once in while.

Please don’t hesitate to comment suggesting/correcting commands :)

I hope this can be useful!

Cheers,
Ignace M -ghantoos-

Mounting UFS in read/write under Linux (debian)

A week ago, I encountered some space problems on my FreeBSD system during a system wide portupgrade. Fortunately, I had backed up my system just before the adventure, so my system was saved.

The procedure I followed to restore my data, was:
1- recreate my partitioning, giving 10 more Gigs to the system, using the FreeBSD installation CD
2- copy all the data on it

Since I backed up my FreeBSD system on an external ext3 hard drive, I needed to copy it back from “outside” my freebsd system. My first option was to use Fixit from the FreeBSD installation CD set, but I had problems mounting my partition because of the inode block size of my ext3 partition. Bref. I decided to mount everything from my Linux (ubuntu) system, and copy everything back from there!

I only way to do this was to recompile my kernel with the right “UFS write” flag. And it JUST WORKED!! I copied back __ALL__ my FreeBSD system on the new slices, rebooted my machine, and here I am writing this post from my old-new FreeBSD system! :)

Read the rest of this entry »

Creating a .deb package from a python setup.py

This article has been updated on July 2nd 2009.

As I worked on packaging a project I am working on (Limited Shell) I found my self reading many tutorials on how to build debian packages. But none where related to distutils setup.py. As a nice setup.py natively knows how to package RPM, I thought about a way to include setup.py in a .deb generation.

Here is a small guide to help generate a debian package from a distutils/setuptools setup.py.

The main steps of this procedure are:
1- make sure that your setup.py is functional
2- generate a GPG key to sign your package and a public key to put on your server or wherever
3- create the files that are useful for the debian packaging:
* debian/changelog
* debian/compat
* debian/control
* debian/copyright
* debian/rules
* debian/watch
4- write the Makefile
5- generate your debian package
6- check your files’ licensing
7- check your new package using lintian
8- Conclusion
9- Links

Read the rest of this entry »

YUM output parser (yum-parser.py)

As I needed to minimize yum’s output for a project I was working on, I thought it was just about changing the debugging level. But I found out yum’s debugging level could add information, but not minimize it. So wrote a small python script that does the job.

What I wanted to do, is replace yum’s output with a very simple progress bar showing only the different stages of a yum procedure (dependencies/download/install/remove/update).

The script is quite easy to use:

Usage:
	$ yum-parser.py (-u | --update)
	$ yum-parser.py (-i | --install) package_list
	$ yum-parser.py (-r | --remove) package_list
	$ yum-parser.py (-s | --search) 'regexp'
	$ yum-parser.py (-h | --help) package_list

For a reason I still ignore, when redirecting yum’s generic output to a file (e.g. yum -y install irssi 2>&1 > yumoutput), the “Downloading Packages” part doesn’t appear. To remedy this problem, I had to insert some threading to have a “patience bar” (i.e. back and forth [ = ]) while the downloads are processed.

You can find the source code here.

Read the rest of this entry »

Limited Shell (lshell)

As I was wondering how I could do to relieve my wrt54gl from the huge weight of libopenssl and nsupdate, I thought.. Wouldn’t it be cool if I could set a very restricted account on my server, and just ask my wrt54gl to ssh to it and execute locally nsupdate. So I started searching for a way to restrict user ssh accounts by listing a set a allowed commands. No luck there.

So.. python came to the rescue.

Limited Shell (lshell) is an application that lets you restrict the environment of any SSH user. It provides an easily configurable shell: just choose a list of allowed commands for every limited account. No installation is required.

You can download the current version of lshell from the following link: http://sourceforge.net/project/showfiles.php?group_id=215792

If you want to contribute to this project, please do not hesitate.
Send me a patch, or just your new lshell.py so I can check it out.
You can use the interface on sourceforge.net:
http://sourceforge.net/projects/lshell/

Cheers,
Ignace M -ghantoos-

WRT54GL: OpenWRT Kamikaze 0.9 and dynamic DNS (nsupdate/bind)

Hello again,

My first objective was to update my DNS from my home. The problem was:
1- I wanted it to be secure (at least the most secure possible)
2- my PC is behind a beautiful WRT54GL which leaves me with nothing but my LAN IP.
I had to install the stuff on my linksys running Kamikaze0.9 of OpenWRT.
After some research and some small space headaches (WRT54GL), here is what I did:
Read the rest of this entry »

FireStats

  • Pages displayed : 504907
  • Unique visitors : 236576
  • Pages displayed in last 24 hours : 242
  • Unique visitors in last 24 hours : 151