Skip to content

Instantly share code, notes, and snippets.

View JCotton1123's full-sized avatar

Jesse Cotton JCotton1123

View GitHub Profile
@JCotton1123
JCotton1123 / server.sh
Created February 28, 2020 16:30
Netcat HTTP Server
cat >index.http <<EOF
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
Server: netcat!
<!doctype html>
<html><body><h1>A webpage served by netcat</h1></body></html>
EOF
while true; do cat index.http | nc -l 8000; done
@JCotton1123
JCotton1123 / s3-restore.sh
Created April 30, 2019 01:54
Restore files from latest version in s3
#!/bin/bash
if [ -z "$1" ]; then
echo "An input file is required"
echo "usage: $0 <input-file>"
exit 1
fi
files=$(cat $1)
for f in $files; do
@JCotton1123
JCotton1123 / fluentd-setup.sh
Created April 1, 2019 23:17
Fluentd setup for Ubuntu
# Install dependencies
apt-get update; apt-get install -y build-essential ruby2.5-dev
gem install bundler --version 1.16.1
# Install fluentd
mkdir /opt/fluentd
pushd .; cd /opt/fluentd
cat <<EOD > Gemfile
source "https://rubygems.org"
@JCotton1123
JCotton1123 / enumerate-aws-services.sh
Created March 1, 2019 05:34
Primitive script for enumerating AWS services in use
#!/bin/bash
services=""
page_token=""
while true; do
results=$(aws resourcegroupstaggingapi get-resources --tags-per-page 500 --pagination-token="$page_token")
more_services=$(echo "$results" | egrep -o 'arn:aws:([a-z]+):' | cut -d: -f 3 | sort | uniq)
services=$(echo -e "$services\n$more_services" | sort | uniq)
@JCotton1123
JCotton1123 / gist:5ee42a34d19cc7c50bb23eef5a06142c
Created March 4, 2017 05:07
Audit Chef client versions via knife
knife search node '*' -a chef_packages.chef.version | grep "chef_packages.chef.version" | cut -d" " -f4 | sort | uniq
@JCotton1123
JCotton1123 / setup-chef.md
Last active May 19, 2017 18:20
Setup Chef Server

Setup Chef server

  • Make sure the server is configured with an appropriate hostname that resolves to itself (add hosts entry if needed)
  • Download and install Chef server package from: http://downloads.chef.io/chef-server/
  • chef-server-ctl reconfigure
  • chef-server-ctl user-create admin Chef Administrator jcotton@bitlancer.com <password> --filename /tmp/admin.pem
  • chef-server-ctl org-create <org-short-name> "<org-full-name>" --association_user admin --filename /tmp/validator.pem
  • Use OpenSSL to generate a new cert and key and update: /var/opt/opscode/nginx/ca/<fqdn>.key, /var/opt/opscode/nginx/ca/<fqdn>.crt. Restart services (nginx) with: chef-server-ctl restart

Cleanup and re-initiate a bad install

@JCotton1123
JCotton1123 / setup.sh
Created February 20, 2017 06:48
Setup Londiste2 on Ubuntu as of Feb 2017
add-apt-repository "deb https://apt.postgresql.org/pub/repos/apt/ trusty-pgdg main"
wget --quiet -O - https://postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
apt-get update
apt-get install postgresql-server-dev-9.4
apt-get install python-pip python-dev
pip install --upgrade pip
pip install psycopg2
apt-get install build-essential autoconf
# Database size
SELECT table_schema "Data Base Name",
sum( data_length + index_length ) / 1024 / 1024 "Data Base Size in MB",
sum( data_free )/ 1024 / 1024 "Free Space in MB"
FROM information_schema.TABLES
GROUP BY table_schema ;
# Size of each non-primary index
SELECT database_name, table_name, index_name,
round(stat_value*@@innodb_page_size/1024/1024, 2) size_in_mb
@JCotton1123
JCotton1123 / gh-contribs.csv
Last active April 13, 2016 04:25
Github contributions
We can make this file beautiful and searchable if this error is corrected: No commas found in this CSV file in line 0.
https://github.com/Bitlancer/puppet-cloudfuse
https://github.com/Bitlancer/puppet-motd
https://github.com/Bitlancer/puppet-openldap
https://github.com/Bitlancer/puppet-sssd
https://github.com/Bitlancer/puppet-tomcat
https://github.com/Bitlancer/puppetlabs-apache
https://github.com/Bitlancer/strings-dashboard
https://github.com/Bitlancer/strings-datasync
https://github.com/Bitlancer/strings-deploy-toolkit
https://github.com/Bitlancer/strings-documentation
@JCotton1123
JCotton1123 / jenkins-bulk-delete-nodes.sh
Created March 31, 2016 04:26
Jenkins bulk delete nodes
#!/bin/bash
cookies="JSESSIONID.8d49441c=1xzuqo2mhtku1pq2q7kvffeud; JSESSIONID.b502a53a=19uzmrp8ggsplp44mageiqqq7; JSESSIONID.6accbce3=zkbcn2gy1qye1h89aan7o6zog; JSESSIONID.b1204f00=11rs98x2idnf01woxy79tmx7ev; hudson_auto_refresh=false; screenResolution=1440x900"
base_url="https://jenkins.example.com"
while read -r slave_name; do
curl -v --cookie "$cookies" "$base_url/computer/$slave_name/doDelete"
[ $? ] || exit 1
done < $1