Set Linux Firewall Rules for a Range of IP Addresses using Webmin

Network address ranges are set slightly differently to standard wildcards. For example, to describe a range of IP addresses from 192.168.0.1 to 192.168.255.255 you use:

192.168.0.0/16

Where 16 describes the number of bits in the IP address that are used for comparison. In this case the 16 describes the first 2 bytes of the address: 192.168. You can read more about IP addressing at Rhyshaden’s Data Network Resource (and various other places).

To set your linux firewall up in webmin to use a range of IP addresses, just use the wildcard notation above. So in Webmin – Networking – Linux Firewall, when you are editing a rule in iptables you can put in 192.168.0.0/16 to describe a range of IPs (e.g. in the “source address or network” field to restrict access to a certain IP range). Manually setting these rules is more tricky but there are resources out there like Linux Home Networking and the Easy Firewall Generator to help. We just used Webmin as it makes this kind of work very easy indeed.

Install Webmin on Ubuntu Server 10.10

Content from Andrai Daneasa, thanks!

1. Download webmin from http:www.webmin.com . Currently 1.520
wget http://www.webmin.com/download/deb/webmin-current.deb

2. Execute webmin package. It will fail but it’s easier for us, since we’ll just force installing dependencies, rather than installing them one by one.
sudo dpkg -i webmin-current.deb

3. Install missing dependencies and it will automatically recompile webmin
sudo apt-get -f install

Enjoy webmin on https://[serverIP]:10000 .

So easy when you don’t have to worry about dependancies.

UPDATE:

There were issues with Apache configuration under webmin in Ubuntu Server 10.10. Webmin couldn’t see that apache was already started so you have to do the following (thanks hrpr on the Ubuntu forums):

I just installed Webmin on Ubuntu 10.10 desktop and had same problem. Fixed in my case by settng path to Apache PID to “/var/run/apache2.pid” rather than using the default setting of “Work out automatically.” I did not make any changes to the envvars file.

This also worked for me.

On another note, my fresh install of Ubuntu Server 10.10 with a LAMP server and webmin installed, on a vmware virtual server, came to 1.64GB, a tiny amount!

Using Webmin to Start Oracle Automatically on Solaris Boot

I tried a few different techniques to get my Oracle startup script to run at boot on Solaris. I couldn’t get it to work using the old style “init.d” and “rc_3.d” directory methods, which have now been depreciated in Solaris 10 and replaced with the “Service Management Facility (SMF)”. You can still use the old legacy methods but I just could not get them to work. I started to read up on the SMF and other methods for controlling bootup and found this page on informIT which is a chapter from a Solaris exam prep book. This chapter goes into a lot of detail and includes info on using the SMF as well as info on legacy service starting methods.

I was about halfway through this when it was suggested I use Webmin for Solaris to manage startup services etc. I hadn’t used webmin properly before but I was pretty amazed at how easy it makes quite a lot of system management.

My database startup script had to be started as the correct user (oracle) which I think was throwing off my previous attempts at starting the script as a service. I am positive there is a better way of running the script than using “su – oracle -c” then the command but I couldn’t find how else to make sure it was running as the right user..

Solution: Use Webmin to make a bootup action and let it take care of where the script is started from. I should really dig around and see exactly what it has changed but for the time being this will do fine.

  1. Install the Webmin package using the instructions on their site.
  2. Go to the Webmin page at “http://yoursite:10000″.
  3. Click “System” then “Bootup and Shutdown” then on the page that opens click “Create a new bootup and shutdown action”.
  4. Put in a name (has to be standard name, no spaces) and description of your script.
  5. Now put in the actual script in the “bootup commands” box. For me this was “su – oracle -c /export/home/app/oracle/oracle/product/10.2.0/db_1/startupdb”.
  6. Make sure it is set to start at boot time and click “Create”.

.

Now your script will start as a service at boot time. For me it made the boot a little longer than usual but it’s a price I’m willing to pay to not have to log in and start Oracle manually!

For reference my “startupdb” script is the following (which also includes environment variables I thought I might need):

#!/bin/sh

ORACLE_HOSTNAME=myhostname;
ORACLE_SID=orcl;
ORACLE_BASE=/export/home/app/oracle;
ORACLE_HOME=/export/home/app/oracle/oracle/product/10.2.0/db_1;
PATH=/usr/sbin:/usr/bin:/usr/openwin/bin:/usr/ucb/:/export/home/app/oracle/oracle/product/10.2.0/db_1/bin;

export ORACLE_HOSTNAME ORACLE_SID ORACLE_BASE ORACLE_HOME PATH;

sqlplus sys/password as sysdba <<ENDOFSQL
startup;
exit;
ENDOFSQL
emctl stop dbconsole; emctl start dbconsole; lsnrctl start;