Skip to main content

Scapy Manager (scapy-man)

Step CA Manager using Python

Documenation: scapy.nikz.in

Setup

git clone https://github.com/nikhiljohn10/scapy
cd scapy
pip install --user poetry
poetry update

Demo

poetry run bash examples/deploy.sh

You will be asked to provide a Cloudflare Token to upload the worker. The worker will be uploaded to your Cloudflare Account and deployed to Cloudflare Edge Network.

If successully deployed, you will find a url where the demo CA Root certificate and hosted. Install this certificate in systems to access stepca.nikz.in.

Python Package

pip install scapy-man

Troubleshooting

  • If scapy not found: export PATH=$PATH:$(realpath ~/.local/bin)
  • If pip not found: sudo apt install python3-pip -y
  • If python3-pip not found: sudo apt update

Usage with Step CA

INSTALLATION_PATHS=$(scapy get step all -p)
sudo dpkg -i $INSTALLATION_PATHS
scapy gen passwords
scapy gen worker

export CA_NAME="Scapy CA"
export CA_DNS="$(hostname).local,localhost"
step ca init \
--name "$CA_NAME" \
--deployment-type standalone \
--dns "$CA_DNS" \
--address ":443" \
--provisioner admin \
--password-file $(scapy path password root) \
--provisioner-password-file $(scapy path password provisioner)

step crypto change-pass $(scapy path key intermediate) -f \
--password-file $(scapy path password root) \
--new-password-file $(scapy path password intermediate)

export FINGERPRINT=$(step certificate fingerprint $(scapy path cert root))
scapy deploy --worker scapy --js worker.js

sudo setcap CAP_NET_BIND_SERVICE=+eip $(which step-ca)
step-ca $(scapy path config ca) --password-file $(scapy path password intermediate)

In the above commands,

  • Generate a password and store in step path
  • Generate a basic worker file
  • Export CA_NAME variable with CA Name
  • Generate PKI using Step CA
  • Export FINGERPRINT variable with fingerprint of Root Certificate
  • Deploy worker scapy with worker.js as script file.

Commandline Interface

Scapy CLI

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

scapy-man-0.3.1.tar.gz (14.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

scapy_man-0.3.1-py3-none-any.whl (16.7 kB view details)

Uploaded Python 3

File details

Details for the file scapy-man-0.3.1.tar.gz.

File metadata

  • Download URL: scapy-man-0.3.1.tar.gz
  • Upload date:
  • Size: 14.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for scapy-man-0.3.1.tar.gz
Algorithm Hash digest
SHA256 a9d22a4b11fbbd09e5865184bc8c62b6cfa112d3d9f52fad1d53694cec8250a0
MD5 d1d77f7e5aae6b3892a02f10dbe072ed
BLAKE2b-256 58cb4befc6946c9e37941813d381739e198a2629f86a6570945632990244a9cd

See more details on using hashes here.

File details

Details for the file scapy_man-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: scapy_man-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 16.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.4.2 importlib_metadata/4.8.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.62.2 CPython/3.9.6

File hashes

Hashes for scapy_man-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 72555b347c7593e6fbc52ecdfe66da99879f6700d6226c05c65e71c213094c2b
MD5 2d390aa7b5dfb8dee490def422ad791c
BLAKE2b-256 684a272c67c11ce3dd9225ac295d4e248cf2f3ec0246a29d8054297042c1c238

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page