0% acharam este documento útil (0 voto)
27 visualizações2 páginas

Criptografia de Disco em Linux, Windows e Mac

Enviado por

domf4426
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato ODT, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
27 visualizações2 páginas

Criptografia de Disco em Linux, Windows e Mac

Enviado por

domf4426
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato ODT, PDF, TXT ou leia on-line no Scribd

import os

import platform
import subprocess
import sys

def run_command(command):
result = [Link](command, shell=True, capture_output=True, text=True)
if [Link] != 0:
print(f"Erro ao executar comando: {[Link]}")
raise Exception([Link])
return [Link]

def encrypt_disk_linux(device):
try:
print("Instalando cryptsetup...")
run_command("sudo apt-get install -y cryptsetup")
except Exception as e:
print(f"Erro ao instalar cryptsetup: {e}")
return

try:
print("Iniciando formatação do disco. Este processo irá apagar todos os dados no dispositivo.")
run_command(f"echo -e 'YES\n' | sudo cryptsetup luksFormat {device}")
except Exception as e:
print(f"Erro ao formatar disco: {e}")
return

try:
run_command(f"sudo cryptsetup open {device} my_encrypted_volume")
except Exception as e:
print(f"Erro ao abrir volume criptografado: {e}")
return

try:
run_command("sudo mkfs.ext4 /dev/mapper/my_encrypted_volume")
except Exception as e:
print(f"Erro ao formatar volume: {e}")
return

try:
run_command("sudo mount /dev/mapper/my_encrypted_volume /mnt")
print("Disco criptografado e montado com sucesso em /mnt.")
except Exception as e:
print(f"Erro ao montar volume: {e}")

def encrypt_disk_windows(drive_letter):
try:
print("Iniciando a criptografia do disco. Este processo pode levar algum tempo...")
run_command(f"[Link] -Command \"Enable-BitLocker -MountPoint {drive_letter} -
EncryptionMethod XtsAes256 -UsedSpaceOnly -Verbose\"")
print("Disco criptografado com sucesso.")
except Exception as e:
print(f"Erro ao criptografar o disco: {e}")

def encrypt_disk_mac(volume):
try:
print("Iniciando a criptografia do disco. Este processo pode levar algum tempo...")
run_command(f"diskutil cs convert {volume} -passphrase")
print("Disco criptografado com sucesso.")
except Exception as e:
print(f"Erro ao criptografar o disco: {e}")

def main():
os_type = [Link]()

if os_type == "Linux":
device = input("Insira o dispositivo (ex: /dev/sdX) para criptografar: ")
encrypt_disk_linux(device)
elif os_type == "Windows":
drive_letter = input("Insira a letra da unidade (ex: D:) para criptografar: ")
encrypt_disk_windows(drive_letter)
elif os_type == "Darwin": # macOS
volume = input("Insira o volume (ex: /Volumes/DriveName) para criptografar: ")
encrypt_disk_mac(volume)
else:
print(f"Sistema operacional {os_type} não suportado.")

if __name__ == "__main__":
if [Link]() != 0 and [Link]() != "Windows":
print("Este script deve ser executado como root/superusuário.")
[Link](1)
main()

Você também pode gostar