ジャンナのテーマ ライセンスが検証されていません. テーマ オプション ページに移動してライセンスを検証します. ドメイン名ごとに XNUMX つのライセンスが必要です.

基本的な Linux コマンドを素早く学習できる最高のインタラクティブ ゲーム。

私はこの無料の Linux スキル ゲームをプレイして、6 つの新しいコマンドを学びました。

Linuxコマンドの学習は、特にコマンドラインに慣れていない場合は、最初は複雑に思えるかもしれません。しかし、次のような最も一般的な基本コマンドを学習できるように特別に設計されたインタラクティブゲームなど、学習をより簡単かつ楽しくする革新的な方法があります。 ls, cd, mkdir, rm 長いリストを読んだり、退屈な説明を見たりする代わりに、このゲームを使ってコマンドを実際に試し、それぞれの効果をすぐに確認できます。このような実践的なトレーニングは、学習を加速させ、Linuxコマンドを日常的なスキルの一部にするのに役立ちます。

Linux-terminal Linuxの基本コマンドを素早く習得できる最高のインタラクティブゲーム

私はゲーム化された学習の大ファンです。それがきっかけで、Linuxで人気の教育ゲーム「OverTheWire」を試してみることにしました。最初はちょっとした好奇心から始めたのですが、それがいつの間にか、夢中になれるパズルを解いたり、ターミナルマジックを体験したり、そして何かに気づいた時にだけ得られる「なるほど!」という瞬間に、何時間も夢中になりました。

なぜ私はOverTheWireをこんなにも愛しているのでしょうか?

overthewire bandit wargame のホームページ Linux の基本コマンドを素早く学べる最高のインタラクティブゲーム

オーバーザワイヤー これは戦争ゲームのコレクションです。戦争ゲームは基本的にCTF形式のチャレンジで、特定のタスクを完了すると、そのレベルをクリアしたことを証明する特別なトークンを獲得できます。私が主に取り上げるOverTheWire Banditの場合、次のレベルに進むには秘密のパスワードを探して見つけ出す必要があります。

これまで多くのLinux学習ゲームを試してきましたが、OverTheWireは、その環境設定と、リアルなシナリオベースの課題を通して知識を鍛え上げる点において、真に際立っています。実際のLinuxシステムへと移動し、探索することができます。Linux初心者でも中級者でも、このゲームには誰もが楽しめる要素が詰まっています。

各レベルは難易度が徐々に上がっていくように設計されています。特に気に入っているのは、特定のレベルでは前のレベルで使ったコマンドやテクニックが求められる場合があることです。これにより、学んだ内容をより長く記憶し、定着させることができます。

OverTheWireで一番気に入っているのは、受講者を有能な学習者として扱ってくれることです。コマンドやテクニックを暗記するロボットにしてしまうのではなく、未知の分野で調査、問題解決、思考できる人材へと成長させてくれます。これらは、周辺的な境界を越え、テクノロジーの世界のあらゆる場所に潜むスキルです。

Linux で最も重要なスキルを教えます。

Linuxターミナル - 中央に検索バー、そして虫眼鏡を持ったタックス - 基本的なLinuxコマンドを素早く学ぶための最高のインタラクティブゲーム

OverTheWire がどんなチュートリアルや YouTube ビデオよりも優れている点が 1 つあるとすれば、それは自分自身で物事を理解する方法を学ぶことです。

Banditをプレイする際、ゲームはプレイヤーを導いてくれません。目標を設定すると、役立つかもしれないコマンドのヒントが1つか2つ表示される程度です。それだけです。レベル内に説明は一切なく、xyzコマンドの仕組みを説明するヒントもなければ、正確な計算式を示すポップアップウィンドウも表示されません。自分で調べなければなりません。何度も試して失敗し、アプローチを調整して、また挑戦しなければなりません。そして、まさにそれこそが、このゲームの醍醐味なのです。

また読む:  Linux 終了コード: エラーのないスクリプトを書くための秘訣

私にとって、これがLinuxの核となるスキルです。自分が何かを知らないことを受け入れ、調査やマニュアルの閲覧、そして実験を通してそれを発見する能力です。このスキルこそが、Stack Overflowのコマンドをただ真似するだけの人と、実際に何をしているのかを理解している人を分けるものです。

