Although stables releases of OpenWrt come out every 6 to 12 months, the automatically built snapshots offer a way to embrace the latest features, patches, and security fixes without waiting that long.
A sysupgrade procedure works by saving the configuration files from known locations, deleting the entire filesystem, installing the new version of OpenWrt, and then restoring the configuration files.
This is usually painless, but there can be issues if configuration changes have been made in non-standard file locations and are not saved. Additionally, custom packages do not survive the sysupgrade and have to be reinstalled (to ensure compatibility with the kernel) and their new configurations must be manually merged.
Continue reading “OpenWrt: Upgrading OpenWrt to the latest snapshot build”
By default, LuCI, the web admin interface for OpenWrt is not HTTPS enabled. This may not be a critical issue for you since it is a LAN facing service, but the type of infrastructure information being exchanged combined with the fact that it is usually accessed over WiFi protocols might make you want to consider it – especially considering it is a 5 minute fix.
First connect to OpenWrt either via ssh with Dropbear, or via the USB-TTL cable and a terminal program. Install the following packages:
# opkg update
# opkg install luci-lib-px5g px5g-standalone libustream-openssl
# opkg install luci
Continue reading “OpenWrt: Enabling HTTPS for the LuCI Web Admin Interface”
Flashing the firmware of the Linksys WRT1X00AC/S is well documented on the OpenWrt wiki. So I don’t feel the need to go over the architectural concepts in this article, but I did want to provide instructions for the Ubuntu specific tools you can use to flash the firmware.
If you want to try flashing to OpenWrt using the factory LinkSys ‘Router Firmware Update’ feature, that is your choice, but it really is working blind and you have no ability to fix issues if something goes wrong. After bricking my router once, I now rely solely on the Serial to USB-TTL cable which is the highly recommended connectivity method from the OpenWrt page.
Step 1. Connect via USB-TTL cable
I wrote a detailed article about using the Adafruit USB TTL Serial cable to connect to the Linksys WRT1X00AC/S for an Ubuntu host.
After powering off/on the router, you should be able to clearly the see the boot sequence of your Linksys firmware in your terminal program. Below is a snippet of the output showing the Linksys logo in ASCII art which scrolls by as the router brings up all its services.
Continue reading “OpenWrt: Flashing Linksys WRT1X00AC/S from USB-TTL Using Ubuntu”
The stable OpenWrt images are built with LuCI, an OpenWrt web administration interface. But if you are using the bleeding edge or trunk OpenWrt images, then you won’t get this package.
Luckily, it is not difficult to add the LuCI package to the install. As long as you have Dropbear enabled for ssh access, or you are connected via UBS-TTL and have shell access to your router then it only takes a few commands.
opkg install luci
Continue reading “OpenWrt: Installing LuCI Web Interface after Deploying latest OpenWrt Image”
The Trivial File Transfer Protocol (TFTP) is an extremely simple protocol most often used for network booting strategies, such as PXE and flashing OpenWrt images unto consumer routers.
I go over full instructions for flashing OpenWrt using Ubuntu and flashing a sysupgrade in another post, this article will focus specifically on setting up a tftp server daemon on Ubuntu that can be used to serve the binary image file.
First, install the tftp server and client packages:
# apt-get install tftpd-hpa tftp-hpa -y
Continue reading “OpenWrt: Installing a TFTP Server on Ubuntu for OpenWrt Firmware Updates”
When flashing an OpenWrt image to your newer versioned WRT1900AC/S, be aware that instead of using ‘setenv firmware_name’, you should instead use ‘setenv firmwareName’.
The command will not fail, but the router will not understand that it should look for a non-default name for the image and your tftp transfer will fail.
This change appears to have been made between WRT1900AC V1 and WRT1900AC V2. So, for the latest versions such as WRT1900ACS, be sure to use ‘setenv firmwareName’.
Whether you are updating the official LinkSys router firmware or taking it a step further and installing open-source firware like OpenWrt, serial level access to your Linksys router is the most dependable way of guaranteeing a connection.
And if you have tried to flash the firmware via the web admin interface and after a reboot you cannot get web access again, then you have no choice. You have to be able to plug directly into the router’s serial interface and troubleshoot.
Continue reading “Ubuntu: Serial level access to your Linksys WRT1X00AC/S”