Linux Hardenining:ディストリビューションを保護してより安全にするためのヒント

LinuxのXNUMXつのタックスを強化します。XNUMXつは無防備で、もうXNUMXつは装甲です。

多くの記事が公開されています Linuxディストリビューション TAILS(Web上でのプライバシーと匿名性を保証する)、Whonix(セキュリティパラノイド用のLinux)、および安全を目的としたその他のディストリビューションなど、より安全です。 しかしもちろん、すべてのユーザーがこれらのディストリビューションを使用したいとは限りません。 そのため、この記事では、«に関する一連の推奨事項を示します。Linuxの強化«、つまり、ディストリビューション(それが何であれ)をより安全にします。

Red Hat、SUSE、CentOS、openSUSE、Ubuntu、Debian、Arch Linux、Linux Mint、…どのような違いがありますか。 どんな配布でも安全です あなたがそれを深く知っていて、あなたを脅かす危険から身を守る方法を知っているなら、最も安全なものとして。 そしてこのために、ソフトウェアレベルだけでなく、ハードウェアレベルでも多くのレベルで行動することができます。

一般的な安全ウサギ:

ハードウェアセキュリティ南京錠回路

このセクションでは、いくつかを紹介します 非常に基本的で簡単なヒント それらを理解するためにコンピュータの知識を必要としない、それらは常識に過ぎませんが、不注意または不注意のために実行しないことがあります。

  • 個人データや機密データをクラウドにアップロードしないでください。 クラウドは、無料であるかどうか、安全性が高いかどうかに関係なく、どこにいてもデータを破棄するための優れたツールです。 ただし、見物人と「共有」したくないデータはアップロードしないようにしてください。 このタイプのより機密性の高いデータは、SDカードやペンドライブなどのより個人的な媒体で伝送する必要があります。
  • たとえば、コンピューターを使用してインターネットにアクセスし、重要なデータを処理する場合、BYODの流行に参加し、ビジネスデータを持ち帰ったと想像してみてください。 さて、このような状況では、 オンラインで動作しない、切断してみてください(たとえば、LibreOfficeがテキストを編集する場合などに接続して作業する必要があるのはなぜですか?)。 切断されたコンピューターが最も安全です。覚えておいてください。
  • 上記に関連して、 オンラインで作業するときは、ローカルハードドライブに重要なデータを残さないでください。 この情報が保存されている外付けハードドライブまたは別の種類のメモリ(メモリカード、ペンドライブなど)を用意することをお勧めします。 したがって、接続された機器と、重要なデータがある「接続されていない」メモリとの間に障壁を置きます。
  • バックアップコピーを作成する あなたが面白いと思うか、失いたくないデータの。 脆弱性を利用してコンピュータに侵入し、特権を昇格させると、攻撃者は障害なくデータを消去または操作できるようになります。 そのため、バックアップを作成することをお勧めします。
  • 自分の弱点に関するデータをフォーラムに残さないでください またはウェブ上のコメント。 たとえば、コンピュータにセキュリティ上の問題があり、閉じたいポートが開いている場合は、問題をフォーラムに残さないでください。問題が発生する可能性があります。 悪意のある人は、その情報を使用して完全な犠牲者を探すことができます。 それらを解決するのに役立つ信頼できる技術者を見つけることをお勧めします。 また、「ITセキュリティの専門家を探しています」「セキュリティ部門の人員が必要」などの広告をインターネットに掲載することもよくあります。 これは、その会社の潜在的な弱点を示している可能性があり、サイバー犯罪者はこれらのタイプのページを使用して簡単な被害者を検索できます...使用しているシステムとバージョンに関する情報を残すことも良くありません。誰かがエクスプロイトを使用して悪用する可能性がありますそのバージョンの脆弱性。 つまり、攻撃者があなたに気づかないほど、攻撃するのが難しくなります。 攻撃者は通常、攻撃の前に「情報収集」と呼ばれるプロセスを実行し、攻撃者に対して使用できる被害者に関する情報を収集することで構成されていることに注意してください。
  • 機器を最新の状態に保つ 最新のアップデートとパッチを使用すると、多くの場合、これらは機能を改善するだけでなく、バ​​グや脆弱性を修正して悪用されないようにすることを忘れないでください。
  • 強力なパスワードを使用する。 辞書にある名前や12345のようなパスワードは絶対に入れないでください。辞書攻撃では、すぐに削除される可能性があります。 また、パスワードは簡単に検出できるため、デフォルトではパスワードを残さないでください。 また、生年月日、親戚の名前、ペット、またはあなたの好みについては使用しないでください。 これらの種類のパスワードは、ソーシャルエンジニアリングによって簡単に推測できます。 数字、大文字と小文字、記号を含む長いパスワードを使用することをお勧めします。 また、すべてにマスターパスワードを使用しないでください。つまり、電子メールアカウントとオペレーティングシステムのセッションがある場合は、両方に同じものを使用しないでください。 これは、ログインするためのパスワードがHotmail / Outlookアカウントと同じであるため、Windows8では最下位になってしまったものです。 安全なパスワードのタイプは「auite3YUQK && w-」です。 総当たり攻撃によってそれを達成することはできますが、それに専念する時間はそれを価値のないものにします...
  • 不明なソースからパッケージをインストールしないでください そして可能であれば。 インストールするプログラムの公式ウェブサイトのソースコードパッケージを使用してください。 パッケージに問題がある場合は、Glimpseなどのサンドボックス環境を使用することをお勧めします。 Glimpseにインストールするすべてのアプリケーションは正常に実行できますが、データの読み取りまたは書き込みを試みると、サンドボックス環境内にのみ反映され、システムが問題から分離されます。
  • 使用 システム特権をできるだけ少なくする。 また、タスクの特権が必要な場合は、できれば「su」の前に「sudo」を使用することをお勧めします。

