/vzlink-api-only

VZLink is a RESTful API that provides link shortener services to independent applications. Similar to the popular link shortener service, Bitly, VZLink accepts a long URL, or link, and returns a much shorter and memorable link. Try out the API at https://vzl.ink/

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

VZLink (Link Shortener)

Powered by Virtualzero

A quick and easy solution for determining if a port is open on a web server. Simply enter the URL or IP address of the server and the port to scan. Ports leverages the power of the network mapping utility, Nmap, to scan and determine the target's port status.

Installation

Clone the repository:

git clone https://github.com/VirtualZero/vzlink-api-only.git

Environment

Install Miniconda

wget https://repo.anaconda.com/miniconda/Miniconda3-latest-Linux-x86_64.sh
chmod +x Miniconda3-latest-Linux-x86_64.sh
./Miniconda3-latest-Linux-x86_64.sh

Create Environment

conda create --name 'vzlink' python=3.7

Activate Environment

conda activate vzlink

Install Dependencies

cd vzlink && pip install -r requirements.txt

Execution

It is bad practice to store passwords in applications. For this reason, sensitive information like account passwords, secret keys, and API keys are stored in environment variables. For simplicity, use the included bash script, env.sh, to create the environment variables before executing the application. With the 'vzlink' virtual environment activated, update env.sh with secure credentials and execute the following command:

chmod +x env.sh && . env.sh

To run Ports on your local machine, make sure the 'vzlink' virtual environment is activated and that you are in the root ports directory. Enter the following command to start the app:

python run.py

Then, open a browser and go to the following URL:

http://127.0.0.1:5000

To use VZLink in a production environment, it is recommended to deploy the app using Gunicorn and Nginx. An example Nginx host file is included, as well as an example systemd service file. These are found in the resources directory.