update: as someone commented below, armitage is now distributed with metasploit. there is no need to follow these directions any more, they are depreciated.
i wanted a pretty gui to show off some metasploit functionality recently which led me to armitage.
i use (and love) backtrack 4, as does most of the world, but i also have a ubuntu based distro (mint 10, which is based on ubuntu 10.10) that i like to use. i found a lot of tutorials on how to install armitage on backtrack, but hardly anything on installing armitage on a non-backtrack machine, and practically nothing for installing armitage on ubuntu with a postgres backend. i decided i wanted to install armitage on the mint machine using postgres (per the armitage recommendation here) and not finding any good instructions, i thought i would give it a go and document. here we go:
first, you need to have some of the basics installed. i will leave it to others to describe how to install these if you need help (others == google).
- java 1.6 (has to be the official oracle java version)
- metasploit 3.5+
next, lets install postgres:
sudo apt-get install postgresql-8.4
now that postgres is installed, we need to create a db and a user for armitage to use. i su’ed to the postgres user to do this:
su - su - postgres psql CREATE USER postgres_user WITH SUPERUSER password 'postgres_password'; CREATE DATABASE msf3db; \q
next, go to your metasploit directory (/opt/metasploit3/bin in my case) and start up the rpc service (as root):
sudo ./msfrpcd -f -U msf_user -P msf_password -t Basic
lastly, go to where you extracted armitage and run the shell script (you can run it as a normal user, you don’t have to be root). you will run ./armitage.sh and once you have the correct parameters entered, click “connect”.
the parameters are:
- host: 127.0.0.1
- port: 55553
- ssl: should be checked
- user: msf_user
- pass: msf_password
- db driver: postgresql
- db connect string: postgres_user:”postgres_password”@127.0.0.1/msf3db
thats it! here is what you should be looking at once you get done:
note #1: it seems armitage doesn’t like underscores in the db name
note #2: if you need help in postgres, type \? (a lot of commands in postgres start with a “\”)