리눅스에서 파일 암호화/복호화 및 비밀번호 보호하는 7가지 도구

암호화는 파일을 인가된 사람만이 액세스할 수 있도록 인코딩하는 과정입니다. 컴퓨터가 존재하지 않았던 시대에도 인류는 오랫동안 암호화를 사용해왔습니다. 전쟁 중에는 해당 부족이나 관련된 사람만 이해할 수 있는 메시지를 전달했습니다.

리눅스 배포본은 때때로 유용할 수 있는 몇 가지 표준 암호화/해독 도구를 제공합니다. 이 기사에서는 적절한 표준 예제와 함께 7가지 이러한 도구를 다루어 파일을 암호화, 해독 및 비밀번호로 보호하는 데 도움이 될 것입니다.

리누스 명령줄에서 무작위 암호를 생성하는 방법에 관심이 있다면 다음 기사를 읽어보세요:

[ 관련 기사: 리눅스에서 무작위 암호 생성/암호화/해독하는 방법 ]

1. GnuPG

GnuPGGNU Privacy Guard의 약자로 종종 GPG로 불리며 암호화 소프트웨어의 모음입니다. GNU 프로젝트에서 C 프로그래밍 언어로 작성되었습니다. 최신 안정 버전은 2.0.27입니다.

오늘날의 대부분의 리눅스 배포판에서는 gnupg 패키지가 기본으로 제공되며, 설치되어 있지 않은 경우 리포지토리에서 apt이나 yum을 사용하여 설치할 수 있습니다.

$ sudo apt-get install gnupg
# yum install gnupg

우리는 tecmint.txt라는 텍스트 파일을 ~/Desktop/Tecmint/에 위치시켰습니다. 이 파일은 이 문서 이후의 예제에서 사용됩니다.

더 진행하기 전에 텍스트 파일의 내용을 확인하세요.

$ cat ~/Desktop/Tecmint/tecmint.txt

이제 gpg를 사용하여 tecmint.txt 파일을 암호화하세요. gpg 명령을 -c 옵션과 함께 실행하면(대칭 암호화만 하는 옵션) tecmint.txt.gpg이라는 파일이 생성됩니다. 디렉토리 내용을 확인하기 위해 목록을 볼 수 있습니다.

$ gpg -c ~/Desktop/Tecmint/tecmint.txt
$ ls -l ~/Desktop/Tecmint

참고: 주어진 파일을 암호화하기 위해 “암호”를 두 번 입력하세요. 위의 암호화는 CAST5 암호화 알고리즘으로 자동으로 수행되었습니다. 선택적으로 다른 알고리즘을 지정할 수 있습니다.

모든 암호화 알고리즘을 확인하려면 다음 명령을 실행할 수 있습니다.

$ gpg --version

이제 위의 암호화된 파일을 복호화하려면 다음 명령을 사용할 수 있지만, 복호화를 시작하기 전에 원본 파일 즉, tecmint.txt를 먼저 제거하고 암호화된 파일 tecmint.txt.gpg은 그대로 둡니다.

$ rm ~/Desktop/Tecmint/tecmint.txt
$ gpg ~/Desktop/Tecmint/tecmint.txt.gpg

참고: 복호화할 때 입력한 암호를 입력하여 복호화할 수 있습니다.

2. bcrypt

bcrypt는 블로우피쉬 암호를 기반으로 하는 키 유도 함수입니다. 블로우피쉬 암호는 해당 암호 알고리즘을 공격할 수 있다는 것이 밝혀지면서 권장되지 않습니다.

bcrypt를 설치하지 않았다면 필요한 패키지를 apt이나 yum으로 설치할 수 있습니다.

$ sudo apt-get install bcrypt
# yum install bcrypt

파일을 bcrypt를 사용하여 암호화하십시오.

$ bcrypt ~/Desktop/Tecmint/tecmint.txt

위 명령을 실행하면 새 파일 이름 texmint.txt.bfe이 생성되고 원본 파일 tecmint.txt이 대체됩니다.

bcrypt를 사용하여 파일을 복호화하십시오.

$ bcrypt tecmint.txt.bfe

참고: bcrypt는 안전한 암호화 형식이 없으므로 Debian Jessie에서 지원이 비활성화되었습니다.

3. ccrypt

UNIX crypt의 대체로 설계된 ccrypt는 파일 및 스트림 암호화 및 복호화를 위한 유틸리티입니다. Rijndael 암호를 사용합니다.

ccrypt를 설치하지 않았다면 apt 또는 yum을 사용할 수 있습니다.

$ sudo apt-get install ccrypt
# yum install ccrypt

ccrypt를 사용하여 파일을 암호화하십시오. 암호화에는 ccencrypt를 사용하고 복호화에는 ccdecrypt를 사용합니다. 암호화시 원본 파일 (tecmint.txt)이 (tecmint.txt.cpt)로 대체되고, 복호화시 암호화된 파일 (tecmint.txt.cpt)이 원본 파일 (tecmint.txt)로 대체됩니다. 이를 확인하려면 ls 명령을 사용할 수 있습니다.

