Skip to content
This repository has been archived by the owner on May 11, 2019. It is now read-only.

YETI Quickstart

Bryan Worrell edited this page Jul 26, 2013 · 30 revisions

YETI Quickstart is a non-production deployment. This deployment method is the fastest way to get YETI running on a system.

Requirements

The following are required for YETI Quickstart to succeed:

To install these dependencies, we recommend using the pip utility (http://pypi.python.org/pypi/pip), which will download and install these libraries along with any of their dependencies:

$ pip install django libtaxii pyOpenSSL

NOTE: Windows users may not be able to install some dependencies (e.g., libxml2, pyOpenSSL, etc.) via pip due to compilation issues. Please refer to the dependency websites (linked above) for Windows executable installer options should pip fail.

Instructions

  1. Install dependencies listed above: $ pip install django libtaxii pyOpenSSL
  2. Download and extract the latest release of YETI: https://github.com/TAXIIProject/yeti/releases
  3. In a command shell, navigate to the YETI base directory (containing manage.py and the scripts directory) and start the server (Note: The script must be run from the base directory or it won't work)
    1. Windows: > scripts\quickstart.bat
    2. Unix: $ sh ./scripts/quickstart.sh

NOTE: The quickstart script will attempt to launch YETI on port 80 and as such, may need to be run with superuser/administrator privileges. Example: $ sudo sh ./scripts/quickstart.sh

If the quickstart script works, you should see output like this:

yeti>python manage.py syncdb
Creating tables ...
(Table creation output omitted for brevity)

You just installed Django's auth system, which means you don't have any superusers defined.
Would you like to create one now? (yes/no): yes
Username (leave blank to use 'example'):
Email address: [email protected]
Password: NotARealPassword
Password (again): NotARealPassword
Superuser created successfully.
Installing custom SQL ...
Installing indexes ...
Installed 9 object(s) from 1 fixture(s)

yeti>python manage.py runserver 80
Validating models...

0 errors found
July 24, 2013 - 07:45:32
Django version 1.5.1, using settings 'yeti.settings'
Development server is running at http://127.0.0.1:80/
Quit the server with CTRL-BREAK.

To verify that the server is running you should be able to open a browser and navigate to http://localhost to view a welcome page or http://localhost/admin/ to log into the administrator interface with the user you created during the quickstart script.

There are two important notes about the quickstart script:

  1. The script tells the server to listen on 127.0.0.1:80, which will not accept connections from remote machines. If you need to accept connections from remote machines, modify the quickstart script and replace 80 with 0.0.0.0:80.
  2. If for any reason you ever want to delete the database (you forgot what user you created, forgot the password, etc), just delete the yeti\sqlite3.db file and re-run the quickstart script.

Interacting with YETI

The quickstart deployment comes with two scripts to push and pull content from YETI.

  1. To push STIX Content to YETI, use the inbox_client.py script. Run it by issuing this command: python scripts\inbox_client.py. The inbox_client script includes a default STIX document.
  2. To pull content from YETI, use the poll_client.py script. Run it by issuing this command: python scripts\poll_client.py.

In order to see the content that is in the database, navigate to http://localhost/admin/taxii_services/contentblock/.

Clone this wiki locally