本書は、これからIT 技術やネットワーク技術を勉強したいと考えているICT 業界の新人の方、大学生の方をはじめ、情報ネットワークに関する基礎的な知識を身につけ、サーバの構築によって応用力、実践力を高めたいとお考えの方に読んで頂きたい書籍です。
本書の目的は、主に二つあります。一つはパソコン( PC) やスマートフォンを利用する上で、日常生活にとっても欠かせないものとなってきているインターネットを代表とする情報ネットワークの概念と仕組みを理解すること。もう一つは情報ネットワークの構成法や情報ネットワーク上でのサービスについて基礎的な技術を習得するとともに、情報ネットワークの構成要素であるサーバの構築方法及び管理方法について、手元のPC 上にLinux サーバを構築し、基本的なシステム設計、システム運用について学習することです。
本書の読者には、情報ネットワークへの理解を深めて頂き、少しでも実務に生かせる知識を身につけて頂ければ幸いです。
目次
<基礎編>
1.情報ネットワークとは?
1.1. 情報ネットワークの概要
1.1.1. 情報ネットワークとは
1.1.2. 情報ネットワークの分類
1.1.3. 情報ネットワークでできること
1.1.4. 情報ネットワークの構成例
1.2. 情報量の計算
1.2.1. 情報とは
1.2.2. 情報量
1.2.3. 情報量の加法性
1.2.4. 平均情報量(エントロピー)
1.2.5. 情報量の単位
1.2.6. 2進数と16進数
1.2.7. 論理演算
1.3. 情報通信の仕組み
1.3.1. 通信システム
1.3.2. 情報源符号化と通信路符号化
1.3.3. 回線交換とパケット交換
1.3.4. OSI参照モデル
1.3.5. 通信路とトラヒック
1.3.6. 待ち行列理論
問題の解答
2.情報ネットワークの構成
2.1. インターネットとIPネットワーク
2.1.1. インターネットの歴史と構成
2.1.2. インターネットの標準化(IETF、W3C)
2.1.3. IPネットワーク
2.1.4. TCP/IPとOSI参照モデル
2.2. IPアドレス
2.2.1. IPアドレス
2.2.2. ネットワークアドレス
2.2.3. 特別なIPアドレス
2.2.4. IPアドレスのクラス
2.2.5. サブネットワーク
2.2.6. IPv6
2.3. インターネットへの接続
2.3.1. インターネットへの接続方法
2.3.2. LAN間接続
2.3.3. ルーティング
2.3.4. グローバルIPアドレスとプライベートIPアドレス
2.3.5. ネットワークアドレス変換
2.4. IPネットワークの通信
2.4.1. TCP/IPのプロトコルスタック
2.4.2. TCP/IPでのカプセル化
2.4.3. ネットワークインタフェース層の通信
2.4.4. インターネット層の通信
2.4.5. トランスポート層の通信
2.4.6. ユニキャスト、ブロードキャスト、マルチキャスト
2.4.7. IPアドレスの割り当て
2.4.8. ドメイン名空間と名前解決
2.5. IPネットワークの設計
2.5.1. ネットワーク機器の選定
2.5.2. サブネットの構成
2.5.3. IPアドレス設計
2.5.4. ネットワーク構成図
2.5.5. 仮想ネットワーク
2.5.6. ファイアウォール
問題の解答
実習のヒント
3.IPネットワークのサービス
3.1. サービスアーキテクチャ
3.1.1. クライアント・サーバモデル
3.1.2. UNIX
3.2. アプリケーションサービスとその仕組み
3.2.1. 時刻合わせ
3.2.2. 電子メール
3.2.3. メーリングリスト
3.2.4. SNS
3.2.5. WWW
3.2.6. マルチメディア配信
3.2.7. リモートアクセス
3.3. 情報セキュリティ
3.3.1. 情報セキュリティ
3.3.2. 脅威
3.3.3. セキュリティ対策
3.3.4. 認証
3.3.5. 暗号化
実習のヒント
<サーバ構築編>
4.サーバの種類と仮想環境
4.1. サーバの機能、サーバの構成
4.2. オンプレミスとクラウド
4.3. 仮想化技術
4.4. 仮想化ソフトウェア(VirtualBox)のインストール
4.5. 仮想マシン(Virtual Machine)の作成
4.6. 仮想マシンの持ち運び
5.Linuxのインストール
5.1. Linuxとは?
5.2. Linuxのディストリビューション
5.2.1. Red Hat系Linuxディストリビューションの特徴
5.2.2. AlmaLinuxの特徴
5.3. AlmaLinuxのインストール
5.3.1. AlmaLinuxのダウンロード
5.3.2. VirtualBox仮想マシンの設定
5.3.3. VirtualBox仮想マシンのマウス制御
5.3.4. AlmaLinuxのインストール設定
6.サーバ環境の構築
6.1. コマンドラインを用いた基本的な操作
6.1.1. Linuxコマンド入力方法
6.1.2. 基本コマンド
6.1.3. スーパーユーザ
6.1.4. アクセス権
6.1.5. ファイルの所有者とグループ
6.1.6. ファイルの編集
6.1.7. ヘルプコマンド
6.1.8. Linuxのディレクトリ構成
6.1.9. シェル
6.1.10. シェルの機能
6.1.11. シェルスクリプト
6.1.12. 環境変数
6.1.13. エイリアス
6.1.14. シェルのカスタマイズ
6.2. パッケージのインストール
6.2.1. パッケージ
6.2.2. リポジトリ
6.2.3. パッケージの操作
6.3. GUIの導入
6.3.1. X11
6.3.2. GUIパッケージのインストール
6.3.3. GNOME Desktopの使い方
6.3.4. VirtualBox Guest Additionsのインストール
6.4. 脆弱性対策の重要性
6.4.1. 脆弱性の確認方法
6.4.2. 対策の仕方
実習のヒント
7.システムの設定と管理
7.1. ネットワークの設定
7.2. 名前解決
7.2.1. 名前解決の設定
7.2.2. DNSサーバの構築
7.3. ファイルサーバ
7.3.1. ファイル共有
7.3.2. NFS
7.3.3. Samba
7.3.4. ファイル転送
7.3.5. FTPサーバのインストール
7.3.6. FTPの実行
7.4. Webサーバ
7.4.1. Webサーバのインストール
7.4.2. Webページの公開設定
7.4.3. CGI
7.4.4. Webサーバのログ確認
7.4.5. 検索サイトからのアクセス制限
7.4.6. LAMP構成
7.5. リソースの管理
7.5.1. リソース
7.5.2. プロセス
7.5.3. ジョブ
7.5.4. メモリ
7.5.5. ファイルシステム
7.6. バックアップ
7.6.1. バックアップの重要性
7.6.2. バックアップの方法
7.6.3. アーカイブファイルの作成
7.6.4. バックアップのスケジューリング
7.7. ログ管理
7.7.1. ログ
7.7.2. システムログとアプリケーションログ
7.7.3. ログファイルの管理
7.7.4. ログ表示に関するコマンド
実習のヒント
<共通編>
8.トラブルシューティング
8.1. 利用者としてのトラブルシューティング
8.1.1. インターネットがつながらない?
8.1.2. 不具合症状の確認
8.1.3. まず確認すること
8.1.4. 端末のトラブル
8.1.5. サーバのトラブル
8.1.6. Wi-Fi接続のトラブル
8.1.7. 家庭内での切り分け
8.2. サーバ管理者としてのトラブルシューティング
8.2.1. サーバのトラブル
8.2.2. サーバの管理