暗号-ファイルとディレクトリを暗号化/復号化するためのコマンドラインツール

ss環境を保護し、データを暗号化するために、いくつかのセキュリティ対策を講じます。 Linuxにはいくつかの暗号化方法があり、データの暗号化に役立つツールがいくつかあります。 機密情報をパートナーと通信する必要がある場合、暗号化は重要です。

暗号とは

暗号 ファイルとディレクトリに対してaes-256-cbc暗号化を簡単に実行できるようにするモジュール。 ash-shell / cipherはMITライセンスの下でライセンスされています。

暗号をインストールするには、前にAshをインストールする必要があります。 インストール後、git cloneの設定に応じて、次の2つのコマンドのいずれかを実行できます。

ash apm:install https://github.com/ash-shell/cipher.git

また

ash apm:install [email protected]:ash-shell/cipher.git

1)ファイルとディレクトリを暗号化する

暗号化では、データを暗号化するためにコマンドを使用します cipher:e その後に、ファイルまたはディレクトリの名前/場所が続きます。 暗号化用のパスワードの入力を求められます

a。 ファイルを暗号化する

以下の内容のファイルがあると考えてみましょう。

# cat file 
file encrypting with linux cipher tool

ファイルを暗号化するには、以下のコマンドを使用します

ash cipher:e /root/file
<< cipher >>: Enter encryption password: 
<< cipher >>: Confirm encryption password: 
<< cipher >>: File encrypted at /root/file.enc

私の側から見ると、ファイルを暗号化すると、元のファイルは存在せず、暗号化されたファイルのみが存在することに気付きました。 以下のように確認できます

# ls -l /root/
total 20
-rw-r--r--. 1 root root 90 Jun 25 19:56 file.enc
drwxr-xr-x. 2 root root 19 Jun 25 18:19 folder

暗号化されたファイル名file.encしかないことがわかります。 この操作により、暗号化されたファイル名にenc拡張子が自動的に追加されます。

catコマンドで暗号化されたファイルの内容を確認できます

# cat /root/file.enc 
U2FsdGVkX19T+dDYuraqLzjsgrazvDTAi0opyeMbfZIuTFRPDsQg/ZXlMHD2Zc+A
6+i3iW3rPgl+NUjpanJkFA==

コンテンツが人間に読めない可能性があります。

b。 フォルダを暗号化する

以下のフォルダを考えてみましょう

# ls -ld /root/folder
drwxr-xr-x. 2 root root 19 Jun 25 18:19 /root/folder

フォルダを暗号化するには、以下のコマンドを使用します

# ash cipher:e folder/
<< cipher >>: Enter encryption password: 
<< cipher >>: Confirm encryption password: 
<< cipher >>: Directory encrypted at folder.tar.gz.enc

暗号化されたフォルダが圧縮されていることがわかります。 それでは、元のフォルダを確認しましょう

# ls -l /root
total 24
-rw-r--r--. 1 root root 90 Jun 25 19:56 file.enc
-rw-r--r--. 1 root root 285 Jun 25 20:17 folder.tar.gz.enc

元のフォルダが存在しないことがわかります。 暗号化されたフォルダの拡張子は圧縮ファイルですが、その内容を確認するには、次のようにコマンドcatを使用します。

# cat /root/folder.tar.gz.enc 
U2FsdGVkX18WP0Lci6rkCfCruUA2P4UmzaOVzGdD1rt824CfNB8KthA0zLOZZDUl
xroF8q7tTrxR3RJrJesZcC08fzMZ5JtUnNAM7aIg+bljPFfep2HyP2XK1nRFk5rr
GTjUhd3ue5KCxUUaGAypLZHvA1LixX4FUFRV68u8G5VFPtaHSqc50E/qhUHClAKj
UlVWCvBtHDkD/DDcw1xjqhQKml5wNMK4N7f5dmaSFuXYBmSrQWcgW00i9URxX6jn
7eRawFYP+zbsl30QCWGrxw==

tarコマンドで圧縮ファイルの内容を確認することができます。

# tar -t /root/folder.tar.gz.enc

結果を見ることができないことがわかります。カーソルはプロンプトによって保持されていました。 使用を余儀なくされた Ctrl-c 私の殻を制御するために。 解凍してみることができます

# tar -zxvf /root/folder.tar.gz.enc

gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now

エラーメッセージが表示されているため、フォルダが暗号化されており、そのコンテンツにアクセスできないことがわかります。

2)ファイルとディレクトリを復号化する

データを復号化するには、次のコマンドを使用します cipher:d その後にファイルまたはディレクトリの名前が続きます。 復号化のためにパスワードを入力するように求められます。 これは、暗号化プロセスで使用されるのと同じパスワードです。

a。 ファイルを復号化する

次に、以下のコマンドでファイルを復号化します

# ash cipher:d /root/file.enc 
<< cipher >>: Enter decryption password: 
<< cipher >>: File decrypted at /root/file

操作が成功したことを確認できます。 それでは、ファイルの内容を確認しましょう

# cat /root/file
file encrypting with linux cipher tool

元のファイルの内容を見ることができます

b。 ディレクトリを復号化する

ディレクトリを復号化するには、以下とまったく同じプロセスです。

# ash cipher:d folder.tar.gz.enc 
<< cipher >>: Enter decryption password: 
<< cipher >>: Directory decrypted at folder/

フォルダが復号化されていることがわかります。 それでは、フォルダの内容を確認しましょう

# ls -l folder/
total 4
-rw-r--r--. 1 root root 11 Jun 25 21:08 essai

これで、元のフォルダーに正常にアクセスできるようになりました。

結論

以前の記事の1つで、gpgツールについて説明しましたが、cipherは、パスワードに基づいてデータを暗号化/復号化するための新しいツールであり、使いやすいです。 データの暗号化と復号化の2つのオプションを備えたシンプルなコマンドがあります。 暗号化に使用されるパスワードは、復号化に使用されるものと同じです。 保護するために、すべてのファイルに同じパスワードを使用しないことをお勧めします。 つまり、保護された各ファイルに対応する暗号化パスワードを信頼できる受信者に渡すことを意味します。