Opensslコマンド
久しく研究とかべんきょうとかから退避してきました。
0.今回は完全に外部のサーバーへアクセスする御用です。
すでにSSHについては何度かやっていますが、今回はVPNで接続します。
ん?ん?
SSHとVPNの明確な違いってなんじゃ?
アプリ層かネットワーク層かの違いだった気がします。ってかそうです。SSHはsshd走らせて、特に立てたりしなくてもいいですけど、VPNはVPNサーバーが必要ですね。ほら、VPNサーバーしんだりするじゃん。
1.今日はこれが本題ではありません
特にVPNについてはIPsec〜とかしか知らないのでもっと知る必要がありますね。とりあえず、セキュアな〜が必要なんです。
で、今回はパスワードを送ります。
もちろん、外部委託なのでバレてはいけません。そんな時、OpenSSLのワードのハッシュ化を施します。
OpenSSLといえば、脆弱性が一部で報告されていますが、それはさて置き、よくファイルの暗号化とかの暗号化通信をサポートする機能ですな
OpenSSLの結構よく使われる部分についても、今回触れていると時間がないので避けます。
2.そう、今回はハッシュ化について。
1 |
openssl passwd |
これについてやっていきましょう。このコマンドはパスワードハッシュを作ります。
ハッシュは不可逆で復号が不可能。暗号化は鍵で復号可能です。
暗号化方式としてDES,3DESとかいっぱいあります。これらの暗号化アルゴリズムの詳細は調べてくださいな。
結構、いろいろありますがごく稀に強度不足があるようです。とはいえ、人間にとっては高すぎるセキュリティパラメータですが、、、
なので、まぁそのあるごりを使うかは、、、、、はい。適当としておきます。適当じゃないけど、
で、
1 |
openssl passwd -1 -salt soluto password |
とかにしてみます。最初の-1はMD5での暗号化を意味します。デフォです。この部分を-shaとかにすると違う暗号化方式が選択できます。MD5はデフォですが、わりかしヤバくて使うのも拒む場合もあるそうです。他にコマンドとかあるのかな?そういえば
-saltは仮に被ハッシュ化ワードが同一だった場合に、saltが異なればちがうハッシュ値を得られるという感じです。んで最後の文字列はハッシュにしたい文字列です。
そこで得られた文字列がこちら
1 |
$1$soluto$EPrTKvBhtvhpLxZeDBC/H. |
$を区切り文字に方式、salt、パスワードのハッシュ化を施したものが作られました。当然、暗号化ではないので復号不可能です。
よって、このパスワードのハッシュ値を登録しとけば、通信路さえ守られていれば安心して伝えられるよね・使えるよねって感じです。
ちなみに僕はバカなのでハッシュ値の最後までコピーしないで送ってロフインできない事件が起きました。はは(真顔)
3.時間があれば
OpenSSLは多分使わないので、散々捨ててきたVPNについて暇があればやります。
ディスカッション
コメント一覧
まだ、コメントがありません