#Linux道場初級編!練習問題を解こう!

Linux道場

はじめに

今回は、Linuxをなれる場として簡単なQ&A問題や、実際にコンソールを操作して問題に挑むといったことをやっていきます!

問題は全部で5問です。パパっと解いてパパっと休憩に入りましょう!

では、道場破りへLet’sGo!

【出題問題】

  1. 13.8.32.3/25のネットマスクは?
  2. ターミナルソフトウェアからrootでのログインを禁止せよ!
  3. SELINUXの無効化を無効化せよ!
  4. ファイアウォールを無効化せよ!
  5. IPv6を無効化せよ!

13.8.32.3/25のネットマスクは?

クエスチョン question

では、第1問目です!で~でん!

13.8.32.3/25のネットマスクは?

Answer

Answer

IPアドレス「13.8.32.3/25」のネットマスクを求めるには、CIDR(Classless Inter-Domain Routing)表記の「/25」を使います。

「/25」は、サブネットマスクが25ビットの長さであることを示しています。ネットマスクは、IPアドレスのどの部分がネットワークを示し、どの部分がホストを示すかを決定します。

具体的に説明すると:

  1. ビット表記でのネットマスク:
    • CIDRの「/25」は、ネットマスクが25ビットの「1」で構成されることを意味します。
    • 残りのビット(32 – 25 = 7ビット)は「0」で構成されます。
    • これをビット列で表すと、ネットマスクは「11111111.11111111.11111111.10000000」となります。
  2. 10進数表記でのネットマスク:
    • このビット列を10進数に変換します。
    • 「11111111.11111111.11111111.10000000」は、10進数で「255.255.255.128」となります。

なので、IPアドレス「10.5.34.5/25」のネットマスクは「255.255.255.128」です。

トニーくん
トニーくん

CIDRの数値分、1を並べて、「32マイナスCIDR=0の個数」分、0のビット列を作る。

で、あとはそれを10進数に直せば、ネットマスクが求められる!

ターミナルソフトウェアからrootでのログインを禁止せよ!

クエスチョン question

第2問。で~でん!

ターミナルソフトウェアからrootでのログインを禁止せよ!また、設定変更するファイルの絶対パスと、項目デフォルト設定値を答えよ!

Answer

Answer

「ターミナルソフトウェアからrootでのログインを禁止」するには、設定ファイル /etc/ssh/sshd_config を変更します。ここで、SSH(Secure Shell)によるrootユーザーのログインを禁止する設定を行います。

設定ファイルの絶対パス
  • /etc/ssh/sshd_config
設定項目
  • PermitRootLogin
デフォルト設定
  • PermitRootLogin yes

(多くのディストリビューションではデフォルトで root ログインが許可されています)

設定値
  • PermitRootLogin no
トニーくん
トニーくん

設定を変更したら「sudo systemctl restart sshd」コマンドで、設定を反映させましょう!

SELINUXの無効化を無効化せよ!

クエスチョン question

第3問。で~でん!

SELINUXの無効化せよ!また、設定変更するファイルの絶対パスと、項目デフォルト設定値を答えよ!

Answer

Answer

SELinux(Security-Enhanced Linux)Linuxシステムのセキュリティを強化するための機能です。特定の用途やトラブルシューティングのために一時的に無効化することはありますが、無効化したまま運用することは一般的には推奨されません。

あくまでも練習ってことで、今回はやっていきましょう!

設定ファイルの絶対パス
  • /etc/selinux/config
設定項目
  • SELINUX
デフォルト設定
  • デフォルトの設定はディストリビューションによって異なりますが、一般的には enforcing です。
設定値
  • disabled
トニーくん
トニーくん

SELinuxの設定変更後は「sudo reboot」コマンドで再起動して設定を反映させましょう!

ファイアウォールを無効化せよ!

クエスチョン question

第4問!で~でん!

ファイアウォールを無効化せよ!また、その際の一連のコマンドを答えよ!

Answer

Answer

Firewall(ファイアウォール)を無効化するには、Red Hat系のLinuxディストリビューションで firewalld というファイアウォール管理ツールを使用している場合と、iptables を使用している場合があります。ここでは、firewalldをつかった無効化方法を説明します。

1.firewalld のサービスを停止する
Bash
sudo systemctl stop firewalld
2.firewalld を無効化する
  • サーバーが再起動されたときに自動的に firewalld が起動しないように設定します。
Bash
sudo systemctl disable firewalld
3.ステータスを確認する
  • firewalld が停止していることを確認します。
Bash
sudo systemctl status firewalld

IPv6を無効化せよ!

クエスチョン question

では、さいごの問題となる5問目です。で~でん!

IPv6を無効化せよ!また、その際に、ファイルの絶対パス、設定値を答えよ!

Answer

Answer
1.設定ファイルを編集する

/etc/sysctl.conf にIPv6を無効化する設定を追加します。

Bash
sudo vi /etc/sysctl.conf
2.以下の設定を追加する
Bash
# Disable IPv6
net.ipv6.conf.all.disable_ipv6 = 1
net.ipv6.conf.default.disable_ipv6 = 1
net.ipv6.conf.lo.disable_ipv6 = 1
3.設定を適用する

設定を反映させるために、以下のコマンドを実行します。

Bash
sudo sysctl -p
4. ネットワーク設定の確認

再起動後、IPv6が無効化されていることを確認するには、以下のコマンドを使用します。

Bash
ip a | grep inet6

出力が何も表示されない場合、IPv6は無効化されています。

トニーくん
トニーくん

ip a は、ip address の短縮形で、ネットワークインターフェースに関する詳細な情報を表示するコマンドです。

トニーくん
トニーくん

grep は、指定したパターンに一致する行を検索して表示するコマンドです。ここでは、inet6 という文字列を検索しています。

おわりに

トニーくん
トニーくん

お疲れさまでした!今日は、Linux道場初級編と題して基本的なLinuxコマンドを習得してきました。

トニーくん
トニーくん

こうやって実践をやることで、本で得た知識を知識としてそのままにするのではなく、しっかりと自分に落とし込むことができるんです!

トニーくん
トニーくん

これからも、少しずつ一歩一歩着実に成長していきましょう!

タイトルとURLをコピーしました