파일을 암호화하십시오.

$ ccencrypt ~/Desktop/Tecmint/tecmint.txt

파일을 복호화하십시오.

$ ccdecrypt ~/Desktop/Tecmint/tecmint.txt.cpt

암호화시 사용한 동일한 암호를 제공하여 복호화하십시오.

4. Zip

가장 유명한 아카이브 형식 중 하나이며, 일상적인 대화에서 일반적으로 아카이브 파일을 zip 파일이라고 부릅니다. pkzip 스트림 암호 알고리즘을 사용합니다.

zip을 설치하지 않았다면 apt 또는 yum을 사용할 수 있습니다.

$ sudo apt-get install zip
# yum install zip

압축 파일을 만들고 암호화하는 방법:

$ zip --password mypassword tecmint.zip tecmint.txt tecmint1.1txt tecmint2.txt

다음은 암호화된 zip 파일을 만드는 방법입니다.mypassword는 암호화에 사용되는 암호입니다. 아카이브 이름은 tecmint.zip이며, 이 아카이브에는 tecmint.txt, tecmint1.txt, 그리고 tecmint2.txt가 포함되어 있습니다.

암호화된 zip 파일을 해독하는 방법:

$ unzip tecmint.zip

압축을 풀 때는 암호화에 사용한 것과 동일한 암호를 제공해야 합니다.

5. Openssl

Openssl는 메시지와 파일을 암호화할 수 있는 명령줄 암호화 도구 키트입니다.

Openssl이 아직 설치되지 않았다면 설치하는 것이 좋습니다.

$ sudo apt-get install openssl
# yum install openssl

Openssl을 사용하여 파일을 암호화하는 방법:

$ openssl enc -aes-256-cbc -in ~/Desktop/Tecmint/tecmint.txt -out ~/Desktop/Tecmint/tecmint.dat

위의 명령에서 사용한 옵션에 대한 설명:

  1. enc: 암호화
  2. -aes-256-cbc: 사용할 알고리즘
  3. -in: 암호화할 파일의 전체 경로
  4. -out: 암호화된 파일이 저장될 전체 경로

Openssl을 사용하여 파일을 해독하는 방법:

$ openssl enc -aes-256-cbc -d -in ~/Desktop/Tecmint/tecmint.dat > ~/Desktop/Tecmint/tecmint1.txt

6. 7-zip

7-zip는 C++로 작성된 유명한 오픈 소스 압축 프로그램으로, 대부분의 알려진 아카이브 파일 형식을 압축 및 해제할 수 있습니다.

7-zip가 설치되지 않았다면 apt나 yum을 사용하여 설치하는 것이 좋습니다.

$ sudo apt-get install p7zip-full
# yum install p7zip-full

7-zip를 사용하여 zip 파일로 파일을 압축하고 암호화하는 방법:

$ 7za a -tzip -p -mem=AES256 tecmint.zip tecmint.txt tecmint1.txt

7-zip를 사용하여 암호화된 zip 파일을 해제하는 방법.

$ 7za e tecmint.zip

주의: 암호화 및 복호화 프로세스 중에 동일한 암호를 제공하십시오.

지금까지 사용한 모든 도구는 명령 기반입니다. 나우틸러스에서 제공하는 GUI 기반의 암호화 도구가 있습니다. 이 도구를 사용하면 그래픽 인터페이스를 사용하여 파일을 암호화/복호화할 수 있습니다.

7. 나우틸러스 암호화 유틸리티

나우틸러스 암호화 유틸리티를 사용하여 GUI에서 파일을 암호화하는 단계.

GUI에서 파일 암호화

1. 암호화하려는 파일을 마우스 오른쪽 버튼으로 클릭하십시오.

2. zip 형식을 선택하고 저장할 위치를 지정하십시오. 암호화할 암호도 제공하십시오.

Encrypt File Using Nautilus

3. 메시지 – 암호화된 zip이 성공적으로 생성되었습니다를 확인하십시오.

Encrypted Zip File Confirmation
GUI에서 파일 복호화

1. GUI에서 zip 파일을 열어보십시오. 파일 옆에 잠금 아이콘이 표시됩니다. 암호를 입력하라는 메시지가 표시됩니다.

Decryption of File

2. 성공적으로 입력하면 파일이 열립니다.

Decryption Confirmation

지금은 여기까지입니다. 다음에는 또 다른 흥미로운 주제로 돌아오겠습니다. 그때까지 Tecmint에 연결되어 계십시오. 아래 댓글에 소중한 피드백을 제공하는 것을 잊지 마십시오. 좋아요와 공유를 부탁드리며 저희가 홍보되도록 도와주십시오.

Source:
https://www.tecmint.com/linux-password-protect-files-with-encryption/