Linux コマンド以外のことも学べます。

OverTheWireはLinuxコマンドに限定されません。Banditは技術的にはLinuxコマンドに対応していますが、最終的には文法以上のものを学ぶことができます。

例えば、ファイルのパーミッション、ネットワークプロトコル、インターネット技術、テキストエンコーディングなどについて学びます。16進文字列をデコードしたり、奇妙なバイナリファイルの中身を調べたり、よくわからないポートに接続したり、Linuxファイルシステムの構造をより深く理解したりする必要がありました。

Banditをクリアすると、OverTheWireでさらに奥深く探索できます。Leviathanは権限昇格を深く掘り下げ、「Narnia」はメモリエクスプロイトとバッファオーバーフローを深く掘り下げ、「Krypton」は暗号の基礎に焦点を当て、「Maze」はリバースエンジニアリングとエクスプロイトの課題を扱います。それぞれのウォーゲームは、セキュリティ、プログラミング、その他のコンピュータサイエンスの概念の異なる側面に基づいています。

学んだコマンド

OverTheWireで初めてこれらのコマンドを見たわけではありませんが、特定の用途で使う必要があったのは久しぶりでした。コマンドの中には一部は部分的に忘れていたものもあれば、コピー&ペーストで組み合わせて使っていたものもあり、何が起こっているのかよく分かっていませんでした。Banditをプレイすることで、それぞれのコマンドの機能をじっくりと学び、より賢く正確に使う方法を学ぶことができました。ここでは、特に印象に残った6つのコマンドを紹介します。

SSH

SSHはSecure Shellの略です。特にインターネット経由で、ある端末から別の端末にリモート接続するための標準的な方法です。コマンドラインセッションを安全に暗号化して別のコンピュータに転送するのと同じような機能で、転送中にデータやパスワードが漏洩することはありません。sshコマンドの最もシンプルな構文は次のとおりです。

ssh ユーザー名@ホスト名

OverTheWire Banditで最初に使うコマンドはsshです。実際、ゲームをプレイするにはサーバーに接続する必要があるため、最初からsshを使う必要があります。慣れるまでは、どのレベルでもsshを使う必要があります。使い方は以下のとおりです。

ssh [メール保護] -p 2220

SSH経由でoverthewire banditサーバに接続する 基本的なLinuxコマンドを素早く学ぶための最高のインタラクティブゲーム

ここでは、ユーザー bandit0 としてポート 2220 経由で bandit.labs.overthewire.org サーバーに接続します。接続すると、このリモート マシンで API が取得され、システムにアクセスできるようになります。

また読む:  Ubuntu を高速化する 7 つの方法

find

findは、ディレクトリを検索し、名前、サイズ、権限、更新日時などの特定の条件に一致するファイルを見つけるためのコマンドラインツールです。Linux版の検索機能に似ていますが、より強力です。基本的な構文は次のとおりです。

find [パス] [オプション]

たとえば、「password.txt」という名前のファイルを検索したい場合、コマンドは以下のとおりです。

find . -name "password.txt"

これは、findコマンドにカレントディレクトリ(.)とそのすべてのサブディレクトリでpassword.txtというファイルを検索するように指示しています。Banditの初期のレベルの一つでは、読み取り可能な1033バイトの非実行ファイルを検索する必要がありました。findコマンドはこのようなシナリオに最適でした。

dir_name -type f -size 1033c ! -executable を検索

これは、指定されたフォルダー内で、サイズがちょうど 1033 バイト (c はバイトを表します) のファイルを検索し、実行可能ファイル以外のファイルを除外します。

sort

sortコマンドラインツールは、テキスト行を特定の順序でソートします。順序はアルファベット順、数値順、あるいは指定した他のルールに基づいて指定できます。一見シンプルに見えますが、uniq、cut、awkなどの他のツールと組み合わせることで、テキストデータ処理のための強力なツールになります。基本的な構文は次のとおりです。

ソート [オプション] [ファイル名]

例えば:

ソートファイル.txt

このコマンドは、file.txt 内の行をアルファベット順にソートし、ターミナルに出力します。ある階層には、多数のパスワードを含むファイルがあります。正しいパスワードを素早く見つけるには、ファイルをアルファベット順にソートし、重複する値を除外する必要がありました。sort コマンドは、この処理に非常に役立ちました。

