Archive for the '*nix' Category

How to tell what distro you are running?

So you inherit a box running linux and you have no idea which flavor of linux it is. How do you find out?

If all you need the kernel version you can try
uname -a

This outputs something like this

Linux localhost.localdomain 2.4.20-31.9 #1 Tue Apr 13 18:04:23 EDT 2004 i686 i686 i386 GNU/Linux

If you need the actual distro name you can try
cat /etc/*release

In Ubuntu it shows up as

DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=9.04
DISTRIB_CODENAME=jaunty
DISTRIB_DESCRIPTION=”Ubuntu 9.04″

Or even
cat /etc/issue

which spits out the following on Ubuntu

Ubuntu 9.04 \n \l

You can combine all three to get the following
uname -a && cat /etc/*release && cat /etc/issue

SNMP on OpenSolaris

SNMP is not installed by default on Open Solaris but really easy to set up. You don’t need to compile it from source as some would suggest.

All you’ll need is to install the SUNWsmmgr package.
pkg install SUNWsmmgr
All of the config files, including snmpd.conf are in /etc/sma/snmp.

The service to enable snmp is called sma.
svcadm enable svc:/application/management/sma:default

To install utilities like snmpwalk and snmpget, you can install the SUNWsmcmd package.

Installing VirtualBoxAdditions in Ubuntu

In order to install Virtual Box Additions on your newly install Ubuntu virtual machine, you will need to fulfill the following dependencies.

Install dkms and the GNU C Compiler using the following command:

sudo apt-get install dkms gcc

Install the build and header files for Ubuntu using the following command:

sudo apt-get install linux-headers-$(uname -r)

$(uname -r) in the above command just passes your kernel version to apt-get

Restrict SSH login access on CentOS

By default CentOS allows ssh access to all users who can authenticate with the server. This can be a security risk especially when you have setup the server to authenticate against an Active Directory domain. In this case all the users on the domain can login via ssh to your CentOS server. You can, however, very easily restrict logins to specific users, computers, or even users on specific computers.

To do this, edit /etc/ssh/sshd_config by adding the AllowUsers directive in the following format.

AllowUsers user@host

This allows the user ‘user’ to login at the host named ‘host’. Multiple users can listed by separating each with a space. You can also use * to specify wildcards. You can also specify IP addresses and ranges using *.

AllowUsers *@192.168.1.* johndoe@192.168.1.3

This will allow all users to log into all computers with address starting with 192.168.1 and the user johndoe to log only into the with IP address 192.168.1.3.

This will work for other Linux OSes as well.

Listing used ports in Linux

The lsof command can display all open files in Linux. With some filtering you can use it to show all open/utilized ports as well.

lsof -i TCP:443
This command will list all processes, their pids, and user under which the process is running, that are utilizing port 443.

To list all TCP ports, one could use
lsof -i TCP

Type lsof –help for more options.