I filmed this while at ACMI on 1st May 2011.
Monday, May 02, 2011
Friday, March 18, 2011
Configuring OpenVPN on FreeBSD [Quick Guide]
[Note: This post is a work in progress.]
pkg_add -r openvpn
rehash
mkdir -p /usr/local/etc/openvpn
cd /usr/local/etc/openvpn
touch openvpn.conf
cp -R /usr/local/share/doc/openvpn/easy-rsa .
cd easy-rsa/2.0/
[Edit the vars file to reflect your details. This will save you the trouble of having to type your organisation's details every time you generate a certificate. You may also need to change your shell to sh to execute the scripts. I also had to do a chmod +x * in that directory.]
./clean-all
./vars
./build-ca
[Generate Server Key named server1]
./build-key-server server1
[Generate Keys for clients]
./build-key hpserver
./build-key acerlaptop
[Generate Diffie-Hellman keys]
./build-dh
#The following keys have been copied from /usr/local/etc/openvpn/easy-rsa/2.0/keys
ca /usr/local/etc/openvpn/keys/ca.crt
cert /usr/local/etc/openvpn/keys/server.crt
key /usr/local/etc/openvpn/keys/server.key
dh /usr/local/etc/openvpn/keys/dh1024.pem
Now, edit openvpn.conf (on the server-end) as follows. Substitute IP addresses as required.
[OpenVPN Server Config]
#Configuration of OpenVPN Server
port 1194
proto tcp
dev tun
ca keys/ca.crt
cert keys/server.crt
key keys/server.key
dh keys/dh1024.pem
server 10.0.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
client-config-dir ccd #Client specific settings, e.g. Fixed IP Addresses
client-to-client #Allow clients to communicate with each other
push "route 192.168.0.0 255.255.0.0"
keepalive 60 120
comp-lzo
persist-key
persist-tun
status open-status.log
verb 3
Copy the generated client keys to /etc/openvpn/. You will need to copy, for example, acerlaptop.crt, acerlaptop.key and ca.crt and mentioned them in openvpn.conf on the client as follows.
[OpenVPN Client Config]
#Configuration of OpenVPN Client
client
dev tun
proto tcp
remote openvpn.dyndns.org 1194 #public ip address and port of vpn server
nobind
persist-key
persist-tun
#client certificates
ca ca.crt
cert acerlaptop.crt
key acerlaptop.key
ns-cert-type server
comp-lzo
verb 3
[Auto-start openvpn]
Add the following in /etc/rc.conf on the server.
openvpn_enable="YES"
If not already present, also add the following knob in /etc/rc.conf to allow the server to route between your LAN and VPN subnets.
gateway_enable="YES"
Note: Some documentation propose adding if_tun_load="YES" to /boot/loader.conf. I found that is not necessary. Openvpn will start the required device drivers automatically. You can try adding it, if openvpn fails to start or dynamically start it at a prompt by issuing kldload if_tun.
---
The OpenVPN documentation provides more in depth explanation. It can be viewed at : http://openvpn.net/index.php/open-source/documentation/howto.html.
pkg_add -r openvpn
rehash
mkdir -p /usr/local/etc/openvpn
cd /usr/local/etc/openvpn
touch openvpn.conf
cp -R /usr/local/share/doc/openvpn/easy-rsa .
cd easy-rsa/2.0/
[Edit the vars file to reflect your details. This will save you the trouble of having to type your organisation's details every time you generate a certificate. You may also need to change your shell to sh to execute the scripts. I also had to do a chmod +x * in that directory.]
./clean-all
./vars
./build-ca
[Generate Server Key named server1]
./build-key-server server1
[Generate Keys for clients]
./build-key hpserver
./build-key acerlaptop
[Generate Diffie-Hellman keys]
./build-dh
#The following keys have been copied from /usr/local/etc/openvpn/easy-rsa/2.0/keys
ca /usr/local/etc/openvpn/keys/ca.crt
cert /usr/local/etc/openvpn/keys/server.crt
key /usr/local/etc/openvpn/keys/server.key
dh /usr/local/etc/openvpn/keys/dh1024.pem
Now, edit openvpn.conf (on the server-end) as follows. Substitute IP addresses as required.
[OpenVPN Server Config]
#Configuration of OpenVPN Server
port 1194
proto tcp
dev tun
ca keys/ca.crt
cert keys/server.crt
key keys/server.key
dh keys/dh1024.pem
server 10.0.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
client-config-dir ccd #Client specific settings, e.g. Fixed IP Addresses
client-to-client #Allow clients to communicate with each other
push "route 192.168.0.0 255.255.0.0"
keepalive 60 120
comp-lzo
persist-key
persist-tun
status open-status.log
verb 3
Copy the generated client keys to /etc/openvpn/. You will need to copy, for example, acerlaptop.crt, acerlaptop.key and ca.crt and mentioned them in openvpn.conf on the client as follows.
[OpenVPN Client Config]
#Configuration of OpenVPN Client
client
dev tun
proto tcp
remote openvpn.dyndns.org 1194 #public ip address and port of vpn server
nobind
persist-key
persist-tun
#client certificates
ca ca.crt
cert acerlaptop.crt
key acerlaptop.key
ns-cert-type server
comp-lzo
verb 3
[Auto-start openvpn]
Add the following in /etc/rc.conf on the server.
openvpn_enable="YES"
If not already present, also add the following knob in /etc/rc.conf to allow the server to route between your LAN and VPN subnets.
gateway_enable="YES"
Note: Some documentation propose adding if_tun_load="YES" to /boot/loader.conf. I found that is not necessary. Openvpn will start the required device drivers automatically. You can try adding it, if openvpn fails to start or dynamically start it at a prompt by issuing kldload if_tun.
---
The OpenVPN documentation provides more in depth explanation. It can be viewed at : http://openvpn.net/index.php/open-source/documentation/howto.html.
Wednesday, December 29, 2010
Using FreeNAS 8.0 as a Bridge
I have installed and tested this on FreeNAS 8.0 Beta
My FreeNAS server and one workstation are in the same room and I needed a way to connect them to the LAN to allow for fast file transfers between all computers in my network.
Since I lacked a switch, I needed to convert FreeNAS into a bridging device. It was just a matter of installing a spare NIC into the FreeNAS server and doing the following:
Make my CF card readable (you might skip this step if you installed FreeNAS on a mechanical Hard drive).
mount -t ufs -w /dev/ufs/FreeNASs1a /
Insert a FreeBSD 8.0 disk into your cd-rom drive and copy the files as shown:
mkdir /mnt/cdrom
Mount cdrom: mount -t cd9660 /dev/acd0 /mnt/cdrom/
Copy files across:
cp /mnt/cdrom/boot/kernel/if_bridge.ko /boot/kernel/
cp /mnt/cdrom/boot/kernel/bridgestp.ko /boot/kernel/
ee /boot/loader.conf
Add the following line:
if_bridge_load="YES"
Save and exit
Restart the server with "reboot"
Create the bridge and add interfaces:
ifconfig bridge create
ifconfig bridge addm em0 addm em1
ifconfig em0 up
ifconfig em1 ip
dhclient bridge0 (or ifconfig bridge0 inet 192.168.xx.xx netmask 255.255.255.0)
The name of your interfaces might vary. Check with ifconfig.
Note: You can start the bridge automatically at startup. Refer to the FreeBSD Handbook Chapter 31.5 to see how its done.
P.S. You may do this on FreeNAS 7.x as well. You just need to get FreeBSD 7.x's bridge modules for that kernel. They can obtained from http://download.altstu.ru/FreeBSD/releases/i386/7.2-RELEASE/boot/kernel/ or from a FreeBSD 7.x iso image.
My FreeNAS server and one workstation are in the same room and I needed a way to connect them to the LAN to allow for fast file transfers between all computers in my network.
Since I lacked a switch, I needed to convert FreeNAS into a bridging device. It was just a matter of installing a spare NIC into the FreeNAS server and doing the following:
Make my CF card readable (you might skip this step if you installed FreeNAS on a mechanical Hard drive).
mount -t ufs -w /dev/ufs/FreeNASs1a /
Insert a FreeBSD 8.0 disk into your cd-rom drive and copy the files as shown:
mkdir /mnt/cdrom
Mount cdrom: mount -t cd9660 /dev/acd0 /mnt/cdrom/
Copy files across:
cp /mnt/cdrom/boot/kernel/if_bridge.ko /boot/kernel/
cp /mnt/cdrom/boot/kernel/bridgestp.ko /boot/kernel/
ee /boot/loader.conf
Add the following line:
if_bridge_load="YES"
Save and exit
Restart the server with "reboot"
Create the bridge and add interfaces:
ifconfig bridge create
ifconfig bridge addm em0 addm em1
ifconfig em0 up
ifconfig em1 ip
dhclient bridge0 (or ifconfig bridge0 inet 192.168.xx.xx netmask 255.255.255.0)
The name of your interfaces might vary. Check with ifconfig.
Note: You can start the bridge automatically at startup. Refer to the FreeBSD Handbook Chapter 31.5 to see how its done.
P.S. You may do this on FreeNAS 7.x as well. You just need to get FreeBSD 7.x's bridge modules for that kernel. They can obtained from http://download.altstu.ru/FreeBSD/releases/i386/7.2-RELEASE/boot/kernel/ or from a FreeBSD 7.x iso image.
Friday, December 24, 2010
Merry Christmas and Happy New Year
Greetings All,
I would like to seize this opportunity to wish you all a most Merry Christmas and very Happy New Year.
I pray that the New Year brings you bleesed joy, prosperity and success.
Have a wonderful celebration...
With much festive spirit,
Atwin.
Monday, August 09, 2010
Installing Compiz Fusion on Fedora
Execute the following as root in a terminal.
yum install -y ccsm emerald-themes compizconfig-backend-gconf fusion-icon-gtk
emerald compiz-fusion compiz-fusion-gnome libcompizconfig compiz-gnome compiz-bcop
compiz compizconfig-python compiz-fusion-extras compiz-fusion-extras-gnome
Entering the BIOS Screen of an HP Proliant
I recently salvaged an HP Proliant Server from the trash (I know!!). It was in a fully functioning order, sporting 1 GB of RAM and a 2.6 GHz Pentium IV processor. It also had an Adaptec RAID controller for the hot swap module.
The problem I faced with the machine was when it boots up, the Adaptec controller displays its own boot-up screen - hence closing the default screen. I have never worked on an HP machine before so I had no idea how to get into the BIOS setup to configure the boot options.
I managed to stall the computer with a bootable USB drive and found what the keys were.
So, if you are stuck in the same dilemma I faced, these keys could come in handy.
F8 - Boot Menu
F10 - Setup Menu
F12 - Network Boot
ESC - Summary and Boot Progress
I am happy to say that this machine is now a dedicated NAS for my home network. :D (I also tried pfSense on it but NAS seem to be a more valuable duty for it - too powerful for routing.)
The problem I faced with the machine was when it boots up, the Adaptec controller displays its own boot-up screen - hence closing the default screen. I have never worked on an HP machine before so I had no idea how to get into the BIOS setup to configure the boot options.
I managed to stall the computer with a bootable USB drive and found what the keys were.
So, if you are stuck in the same dilemma I faced, these keys could come in handy.
F8 - Boot Menu
F10 - Setup Menu
F12 - Network Boot
ESC - Summary and Boot Progress
I am happy to say that this machine is now a dedicated NAS for my home network. :D (I also tried pfSense on it but NAS seem to be a more valuable duty for it - too powerful for routing.)
Monday, July 05, 2010
Solving SSH problem in Fedora
I have been asked many a times why SSH does not work on Fedora. The simple answer is SSH works. You just need to "unblock" it. The SSH port (22) is blocked by default in Fedora's firewall as a security measure. Go to System -> Administration -> Firewall and sign in as root. Check the box to allow SSH connections and Enable.
SSH should now work.
SSH should now work.
Installing Essential Software for Fedora
I recently came across a very handy utility which installs a lot of small but much needed extras for Fedora.
EasyLife for Fedora allows users to setup Flash, Java and a range of codecs and tools to play just about any multimedia file. It also has options to set the sudo functionality for normal users.
The utility can be downloaded from http://easylifeproject.org/.
Install it as root and you choose what features you want to enable. Its as easy as that.
EasyLife for Fedora allows users to setup Flash, Java and a range of codecs and tools to play just about any multimedia file. It also has options to set the sudo functionality for normal users.
The utility can be downloaded from http://easylifeproject.org/.
Install it as root and you choose what features you want to enable. Its as easy as that.
Monday, June 14, 2010
TI-83 Program to calculate Modulus (Remainder)
Insert into PRGM Editor in TI Calculator
PROGRAM:MOD
:"MODULUS"
:ClrHome
:Prompt A,B
:fPart(A/B)*B --> C
:Disp C
:Pause
:ClrHome
PROGRAM:MOD
:"MODULUS"
:ClrHome
:Prompt A,B
:fPart(A/B)*B --> C
:Disp C
:Pause
:ClrHome
Friday, June 04, 2010
Google Wallpapers?
Tuesday, May 25, 2010
Fedora 13 is out
Wednesday, May 05, 2010
Fedora 13 Goddard
Fedora 13 "Goddard" is due is 14 days. After the renewed disappointment that was Ubuntu 10.04, I can't wait to get Fedora 13 up and running. Fedora 12 is running full-time on both my servers and on my laptop - uptime of more than 5 months (on the server). Hehe :D
Go for Goddard!
Go for Goddard!
Saturday, March 13, 2010
Removing old packages from YUM cache

Running multiple Fedora machines means that I need to update them regularly to keep them in proper running conditions. Being a user in Australia, updating each and every machine puts a load on both my bandwidth and wallet since I pay per GB downloaded.
The simple solution is to enable YUM to keep the downloaded cache and tell all the machines to download the updates from that one machine. The downside of this method is that updates get acculmulated and hence puts a strain on hard disk space as old and new packages are collected.
I needed a way to clean-up the cache and keep only current updates.
The simple way to do it is to use a wonderful utility called Tidy RPM Cache. Its a python script written to recursively scan packages and remove the old ones. For Example if you have three versions of the same package (e.g. Wireshark 1.2.01, 1.2.02 and 1.2.03), Tidy RPM Cache, will only keep the latest one, i.e. Wireshark 1.2.03.
All you have to do is execute the script by pointing it to the directory where your cache is stored. The command is illustrated below. It will scan and clean all the repositories from which you have downloaded packages. Rest assured, you will be prompted whether or not you want to clear the packages once the scan is complete.
[UpdateServer Desktop]$ ./tidy-rpm-cache.py --dir /var/cache/yum/i386/12/
Tidy RPM Cache can be downloaded from freshmeat. Just click on TAR/GZ in the Links section.
Sunday, January 10, 2010
Making Latex Work on Fedora 12
Although, TeX packages can be easily installed via the Add/Remove software, I find it easier to use the command-line specially when you need to install the tex packages.
Just issue the following commands as root to get everything working. Some packages might be redundant but they do get all the aspects of compiling tex documents and their bib files working.
yum - y install tetex-latex
yum - y install texlive
yum - y install tetex-IEEEtran
After installing these packages, you can compile your documents to pdf easily using pdflatex documentname.tex and bibtex bibliography.aux and there you have it.
Just issue the following commands as root to get everything working. Some packages might be redundant but they do get all the aspects of compiling tex documents and their bib files working.
yum - y install tetex-latex
yum - y install texlive
yum - y install tetex-IEEEtran
After installing these packages, you can compile your documents to pdf easily using pdflatex documentname.tex and bibtex bibliography.aux and there you have it.
Sunday, December 27, 2009
Have a great One... ;)
Hello All,
Hope you had a great year and looking ahead for a bright beginning on the next.
Wish you all a very Merry Christmas and a Wonderful New Year 2010.
All the best,
Atwin
Windows Live: Friends get your Flickr, Yelp, and Digg updates when they e-mail you.
Thursday, October 08, 2009
Ubuntu 9.10
Saturday, June 27, 2009
Monday, June 22, 2009
Tuesday, June 09, 2009
Thursday, June 04, 2009
Make a Bootable WinXP USB Stick
For more information visit the following links:
http://www.pcmag.com/article2/0,2817,2041234,00.asp
http://articles.techrepublic.com.com/5100-22_11-5928902.html
http://itdojo.techrepublic.com/
Subscribe to:
Posts (Atom)