その他のもう少し技術的なヒント:

コンピュータセキュリティ、キーボードの南京錠

前のセクションで見たアドバイスに加えて、ディストリビューションをさらに安全にするために、次の手順に従うことも強くお勧めします。 あなたのディストリビューションは 好きなだけ安全つまり、構成とセキュリティ保護に多くの時間を費やすほど、良い結果が得られます。

Linuxおよびファイアウォール/ UTMのセキュリティスイート:

使用 SELinuxまたはAppArmor Linuxを強化します。 これらのシステムはやや複雑ですが、非常に役立つマニュアルを見ることができます。 AppArmorは、エクスプロイトやその他の不要なプロセスアクションに敏感なアプリケーションでさえも制限できます。 AppArmorは、バージョン2.6.36の時点でLinuxカーネルに含まれています。 その構成ファイルは/etc/apparmor.dに保存されています

使用しないポートはすべて閉じてください 頻繁に。 物理ファイアウォールを使用している場合でも、それが最適です。 もう0つのオプションは、古い機器または未使用の機器を専用にして、ホームネットワークにUTMまたはファイアウォールを実装することです(IPCop、m0nXNUMXwallなどのディストリビューションを使用できます)。 iptablesを設定して、不要なものを除外することもできます。 それらを閉じるには、Linuxカーネル自体を統合する「iptables / netfilter」を使用できます。 netfilterとiptablesは非常に複雑で、記事では説明できないため、マニュアルを参照することをお勧めします。 ターミナルに入力すると、開いているポートを確認できます。

netstat -nap

機器の物理的保護:

また、周囲の誰かを信頼していない場合や、コンピュータを他の人の手の届くところに置いておく必要がある場合に備えて、コンピュータを物理的に保護することもできます。 このために、ハードドライブ以外の手段からの起動を無効にすることができます BIOS / UEFI そしてパスワードはBIOS / UEFIを保護するので、BIOS / UEFIなしでは変更できません。 これにより、誰かがオペレーティングシステムがインストールされた起動可能なUSBまたは外付けハードドライブを持ち出し、ディストリビューションにログインしなくても、そこからデータにアクセスできるようになります。 それを保護するには、BIOS / UEFIにアクセスします。[セキュリティ]セクションでパスワードを追加できます。

あなたはで同じことをすることができます GRUB、パスワードで保護:

grub-mkpasswd-pbkdf2

入力します GRUBのパスワード 必要に応じて、SHA512でエンコードされます。 次に、暗号化されたパスワード(「YourPBKDF2 is」に表示されるパスワード)をコピーして、後で使用します。

sudo nano /boot/grub/grub.cfg

最初にユーザーを作成し、 暗号化されたパスワード。 たとえば、以前にコピーしたパスワードが「grub.pbkdf2.sha512.10000.58AA8513IEH723」の場合:

set superusers=”isaac”
password_pbkdf2 isaac grub.pbkdf2.sha512.10000.58AA8513IEH723

