tirsdag den 23. december 2008

Installing Oleg firmware on Asus WL-500W

This is a guideline for installing Oleg firmware on a Asus WL-500W router including using a USB pen for storage of additional software (ipkg packages) and setting up ssh. This guideline is a mix of the HOWTO's in the Relevant Link section below. Use of this guideline is on your own risk.

Guideline:
  1. Download firmware (the version I curently use is 1.9.2.7-10) from Oleg firmware list
  2. Go the router web management (default is http://192.168.1.1)
  3. In System Setup, Firmware Upgrade select the Oleg firmware on your harddrive and start the upgrade.
  4. telnet to the router (from a terminal/shell/cmd) using the username and password settings configured in the web management console:
    telnet 192.168.1.1
  5. Install ssh (dropbear):
    mkdir -p /usr/local/etc/dropbear

    dropbearkey -t dss -f /usr/local/etc/dropbear/dropbear_dss_host_key


    dropbearkey -t rsa -f /usr/local/etc/dropbear/dropbear_rsa_host_key


    mkdir -p /usr/local/sbin/


    touch /usr/local/sbin/post-boot

    touch /usr/local/sbin/post-firewall

    touch /usr/local/sbin/post-mount


    touch /usr/local/sbin/pre-mount


    touch /usr/local/sbin/pre-shutdown


    chmod +x /usr/local/sbin/*


    echo "#!/bin/sh" >> /usr/local/sbin/post-boot


    echo "dropbear" >> /usr/local/sbin/post-boot


    flashfs save && flashfs commit && flashfs enable && reboot
  6. Put a USB pen in the USB slot on the router (I use a 2GB USB pen)
  7. Partition the USB pen (one partition for swap and one for IPKG packages):
    insmod scsi_mod && insmod sd_mod && insmod usb-storage && sleep 5s
    fdisk /dev/discs/disc0/disc
    In fdisk, Create swap:
    n -> p -> 1 -> 'return' -> +512M -> t -> 82
    Create IPKG partition:
    n -> p -> 2 -> 'return' -> 'return'
    End fdisk by pressing 'w'
  8. Start the swap:
    mkswap /dev/discs/disc0/part1

    swapon /dev/discs/disc0/part1
  9. Format the IPKG partition:
    mke2fs -j /dev/discs/disc0/part2
  10. Add fstab:
    vi /etc/fstab
    Paste the following:
    #device Mountpoint FStype Options Dump Pass#
    /dev/discs/disc0/part1 none swap sw 0 0
    /dev/discs/disc0/part2 /opt ext3 rw,noatime 1 1

    Save the file (esc -> wq)
  11. Save fstab for reboot:
    echo "/etc/fstab" >> /usr/local/.filescv
  12. Mount usb on startup by editing /usr/local/sbin/post-boot:
    vi /usr/local/sbin/post-boot
    Add the following:
    # Start SSH service
    dropbear

    # test if USB disc has been attached
    # if not - then insert needed modules
    if [ ! -d /dev/discs ]
    then
    insmod scsi_mod && insmod sd_mod && insmod usb-storage && sleep 5s
    fi

    # Wait for /opt to mount
    mount /dev/discs/disc0/part2 /opt
    mount /dev/discs/disc0/part3 /tmp/harddisk
    i=0
    while [ $i -le 30 ]
    do
    if [ -d /opt/etc ]
    then
    break
    fi

    sleep 1
    i=`expr $i + 1`
    done

    # Activate swap
    swapon /dev/discs/disc0/part1
  13. Save all settings and reboot:
    flashfs save && flashfs commit && flashfs enable && reboot
  14. After reboot, check that all is mounted ok:
    free (swap enabled?)
    df -h (IPKG partition avaliable?)
  15. Install IPKG:
    mkdir /opt/tmp

    mkdir /opt/tmp/ipkg

    ipkg.sh update

    ipkg.sh install ipkg

    ipkg update
  16. Install IPKG packages eg. nano:
    ipkg install nano
  17. Save all settings and reboot:
    flashfs save && flashfs commit && flashfs enable && reboot

Relevant Links:
ipkg on Asus WL500
Asus wl500g HOWTO
Asus wl500g with USB pen drive HOWTO
Oleg firmware list
Oleg router forum
WL500W-1.9.2.7-10 Oleg firmware

1 kommentar:

Unknown sagde ...
Denne kommentar er fjernet af forfatteren.