@Kasper nmap can be run as 'user'
~ $ id uid=29999(user) gid=29999(users) ~ $ nmap 192.168.2.14 Starting Nmap 5.00 ( http://nmap.org ) at 2010-01-21 13:17 CET Interesting ports on 192.168.2.14: Not shown: 992 closed ports PORT STATE SERVICE 21/tcp open ftp 22/tcp open ssh 111/tcp open rpcbind Nmap done: 1 IP address (1 host up) scanned in 1.17 seconds

Most functions work without root privileges, while some (like OS fingerprinting) do require them. If you use an option that does require root privileges without first using gainroot, you will be notified that it requires them.