From bbb9eb1229dd7cf13eca75fcf8ffc495f97deb1b Mon Sep 17 00:00:00 2001
From: Kreikten <30326049+Kreikten@users.noreply.github.com>
Date: Sat, 25 May 2024 11:53:25 +0300
Subject: [PATCH 1/6] Add files via upload
---
app.py | 32 ++++++
report.md | 334 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
2 files changed, 366 insertions(+)
create mode 100644 app.py
create mode 100644 report.md
diff --git a/app.py b/app.py
new file mode 100644
index 0000000..76578d1
--- /dev/null
+++ b/app.py
@@ -0,0 +1,32 @@
+from flask import Flask, request
+
+app = Flask(__name__)
+
+data = {"username":"", "password":""}
+
+@app.route("/")
+def get_():
+ return data
+
+@app.route("/",methods = ['POST'])
+def post():
+ data_json=request.get_json()
+ if data_json is None:
+ return 'Invalid JSON data', 400
+
+ data['username']=data_json['username']
+ data['password']=data_json['password']
+ print(f"Data received {data_json}")
+
+ return [data['username'], data['password']]
+
+@app.route("/", methods =['PUT'])
+def put():
+ str = request.args.get('password')
+ print(f"New password received {str}")
+ data['password'] = str
+ return [data['username'], data['password']]
+
+app.run(host='0.0.0.0', port=5000)
+
+EOF
\ No newline at end of file
diff --git a/report.md b/report.md
new file mode 100644
index 0000000..312bea7
--- /dev/null
+++ b/report.md
@@ -0,0 +1,334 @@
+
+## 1: создание виртуальных машин
+
+На `https://labs.play-with-docker.com/` создаем три виртуальные машины.
+
+
+
+
+
+
+ Три машины в PWD
+
+
+## 2: генерация ключа
+Для подключения к виртуальным машинам по SSH с рабочей машины необходимо сгенерировать ключ.
+
+
+
+
+
+
+ Генерация ключа SSH с помощью протокола ed25519
+
+
+Подключение к виртуальным машинам с рабочей происходит путём ввода в терминал команды, указанной для каждой виртуалки:
+
+1. `ssh ip172-18-0-94-cp82fi0l2o9000cckerg@direct.labs.play-with-docker.com` - Linux A
+2. `ssh ip172-18-0-85-cp82fi0l2o9000cckerg@direct.labs.play-with-docker.com` - Linux B
+3. `ssh ip172-18-0-96-cp82fi0l2o9000cckerg@direct.labs.play-with-docker.com` - Linux C
+
+## 3: Настройка маршрутов
+Согласно схеме, приведенной на рисунке, необходимо настроить сеть:
+* у Linux A и Linux C - по одному адаптеру
+* Linux B - по два адаптера
+
+
+
+
+
+
+ Рисунок задания
+
+
+По заданию каждому адаптеру необходимо назначить следующие ip-адреса:
+Linux A : `192.168.4.10 / 24` (см. рис. 4)
+
+Linux B_1 : `192.168.4.1 / 24` (см. рис. 6)
+
+Linux B_2 : `192.168.3.1 / 24` (см. рис. 7)
+
+Linux С : `192.168.3.100 / 24` (см. рис. 5)
+
+
+
+
+
+
+
+
+
+ Создание адаптера и установка IP для Linux A
+
+
+
+
+
+
+
+
+
+ Создание адаптеров и установка IP для Linux B
+
+
+
+
+
+
+
+
+
+ Создание адаптера и установка IP для Linux C
+
+
+
+
+ После настройки сети на ВМ необходимо прописать маршруты у клиентов А и С к их подсетям через машину В при помощи команды: `ip route add / via `
+
+
+
+
+
+
+
+ Настройка маршрута передачи от А к С через B
+
+
+
+
+
+
+
+
+
+
+ Настройка маршрута передачи от C к A через B
+
+
+
+## 4: Настройка фаерволла
+
+На Linux B необходимо настроить файрвол таким образом, чтобы Linux B пропускал только http и только через порт 5000.
+
+Это можно сделать при помощи tcpdump.
+
+`apk add tcpdump`
+
+`tcpdump -i any -s 0 'tcp port http' -w /tmp/http.cap and 'port 5000'`
+
+
+
+
+
+После этого, послав запрос с Linux A на Linux C через любой другой порт, например, 5001, получим следующее:
+
+
+
+
+
+
+
+ Запрос через порт, отличный от 5000
+
+
+
+
+## 5: Организация клиент-серверного взаимодействия между А и С
+
+После настройки маршрутов необходимо развернуть сервер на А. Для этого нужно использовать библиотеку Flask
+
+
+
+
+
+
+
+ Установка Flask
+
+
+
+Далее создаем файл app.py со следующим содержимым:
+
+```py
+from flask import Flask, request
+
+app = Flask(__name__)
+
+data = {"username":"", "password":""}
+
+@app.route("/")
+def get_():
+ return data
+
+@app.route("/",methods = ['POST'])
+def post():
+ data_json=request.get_json()
+ if data_json is None:
+ return 'Invalid JSON data', 400
+
+ data['username']=data_json['username']
+ data['password']=data_json['password']
+ print(f"Data received {data_json}")
+
+ return [data['username'], data['password']]
+
+@app.route("/", methods =['PUT'])
+def put():
+ str = request.args.get('password')
+ print(f"New password received {str}")
+ data['password'] = str
+ return [data['username'], data['password']]
+
+app.run(host='0.0.0.0', port=5000)
+
+EOF
+```
+Запущенный сервер выглядит так:
+
+
+
+
+
+
+ Сервер на машине А
+
+
+
+
+
+
+
+
+
+ Ответ на отправленные запросы с машины С на А
+
+
+
+
+
+
+
+
+
+
+ Запросы, пришедшие на сервер А
+
+
+
+Для более упрощения работы с виртуальными машинами напишем три скрипта.
+
+*Скрипт конфигурации виртуальной машины А*
+```sh
+#!/bin/bash
+# Linux A
+echo -e "Starting the MACVLAN installation\n"
+ip link add macvlan1 link eth0 type macvlan mode bridge
+ip address add dev macvlan1 192.168.4.10/24
+ip link set macvlan1 up
+
+echo -e "Ending the MACVLAN installation\n\n"
+
+echo -e "Routing configuration FROM Linux A to Linux C \n\n"
+ip route add 192.168.9.0/24 via 192.168.4.1
+
+echo -e "Start to installing FLASK \n"
+pip install flask
+echo -e "End to installing FLASK \n\n"
+
+echo -e "Creating web-server\n"
+touch app.py
+cat << EOF >app.py
+
+from flask import Flask, request
+
+app = Flask(__name__)
+
+data = {"username":"", "password":""}
+
+@app.route("/")
+def get_():
+ return data
+
+# @app.route("/", methods =['POST'])
+# def post_(number):
+# return f"POST-request : {number}\n\n"
+
+@app.route("/",methods = ['POST'])
+def post():
+ data_json=request.get_json()
+ if data_json is None:
+ return 'Invalid JSON data', 400
+
+ data['username']=data_json['username']
+ data['password']=data_json['password']
+ print(f"Data received {data_json}")
+
+ return [data['username'], data['password']]
+
+@app.route("/", methods =['PUT'])
+def put():
+ str = request.args.get('password')
+ print(f"New password received {str}")
+ data['password'] = str
+ return [data['username'], data['password']]
+
+app.run(host='0.0.0.0', port=5000)
+
+EOF
+
+echo -e "Run the server\n"
+python app.py
+```
+*Скрипт конфигурации виртуальной машины В*
+```sh
+#!/bin/bash
+# Linux B
+
+echo -e "Starting the first MACVLAN installation\n"
+ip link add macvlan1 link eth0 type macvlan mode bridge
+ip address add dev macvlan1 192.168.4.1/24
+ip link set macvlan1 up
+echo -e "Ending the first MACVLAN installation\n\n"
+
+echo -e "Starting the second MACVLAN installation\n"
+ip link add macvlan2 link eth0 type macvlan mode bridge
+ip addres add dev macvlan2 192.168.3.1/24
+ip link set macvlan2 up
+echo -e "Ending the second MACVLAN installation\n\n"
+
+echo -e "Installation tcpdump\n"
+apk add tcpdump
+
+echo -e "Configurate tcpdump (only http throw 5000 port)"
+
+tcpdump -i any -s 0 'tcp port http' -w /tmp/http.cap and 'port 5000'
+```
+*Скрипт конфигурации виртуальной машины С*
+```sh
+#!/bin/bash
+# Linux C
+
+echo -e "Starting the first MACVLAN installation\n"
+
+ip link add macvlan1 link eth0 type macvlan mode bridge
+ip address add dev macvlan1 192.168.3.100/24
+ip link set macvlan1 up
+ip route add 192.168.4.0/24 via 192.168.3.1
+
+echo -e "Ending the first MACVLAN installation\n\n"
+
+echo -e "Sending GET-request\n"
+curl "http://192.168.4.10:5000/"
+
+
+echo -e "Sending POST-request\n"
+curl -X POST -H "Content-Type: application/json" -d' {"username":"crll","password":"mn"}' http://192.168.4.10:5000
+
+echo -e "\nChanging passwords \n"
+
+curl -X PUT http://192.168.4.10:5000?password=incorrect
+
+echo -e "Sending request to incorrect port\n"
+curl http://192.168.4.10:5001
+```
+
From 50f29d1f30b653d4aa226096cf0e08df5ea02cad Mon Sep 17 00:00:00 2001
From: Kreikten <30326049+Kreikten@users.noreply.github.com>
Date: Sat, 25 May 2024 11:57:35 +0300
Subject: [PATCH 2/6] Add files via upload
---
imgs/1.PNG | Bin 0 -> 6905 bytes
imgs/10.PNG | Bin 0 -> 35919 bytes
imgs/11.PNG | Bin 0 -> 8959 bytes
imgs/12.PNG | Bin 0 -> 8906 bytes
imgs/13.PNG | Bin 0 -> 4203 bytes
imgs/2.PNG | Bin 0 -> 2781 bytes
imgs/3.PNG | Bin 0 -> 34612 bytes
imgs/4.PNG | Bin 0 -> 70901 bytes
imgs/5.PNG | Bin 0 -> 34349 bytes
imgs/6.PNG | Bin 0 -> 3598 bytes
imgs/7.PNG | Bin 0 -> 16656 bytes
imgs/8.PNG | Bin 0 -> 15513 bytes
imgs/9.PNG | Bin 0 -> 5787 bytes
13 files changed, 0 insertions(+), 0 deletions(-)
create mode 100644 imgs/1.PNG
create mode 100644 imgs/10.PNG
create mode 100644 imgs/11.PNG
create mode 100644 imgs/12.PNG
create mode 100644 imgs/13.PNG
create mode 100644 imgs/2.PNG
create mode 100644 imgs/3.PNG
create mode 100644 imgs/4.PNG
create mode 100644 imgs/5.PNG
create mode 100644 imgs/6.PNG
create mode 100644 imgs/7.PNG
create mode 100644 imgs/8.PNG
create mode 100644 imgs/9.PNG
diff --git a/imgs/1.PNG b/imgs/1.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..b5bac05b3ecfad69edf6709d6fbad03199f1321a
GIT binary patch
literal 6905
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
UiBms6Zal1&xvg2{xmyqaKhvzvX8-^I
literal 0
HcmV?d00001
diff --git a/imgs/11.PNG b/imgs/11.PNG
new file mode 100644
index 0000000000000000000000000000000000000000..5a38c7b4f8b850367cd58d63a48484f5af437d59
GIT binary patch
literal 8959
zcmZ{K2Ut^2vp4#pQY=Un3kZUA5D=s$iXc^@NC_>WiWrIzL3;QrN{N7Ul@bL3kx)Vj
zEg?viCQ<{5fHWgSIs`~4m!R+aefPQdp65xj=bYKync4Zx&detIj;a0$j_?qZr@;G!NhZJJ097;XMbd1
z4QF9F*~I)DYV-c+!onh&Y^Zy~JODDENr(~C$3{|v%39C5`3tZ*K^%^&AJz_kRX$X^
zGJTTGU-&)#pIN_+Lr16WS`(@+2ER{`IRjpN%N_KrR`9f-poD3b+UYkIgZ864iXkR$
z8BshEyDsZne&((hc308}=l_M+T}8zs=>4cT?=hVEZV#1kXrCt*mWGRLG6#)to9kS?wGCz~AfHNA6bK6g)m8H=}=MC-L9V-VI+uh6kw;cJ7bP@S1h6Us`)0@x$-D3YW|MiKT4dL1E$0G5jCEiC4>hE
z^^xNV*qGc)qRIu3S&3+Lg8#Xnu2=p{r>4qTC>u3K2vK)^Hrq3cg2eEkEHmJ@Xh
z$Z_2p`BQ;$w{KjpJVctFteE8&}FWAzu$VJOqUl$u
z-y5aZCO8C}vN}2_n8YvK#2Z>FrVU~RnKQw*T0(c(+9QB=Ab6T7FeboIN7_CZ8!)P-
zZXM!w_w@6Y@KUpU&AZpHjv1vfzRk$J-Fg1{gMoRz1Jd(Ov*Bj}^8LMM7#kmXY%GSk
zEDcQ{FT59i-TcilT>A8tohdq0r~0N@E(YL3pzr+RZCYi_dk5G-U;68fKnqO`!=tr}3s<9$XbQ8>32-e>``(6sI0~`!6Ll}q3
zCH}<9Ie92Ff%EBG5e14H{P#10o!_)>xSt)bxSJO&SGn^rX0gA)R+4G)Kdu(*gZ*@S
zr?@P!1Q#9&+tkGi%K;UM3?y6O#i*ZHMN
zi;Z1B|3rMKmE`)?XCX=)`SH%)jyZyKg=f!t!GbAq^?3@P^&4ZWLsfkD>&X8+4#B
zMgUT_)T1y*6=1A)lN;L7d#8MiLo(~iYr}eTe9``DRL&|}`io{I(tM@GO0;cp{1RG7
z!mG7oj(k+p(4)azhb*=A&&&Gz)b{aM*bJDf<`B&9$Gbg1-$K+v&^aySA+=*pOwq!r
zljufiNMuq$vLk3g{gP~f?h*EL1t2hm2cT>JZlr5xZ>5eA3#cX<5fs@4X*
zyKO5ywQ-Zs8?VGq4^m4Wj&uFPFXzbTsoooZwfUJNl6KL*Ogrn&pp#xXTV#uy!(3BY
z5i7D(W#tPU&fU#T
zufffX^ALjO?k2gXZSiR5pZ>*1?tw4V?>xe#w{$%bMre0<8VNHJ-W?bj7>NNX)N^rTR
zihze-4n5$bp{XxK=7*?!*w&+MGnI!4x{U*Q+l6VXPe2K