Columbus-Server – API first subdomain discovery service, blazingly fast subdomain enumeration service with advanced features
Discription

[![](https://blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEj83r20JOHBjm61cGPmMNj7DeslxjD94aApEC159HPsyyLrZ96Vmv8mfXsG2JeKj2AttCIxdz5ryZxuS-9D3YT7xg3akX0Wm6jlFeRVJkbbqjKgcOAh58DtURRFSUYyZZegHjNkdZuP62cKbf-0sTwc53VjQ1M5yP6PcidljfFPDZ432PuOYgTWrN0iHYHy/w400-h400/21375_320x0_resize_box_3.png)]()

Columbus Project is an API first [subdomain]( “subdomain” ) [discovery]( “discovery” ) service, blazingly fast [subdomain enumeration]( “subdomain enumeration” ) service with advanced features.

_Columbus returned 638 [subdomains]( “subdomains” ) of tesla.com in 0.231 sec._

_
_

## Usage

By default Columbus returns only the subdomains in a JSON string array:

curl ‘https://columbus.elmasy.com/lookup/github.com’

But we think of the bash lovers, so if you don’t want to mess with JSON and a newline separated list is your wish, then include the `Accept: text/plain` header.

DOMAIN=”github.com”

curl -s -H “Accept: text/plain” “https://columbus.elmasy.com/lookup/$DOMAIN” |
while read SUB
do
if [[ “$SUB” == “” ]]
then
HOST=”$DOMAIN”
else
HOST=”${SUB}.${DOMAIN}”
fi
echo “$HOST”
done

**For more, check the [features]( “features” ) or the [API documentation]( “API documentation” ).**

## Entries

Currently, entries are got from [Certificate Transparency]( “Certificate Transparency” ).

## Command Line

Usage of columbus-server:
-check
Check for updates.
-config string
Path to the config file.
-version
Print version informations.

`-check`: Check the lates version on GitHub. Prints `up-to-date` and returns `0` if no update required. Prints the latest tag (eg.: `v0.9.1`) and returns `1` if new release available. In case of error, prints the error message and returns `2`.

## Build

git clone https://github.com/elmasy-com/columbus-server
make build

## Install

Create a new user:

adduser –system –no-create-home –disabled-login columbus-server

Create a new group:

addgroup –system columbus

Add the new user to the new group:

usermod -aG columbus columbus-server

Copy the binary to `/usr/bin/columbus-server`.

Make it executable:

chmod +x /usr/bin/columbus-server

Create a directory:

mkdir /etc/columbus

Copy the config file to `/etc/columbus/server.conf`.

Set the permission to 0600.

chmod -R 0600 /etc/columbus

Set the owner of the config file:

chown -R columbus-server:columbus /etc/columbus

Install the service file (eg.: `/etc/systemd/system/columbus-server.service`).

cp columbus-server.service /etc/systemd/system/

Reload systemd:

systemctl daemon-reload

Start columbus:

systemctl start columbus-server

If you want to columbus start automatically:

systemctl enable columbus-server

**[Download Columbus-Server]( “Download Columbus-Server” )**Read More

Back to Main

Subscribe for the latest news: