Skip to content

CarlesLlobet/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

93 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles

Environment configuration Run&Go

This project aims to avoid cumbersome configurations when working in a new environment.

Buy Me A Coffee

Getting Started

These instructions will get you a copy of the environment configuration up and running on your local machine.

Installation

git clone https://github.com/CarlesLlobet/dotfiles.git

Usage

To apply this configurations you'll just need one of the following systems:

  • MacOSX (Still under construction, not tested)
  • Linux

You can configure the basic profile by executing:

sudo setup.sh

Select specific profiles or silent mode with parameters:

Usage: setup.sh [-h | --help] [-y | --yes] [-p | --profile <profile>]
        Profiles:
            [b | basic] (default)
            [f | full]
            [d | developer]
            [p | pentester]
            [s | server]
            

Customization

To customize this dotfiles with your own tools, you just have to add/remove APT packages in the packagelists of each profile, and/or copy installscripts for manual installation/building of tools into the proper installscripts profile folder.

Out of the Box Software

OSX

Setup Packages

This specific package is always installed in Linux (if not in Kali distribution) from the setup script in order to add repositories easily.

Basic

Basic packages needed in any environment.

  • android-platform-tools (Brew) - To have ADB
  • bash (Brew) - The GNU Project's shell—the Bourne Again SHell
  • bash-completion (Brew) - a collection of command line command completions for the Bash shell
  • curl (Brew) - To make requests from command line
  • Docker (Brew) - Application virtualization software
  • flameshot (Brew) - Powerful, yet simple to use open-source screenshot software.
  • iterm2 (Brew) - Terminal Emulator for macOS that does amazing things
  • gnupg2 (Brew) - OpenPGP implementation to cypher and decypher
  • htop (Brew) - Interactive Process Viewer
  • pandoc (Brew) - Converting Markup files to other formats (docx, ppt, etc.)
  • python3-pip (Brew) - Package Installer for Python
  • ranger (Brew) - Filemanager from Console, inspired in Vim
  • thefuck (Brew) - Command line Typo Autocorrector
  • tiles (Brew) - The window manager for macOS
  • tmux (Brew) - Terminal Multiplexer
  • vim (Brew) - The Text Editor
  • xclip (Brew) - Copy/Paste from Command line

Developer

Specific packages for developers.

  • autoconf (Brew) - Required by automake (below)
  • automake (Brew) - To generate Makefiles regardless of the environment (Linux dist, installed packages,...)
  • cscope (Brew) - Browse C Source Code (even C++ and Java)
  • ctags (Brew) - Multilanguage implementation of Ctags to identify functions
  • libc6-dev (Brew) - GNU C development library

Pentester

Specific packages for cybersecurity engineers.

  • assetfinder (Go) - Find domains and subdomains potentially related to a given domain
  • binwalk (Brew) - RE tool to analyze and extract firmware images
  • cherrytree (Brew) - A hierarchical note taking application
  • cscope (APT) - Browse C Source Code (even C++ and Java)
  • dalfox (Go) - A powerful open-source XSS scanner
  • dnsx (Go) - A fast and multi-purpose DNS toolkit designed for running DNS queries
  • feroxbuster (Brew) - A simple, fast, recursive content discovery tool written in Rust
  • ffuf (Go) - A fast web fuzzer written in Go
  • getallurls (Go) - fetches known URLs from AlienVault's Open Threat Exchange, the Wayback Machine, Common Crawl, and URLScan for any given domain
  • gobuster (Go) - Gobuster is a tool used to brute-force URIs, DNS subdomains, Virtual Host names, S3 buckets, and many more
  • hakrawler (Go) - Fast golang web crawler for gathering URLs and JavaScript file locations
  • kxss (Go) - Checks URL params for returned data to look for XSS
  • nmap (Brew) - Network Discovery Scanner
  • nuclei (Go) - Fast and customizable vulnerability scanner based on YAML templates
  • shuffledns (Go) - wrapper around massdns to enumerate valid subdomains using active bruteforce
  • subjack (Go) - Subdomain Takeover tool
  • SynackAPI (Pip) - A Python Library designed to facilitate interaction with Synack's undocumented API endpoints
  • qemu (Brew) - Virtual Machine Manager
  • virt-manager (Brew) - Desktop GUI to manage VMs
  • virt-viewer (Brew) - Desktop GUI to view VM guests
  • waybackurls (Go) - Fetch all the URLs that the Wayback Machine knows about for a domain
  • whireshark (Brew) - Network protocol analyzer

Server

Specific packages for servers.

  • net-tools (Brew) - Collection of network utilities for Linux

Full

All of the packets from profiles mentioned above.

Linux

Setup Packages

This specific package is always installed in Linux (if not in Kali distribution) from the setup script in order to add repositories easily.

Basic

Basic packages needed in any environment.

  • apt-transport-https (APT) - To download from APT via HTTPS
  • bash (APT) - The GNU Project's shell—the Bourne Again SHell
  • bash-completion (APT) - a collection of command line command completions for the Bash shell
  • build-essential (APT) - C and C++ compilers, with libc and dpkg-dev, make, etc.
  • ca-certificates (APT) - To use CA Certificates
  • curl (APT) - To make requests from command line
  • direnv (APT) - Loads different ENV variables depending on the PWD automatically
  • dos2unix (APT) - DOS/MAC to UNIX text file format converter
  • flameshot (Snap) - Powerful, yet simple to use open-source screenshot software.
  • git (APT) - The only VCS that really matters
  • golang-go (APT) - The Go Programming Language
  • gom (APT) - The Go Manager
  • gnupg2 (APT) - OpenPGP implementation to cypher and decypher
  • gnutls-bin (APT) - TLS SSL and DTLS to do secure communications
  • htop (APT) - Interactive Process Viewer
  • libssl-dev (APT) - Dependency for OpenSSL
  • openjdk-17-jdk (APT) - Java Development Kit to have JRE for Java based applications
  • pandoc (APT) - Converting Markup files to other formats (docx, ppt, etc.)
  • python-pygments (APT) - Python syntax highlighter
  • python3-pip (APT) - Package Installer for Python
  • ranger (APT) - Filemanager from Console, inspired in Vim
  • snap (APT) - The app store for Linux
  • tar (APT) - GZip / BZip2 / XZ Compression utility
  • thefuck (APT) - Command line Typo Autocorrector
  • tmux (APT) - Terminal Multiplexer
  • unzip (APT) - ZIP Compression utility
  • vim (APT) - The Text Editor
  • xclip (APT) - Copy/Paste from Command line

Developer

Specific packages for developers.

  • autotools-dev (APT) - Required by automake (below)
  • automake (APT) - To generate Makefiles regardless of the environment (Linux dist, installed packages,...)
  • cscope - Browse C Source Code (even C++ and Java)
  • exuberant-ctags (APT) - Multilanguage implementation of Ctags to identify functions
  • guake (APT) - Top-down terminal for Gnome
  • libc6-dev (APT) - GNU C development library
  • libpoppler-glib-dev (APT) - To render PDF from console
  • qemu-kvm (APT)- To use CPU extensions (HVM) instead of native Qemu using emulation
  • qemu (APT) - Virtual Machine Manager
  • scrot (APT) - SCReen shOT utility from command line
  • virt-manager (APT) - Desktop GUI to manage VMs
  • virt-viewer (APT) - Desktop GUI to view VM guests

Pentester

Specific packages for cybersecurity engineers.

  • afl-triforce (Script) - AFL/QEMU fuzzer with full-system emulation
  • assetfinder (Go) - Find domains and subdomains potentially related to a given domain
  • binwalk (APT) - RE tool to analyze and extract firmware images
  • ccpchecker (Script) - Tool for Source Code Review (Static analysis of code)
  • cscope (APT) - Browse C Source Code (even C++ and Java)
  • dalfox (Go) - A powerful open-source XSS scanner
  • dnsx (Go) - A fast and multi-purpose DNS toolkit designed for running DNS queries
  • exuberant-ctags (APT) - Multilanguage implementation of Ctags to identify functions
  • feroxbuster (Script) - A simple, fast, recursive content discovery tool written in Rust
  • ffuf (Go) - A fast web fuzzer written in Go
  • flawfinder (Pip) - C/C++ source code analyzer
  • getallurls (Go) - fetches known URLs from AlienVault's Open Threat Exchange, the Wayback Machine, Common Crawl, and URLScan for any given domain
  • gef (Script) - GDB Plugin with extended features
  • ghidra (Script) - RE suite (Disassembler, Decompiler, ...)
  • gobuster (Go) - Gobuster is a tool used to brute-force URIs, DNS subdomains, Virtual Host names, S3 buckets, and many more
  • hakrawler (Go) - Fast golang web crawler for gathering URLs and JavaScript file locations
  • katoolin (Script) - To install automatically Kali Linux Tools
  • kxss (Go) - Checks URL params for returned data to look for XSS
  • masscan (APT) - Internet-scale port scanner
  • nmap (APT) - Network Discovery Scanner
  • nuclei (Go) - Fast and customizable vulnerability scanner based on YAML templates
  • radamsa (Script) - General purpose Fuzzer
  • radare2 (Script) - RE suite (Disassembler, Decompiler, Debugger, ...)
  • ropper (Pip) - Display useful info to find ROP chains
  • sandmap (Script) - tool supporting network and system reconnaissance using the massive Nmap engine
  • shuffledns (Go) - wrapper around massdns to enumerate valid subdomains using active bruteforce
  • sqlmap (Script) - Database Pentest tool
  • subjack (Go) - Subdomain Takeover tool
  • SynackAPI (Pip) - A Python Library designed to facilitate interaction with Synack's undocumented API endpoints
  • waybackurls (Go) - Fetch all the URLs that the Wayback Machine knows about for a domain
  • whireshark (APT) - Network protocol analyzer
  • z3 (Script) - Solver for Symbolic Execution

Server

Specific packages for servers.

  • Docker (Script) - Application virtualization software
  • net-tools (APT) - Collection of network utilities for Linux
  • openssh-server (APT) - To create an SSH Server

Full

All of the packets from profiles mentioned above.

Built With

  • Bash - The Bourne Again SHell

Authors

  • Carles Llobet - Complete work - Github

See also the list of contributors who participated in this project.

Acknowledgments

About

All kind of workspace configuration files

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published