data.txt をソート | uniq -u

uniq は連続する重複行に対してのみ機能するため、最初に行をソートする必要がありました。これで、正確に1回出現する行のみを出力するようになりました。

xxd

xxdコマンドは、ファイルの16進ダンプを作成するか、元のバイナリ形式に変換します。これはかなり特殊なツールですが、隠しデータや暗号化されたファイルを扱う場合、あるいは何かの生のコンテンツを調べたい場合に非常に便利です。最も単純な形式では、ファイル名を渡します。

xxd [ファイル名]

したがって、secret.txt ファイルがある場合は次のようになります。

xxd 秘密.txt

これにより、secret.txt ファイルの中身が ASCII 表記の 16 進数で出力されます。-r オプションを使用すると、16 進数ファイルをバイナリファイルに変換することもできます。あるレベルでは、バイナリファイルの 16 進数ファイルが生成されます。xxd を使用して、これを ZIP ファイルに戻す必要があります。

xxd -r data.txt データ

16 進ダンプ ファイルが正しい形式である場合、このテキスト ファイルはバイナリ ファイルに変換されます。

また読む:  Windows 10 エクスペリエンスを簡単に提供する最高の Linux ディストリビューション

ストリング

strings は、バイナリファイルから印刷可能なテキストを抽出するコマンドラインツールです。見慣れないファイルを開いて、意味不明な文字列が並んでいるのを見たことがあるなら、strings を使えば、パスワード、ディレクトリ、隠しメッセージなど、判読可能な部分を抽出することができます。このツールは、ファイルが厳密にはテキストではないものの、どこかに判読可能なテキストが含まれている場合に特に便利です。

文字列 secret_file

secret_file ファイルをスキャンし、見つかった印刷可能な文字列を出力します。ある階層には、大量の意味不明な単語の中に隠された、判読可能なテキストを含むファイルがあります。実際のテキストをフィルタリングするには、このファイルに対して strings コマンドを使用する必要があります。

nc

nc(netcatの略)は、TCPまたはUDPを使用したネットワーク接続を介してデータの読み書きができる多機能ネットワークツールです。シンプルなサーバーのセットアップ、ポートのデバッグ、ポートからのデータの読み取りなど、様々なタスクを実行できるため、ネットワークツール界の「スイスナイフ」と呼ばれることもあります。

nc ホストIPポート番号

これにより、デバイスはlocalhostのポート1234に接続され、テキストまたは生データの送受信が可能になります。最初の段階で、localhostのポート30000のパスワードを入力するよう求められます。これはncコマンドで実行できます。

nc localhost 30000 [パスワード入力プロンプト]

これにより、選択したホスト名の選択したポートにパスワードやその他のデータが送信されます。

OverTheWireをプレイする私のおすすめ方法

誰もが同じように学習するわけではありません。それは当然のことです。Linuxを全く初めて使う人にとって、OverTheWireは最初は少し難しいかもしれません。しかし、少し簡単にして、このゲームを最大限に活用する方法があります。

各レベルには、合格するために習得する必要があるコマンドのリストと基本的な概念が含まれています。レベルをクリアするために急いで進むのではなく、各概念をじっくり読んで完全に理解することをお勧めします。各レベルには既にリソースへのリンクがあります。それでも疑問がある場合は、さらに調べてみてください。

Linuxコマンドにも同じことが当てはまります。各コマンドを理解するにはマニュアルページを読み、実際に使って動作を理解してください。そして、最初のレベルに進み、そこから学習を始めましょう。

Linux初心者の方にも、Linux愛好家の方にも、OverTheWireをぜひお試しください。スキルレベルに関わらず、新しい発見があるはずです。他にも、探索する価値のある優れたLinux学習リソースがたくさんあります。

Linuxの学習は、退屈だったり難しかったりする必要はありません。専用のインタラクティブゲームを使えば、プレッシャーや圧倒感を感じることなく、コマンドラインスキルを磨くことができます。この方法は効果的な学習体験を提供するだけでなく、リアルな環境でコマンドを練習することもできます。ぜひゲームを試してみてください。Linuxを使いこなす能力が、より賢く、より自信を持って向上していくのを実感できるでしょう。

トップボタンに移動