そして、変更を保存します...

ソフトウェアの削減=セキュリティの強化:

インストールされているパッケージの数を最小限に抑える。 必要なものだけをインストールしてください。使用をやめる場合は、アンインストールすることをお勧めします。 ソフトウェアが少なければ少ないほど、脆弱性は少なくなります。 それを覚えて。 システムの起動時に実行される特定のプログラムのサービスまたはデーモンについても同じことをお勧めします。 使用しない場合は、「オフ」モードにしてください。

情報を安全に削除します。

情報を削除するとき ディスク、メモリカード、パーティション、または単にファイルやディレクトリの場合は、安全に実行してください。 削除したと思っても簡単に復旧できます。 個人データを含むドキュメントをゴミ箱に捨てるのは物理的には役に立ちません。誰かがそれをコンテナから取り出して見る可能性があるため、紙を破壊する必要があります。コンピューティングでも同じことが起こります。 たとえば、メモリをランダムまたはnullデータで埋めて、公開したくないデータを上書きすることができます。 これには次のものを使用できます(機能させるには、特権を使用して実行し、/ dev / sdaxを、ケースで操作するデバイスまたはパーティションに置き換える必要があります...):

dd if=/dev/zeo of=/dev/sdax bs=1M
dd if=/dev/unrandom of=/dev/sdax bs=1M

欲しいものがあれば 特定のファイルを完全に削除する、「シュレッド」を使用できます。 たとえば、システムパスワードが書き留められているpasswords.txtというファイルを削除するとします。 シュレッドと上書きをたとえば上記の26回使用して、削除後に復元できないことを保証できます。

shred -u -z -n 26 contraseñas.txt

インストールできるHardWipe、Eraser、SecureDeleteなどのツールがあります 思い出を「拭く」(完全に削除する)、SWAPパーティション、RAMなど。

ユーザーアカウントとパスワード:

パスワードシステムを改善する S / KEYやSecurIDなどのツールを使用して、動的なパスワードスキームを作成します。 / etc / passwdディレクトリに暗号化されたパスワードがないことを確認してください。 / etc / shadowをもっとうまく使う必要があります。 このために、「pwconv」と「grpconv」を使用して、新しいユーザーとグループを作成できますが、パスワードは非表示になっています。 もうXNUMXつの興味深い点は、/ etc / default / passwdファイルを編集してパスワードを期限切れにし、定期的にパスワードを更新するように強制することです。 したがって、パスワードを取得した場合、頻繁に変更するため、パスワードが永久に続くことはありません。 /etc/login.defsファイルを使用すると、パスワードシステムを強化することもできます。 それを編集し、PASS_MAX_DAYSおよびPASS_MIN_DAYSエントリを探して、パスワードが期限切れになるまでの最小日数と最大日数を指定します。 PASS_WARN_AGEは、パスワードがX日以内に期限切れになることを通知するメッセージを表示します。 エントリが非常に多いため、このファイルに関するマニュアルを参照することをお勧めします。

ラス 使用されていないアカウント そしてそれらは/ etc / passwdに存在し、シェル変数/ bin / falseを持っている必要があります。 別の場合は、これに変更してください。 そうすれば、シェルを取得するために使用することはできません。 現在のディレクトリ「。」が表示されないように、ターミナルのPATH変数を変更することも興味深いです。 つまり、「。/user / local / sbin /:/ usr / local / bin:/ usr / bin:/ bin」から「/ user / local / sbin /:/ usr / local / bin:」に変更する必要があります。 / usr / bin:/ bin”。

使用することをお勧めします ネットワーク認証方式としてのKerberos.

PAM(Pluggable Authentication Module) Microsoft ActiveDirectoryのようなものです。 これは、明確な利点を備えた共通の柔軟な認証スキームを提供します。 /etc/pam.d/ディレクトリを見て、Webで情報を検索できます。 ここで説明するのは非常に広範囲です...

特権に目を光らせてください 異なるディレクトリの。 たとえば、/ rootは、「drwx --- ------」権限を持つrootユーザーとrootグループに属している必要があります。 Linuxディレクトリツリーの各ディレクトリに必要な権限に関する情報は、Webで見つけることができます。 別の構成は危険な場合があります。

データを暗号化します。

ディレクトリまたはパーティションの内容を暗号化します 関連情報がある場所。 このために、LUKSまたはeCryptFSを使用できます。 たとえば、isaacという名前のユーザーの暗号化/ホームを作成するとします。

