FLASK API 🌟 УПРАВЛЕНИЕ сервером с помощью Python
Подготовка окружения
apt update
apt install tmux python3-pip python3-venv -y
tmux new -s flask
sudo -i
mkdir -p /app/flask
cd /app/flask
mkdir -p /app/flask/venv
python3 -m venv venv
source venv/bin/activate
pip3 install flask flask_talisman
Генерация сертификата для Flask API
openssl req -x509 -newkey rsa:4096 -keyout private_key.pem -out certificate.pem -days 10000 -nodes
Создаем main.py на сервере
nano /app/flask/main.py
from flask import Flask, request
from flask_talisman import Talisman
import subprocess
#openssl req -x509 -newkey rsa:4096 -keyout private_key.pem -out certificate.pem -days 10000 -nodes
app = Flask(__name__)
token = "mysecrettoken"
# Настройте Talisman для обеспечения безопасности вашего приложения
talisman = Talisman(app, content_security_policy=None)
@app.route('/execute', methods=['POST'])
def execute_command():
data = request.get_json()
client_token = data.get('token', '')
# Проверьте, является ли токен действительным и соответствует ли он ожидаемому значению
if client_token != token:
return {'error': 'Неверный токен доступа'}, 401
command = data.get('command', '')
try:
result = subprocess.run(command, shell=True, text=True, capture_output=True)
output = result.stdout
return {'output': output}
except Exception as e:
return {'error': str(e)}
if __name__ == '__main__':
# Замените параметры на ваши SSL-сертификат и ключ
app.run(host='0.0.0.0', port=34702, ssl_context=('certificate.pem', 'private_key.pem'), debug=True)
И СТАРТУЕМ
python3 main.py
Создаем main.py на клиенте
import requests
import json
token = 'mysecrettoken'
# Замените URL на адрес вашего Flask API сервера
url = 'https://142.54.160.100:34702/execute'
# Замените команду на то, что вы хотите выполнить
command = 'ls -al /app/flask/'
data = {'command': command, 'token': token}
response = requests.post(url, json=data, verify=False)
if response.status_code == 200:
result = response.json()
print(str(result["output"]))
else:
print("Ошибка при выполнении команды:", response.status_code)
И выполняем команду в скрипте
python3 main.py
МОИ ПРОЕКТЫ:
✅ БЕСПЛАТНЫЕ СЕРВЕРА
VPN Без блокировок (Xray VPN)!
https://t.me/vpnxray_bot ЕСТЬ 🔥 БЕСПЛАТНЫЙ ПЕРИОД
🎉 Бесплатный ChatGPT в Телеграм
Я В ТЕЛЕГРАМ https://t.me/worldranger ТЕЛЕГРАМ КАНАЛ https://t.me/linuxlife ТЕЛЕГРАМ ЧАТ https://t.me/linuxlife_chat
$$$ Поддержать канал: $$$
https://yoomoney.ru/to/4100116391953093
ВК сообщество https://vk.com/club198153108
ЯндексДзен https://dzen.ru/linuxlifepage
Read other posts