This media is not supported in your browser
VIEW IN TELEGRAM
Lazywarden — это инструмент автоматизации на Python, предназначенный для резервного копирования и восстановления данных из вашего хранилища, включая вложения Bitwarden.
Позволяет загружать резервные копии в несколько облачных хранилищ и получать уведомления на различных платформах.
▪️ Защита данных с помощью шифрования AES-256 и генерации ключей Argon2.
▪️ Хэш SHA-256 для обеспечения целостности данных при каждом резервном копировании.
▪️ Сохраняйте резервные копии в таких сервисах, как Dropbox, Google Drive, pCloud, MEGA, NextCloud, Seafile, Filebase (IPFS) и через SMTP.
▪️ Сохраняйте резервные копии локально для большего контроля.
▪️ Мгновенные оповещения в Discord, Telegram и Slack.
▪️ Интеграция с Todoist и CalDAV для управления расписанием.
▪️ Экспорт элементов Bitwarden в базу данных KeePass (kdbx), включая логины с TOTP, URI, настраиваемые поля, карты, вложения личных данных.
#lazywargen #backup #python
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍3
Эта книга создана специально для начинающих. Здесь вы найдете простое и понятное введение в Python, узнаете, как установить программу, какой дистрибутив выбрать и как эффективно работать с объектами и методами, включая ООП.
ООП — объектно-ориентированное программирование
Каждая глава содержит практические задания, которые помогут закрепить полученные знания и быстрее перейти к реальному программированию.
#python
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥5💩2
Python - язык простой и удобный, но в плане безопасности исходников у него есть слабое место: скрипты легко читаются, модифицируются и анализируются. Если ты разрабатываешь утилиту, обрабатываешь конфиденциальные данные или просто хочешь защититься от «любопытных», стоит продумать меры защиты. Разберём основные подходы:
Python автоматически компилирует .py в .pyc, но и их можно дизассемблировать. Более надёжный способ - сборка в .pyd/.so (динамическую библиотеку):
pip install cython
cythonize -i myscript.py
На выходе - скомпилированный бинарник. Исходный код спрятан, но не полностью защищён от реверса.
Использовать PyArmor, который шифрует байткод:
pip install pyarmor
pyarmor obfuscate myscript.py
Использовать Nuitka или PyInstaller - обфускация + упаковка в исполняемый файл:
pyinstaller --onefile myscript.py
Для чувствительных задач - запускай скрипты через Docker, изолируя переменные окружения и доступ к файловой системе.
📍 Используй .env файл + библиотеку python-dotenv📍 Храни секреты в HashiCorp Vault, AWS SSM или аналогах📍 Шифруй конфиги с GPG, если нужно хранить локально
Полной защиты от реверса не будет - Python не компилируемый в машинный код язык. Но затруднить анализ, защитить данные и повысить безопасность вполне реально.
#python #security
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12❤2🔥1
Иногда нужно быстро поделиться файлами между машинами - без nginx, apache и прочих решений. Для этого можно использовать встроенный веб-сервер python:
python3 -m http.server 8000
Он идеально подходит, когда нужно просто раздать файлы по HTTP: перешел в нужную директорию, запустил сервер, скачал - готово.
Но недавно понадобился HTTPS-сервер, так как приложение отказывалось работать по обычному HTTP. Настраивать nginx для этого не хотелось, и, как оказалось, все можно сделать тем же питоном, буквально в несколько строк.
openssl req -new -x509 -keyout localhost.pem -out localhost.pem -days 365 -nodes
webserver.py:
import http.server, ssl
server_address = ('172.20.0.210', 8000)
httpd = http.server.HTTPServer(server_address, http.server.SimpleHTTPRequestHandler)
httpd.socket = ssl.wrap_socket(
httpd.socket,
server_side=True,
certfile='localhost.pem',
ssl_version=ssl.PROTOCOL_TLSv1_2
)
httpd.serve_forever()
Запуск:
python3 webserver.py
После этого открываем в браузере:
https://172.20.0.210:8000
и видим содержимое директории (или сайт, если там есть index.html).
#python #https
Please open Telegram to view this post
VIEW IN TELEGRAM
👍12🔥3❤1