sudo apt-get install ecryptfs-utils
ecryptfs-setup-private
ecryptfs-migrate-home -u isaac

上記の後、質問されたらパスフレーズまたはパスワードを示してください...

作成するには プライベートディレクトリたとえば「プライベート」と呼ばれる場合、eCryptFSを使用することもできます。 そのディレクトリに、暗号化するものを配置して、他のユーザーのビューから削除することができます。

mkdir /home/isaac/privado
chmod 700 /home/isaac/privado
mount -t ecryptfs /home/isaa/privado

さまざまなパラメータについて質問します。 まず、パスワード、OpenSSL、...のいずれかを選択できます。また、1、つまり「パスフレーズ」を選択する必要があります。 次に、確認するパスワードを3回入力します。 その後、必要な暗号化のタイプ(AES、Blowfish、DES16、CASTなど)を選択します。 最初のAESを選択してから、キーのバイトタイプ(32、64、またはXNUMX)を紹介します。 そして最後に、最後の質問に「はい」で答えます。 これで、このディレクトリをマウントおよびマウント解除して使用できます。

あなたが欲しいだけなら 特定のファイルを暗号化する、scryptまたはPGPを使用できます。 たとえば、passwords.txtというファイルの場合、次のコマンドを使用して、それぞれ暗号化と復号化を行うことができます(どちらの場合もパスワードの入力を求められます)。

scrypt <contraseñas.txt>contraseñas.crypt
scrypt <contraseñas.crypt>contraseñas.txt

Google認証システムによるXNUMX段階認証:

UbutnuターミナルのGoogle認証システム

追加する XNUMX段階認証 あなたのシステムで。 したがって、パスワードが盗まれたとしても、システムにアクセスすることはできません。 たとえば、UbuntuとそのUnity環境では、LightDMを使用できますが、原則は他のディストリビューションにエクスポートできます。 これにはタブレットまたはスマートフォンが必要です。その場合、PlayストアからGoogle認証システムをインストールする必要があります。 次に、PCで最初に行うことは、Google認証システムPAMをインストールして起動することです。

sudo apt-get install libpam-google-authenticator
google-authenticator

検証キーが時間に基づくものであるかどうかを尋ねるとき、私たちはyで肯定的に答えます。 これで、認識されるQRコードが表示されます スマートフォンから、アプリから直接秘密鍵を入力することもできます(PCに「あなたの新しい秘密は:」と表示されたものです)。 また、スマートフォンを携帯していない場合に備えて一連のコードを提供しますので、ハエに備えて覚えておくとよいでしょう。 そして、私たちは私たちの好みに応じてyonで返信し続けます。

今、私たちは(nano、gedit、またはあなたの好きなテキストエディタで)開きます 構成ファイル と:

sudo gedit /etc/pam.d/lightdm

そして、次の行を追加します。

auth required pam_google_authenticator.so nullok

保存すると、次にログインしたときに、 確認キー 私たちのモバイルが私たちのために生成すること。

ある日なら XNUMX段階認証プロセスを削除しますか、ファイル/etc/pam.d/lightdmから「authrequired pam_google_authenticator.sonullok」という行を削除する必要があります。
常識と注意が最良の味方であることを忘れないでください。 GNU / Linux環境は安全ですが、使用しているオペレーティングシステムがどれほど優れていても、ネットワークに接続されているコンピューターは安全ではなくなります。 ご質問、問題、提案がある場合は、 コメンタリオ。 お役に立てば幸いです…


コメントを残す

あなたのメールアドレスが公開されることはありません。 必須フィールドには付いています *

*

*

  1. データの責任者:AB Internet Networks 2008 SL
  2. データの目的:SPAMの制御、コメント管理。
  3. 正当化:あなたの同意
  4. データの伝達:法的義務がある場合を除き、データが第三者に伝達されることはありません。
  5. データストレージ:Occentus Networks(EU)がホストするデータベース
  6. 権利:いつでも情報を制限、回復、削除できます。

     ヌリア

    こんにちは、コメントします。 Raspbianにgoogle-authenticatorを問題なくインストールしましたが、モバイルアプリケーションは正常に登録され、コードが提供されますが、ラズベリーを再起動してシステムを再起動すると、二重認証コードの入力を求められません。表示されるだけです。ユーザー名とパスワードを入力します。

    どうもありがとうございます。 挨拶。