
サーバの作り方と、それをとりまくネットの整え方をみていきます。[※1]
- ※1
- ネットワークを作るときに注意しなければいけないのは、その安全性(セキュリティ)ですがーーとはいえ、完全に安全なシステムを作ることは不可能、というのはよく言われることですよね(無限のお金と永遠の時間はかけられない)。トラブルが起こらないようにすることだけに注力し、それが「絶対に起こらない」と考えたり言ったりするのでなく、<トラブルが起きたときにどうするか>を考えたり言ったりすることがむしろ大切だったりするわけですし(危機管理)。
コンピュータとOS
- ◯
- しくみ

コンピュータと周辺機器:CPU (Intel, AMD, Arm) , GPU (Nvidia, AMD) , strage (HDD, SSD)
- ◯
- つくる
LANとインターネット
- ◯
- しくみ

ルーティング(切れたら自動で切り替え〜分散型の管理):IGP (RIP, OSPF), EGP (BGP)

IPとエンドツーエンド原理(インターネットが世界規模になれる理由):IP

TCPと2軍隊問題(どうして<OK>のやり取りは3回なのか):TCP

ローカルネットワークとインターネット・スイートの連携:Ethernet, ARP

プラグ&プレイ(なにもしなくてもネットにつながる):DHCP

プロトコルの階層(足元だけ気にすればいい):OSI, Ethernet, TCP/IP
- ◯
- つくる

独自のコミュニケーション方式を作る:Erlang

ネットワーク・シミュレータを使う:ns3

静的ルートを設定する:Yamaha RTX (ip route)
各種サービス:ネームサービス
- ◯
- しくみ

広域分散データベース(データのツリーがネット全体のダウンを防ぐ):DNS

もうひとつの分散ネームサービス:LDAP

ファイルサーバとの連携:NIS
- ◯
- つくる

DNSサーバを設定する:BIND (named)

NISサーバを設定する:NIS server (ypserv)
各種サービス:メールサービス
- ◯
- しくみ

メールの送信(多様なメールの通信方式からインターネット向けへ):SMTP

メールの受信(メールを取り込む/サーバで管理する):POP/IMAP

メーリングリスト(メールをいっせいに送る)
- ◯
- つくる

メールサーバを設定する:Postfix

メールボックスサーバを設定する:Dovecot

メーリングリスト管理アプリを設定する:Mailman

メールサーバの設定で注意すべきこと
各種サービス:ファイルサービス
- ◯
- しくみ

より安全なファイルサービス:SSH (SFTP)

ローカルネットワークで同一環境を実現する:NFS
- ◯
- つくる

ファイルサーバを設定する:sftpd

ファイルサーバを設定する:nfsd, autofs

パソコン(Windows / Mac )向けのファイル共用環境を作る:Samba (smb)
各種サービス:ウェブサービス
- ◯
- しくみ

ウェブのプロトコル(なぜ<クッキー>が必要になる?):HTTP

ウェブサーバとプロキシ
- ◯
- つくる

ウェブサーバを設定する:Apache (httpd)

ウェブサーバの設定で注意すべきこと
暗号化と認証
- ◯
- しくみ

秘密鍵と公開鍵

VPNとワンタイムパスワード
- ◯
- つくる

VPNを設定する(ルータ):Yamaha RTX (tunnel)

VPNを設定する(サーバ):OpenVPN (openvpn) , L2TP (xl2tpd)

認証をネームサービスと連携させる:RADIUS

ワンタイムパスワードを設定する:Google Authenticator
C/Sシステムとファイアウォール
- ◯
- しくみ

サーバとクライアント

パケットとフィルタ(不正侵入を防ぐ)
- ◯
- つくる

パケットフィルタを設定する(ルータ向け):Yamaha RTX (ip filter)

ネットワークとマルチプレイ 〜 XR空間での同期:Unity (Netcode, XR Interaction Toolkit)
プラグ&プレイ〜高可用性システム
- ◯
- しくみ

リソースの自動割当

クラスタと高可用性
- ◯
- つくる

ネットワークのプラグ&プレイ(DHCPサーバを設定する):Yamaha RTX (dhcp)

コンテナにリソースを自動で割り当てる:Docker, Kubernetes

ストレージの可用性を上げる:RAID, network RAID

高可用性アプリを設定する(ファイル/フォルダの冗長化):DRBD, Corosync, Pacemaker

高可用性アプリを設定する(仮想OSの冗長化):DRBD, Corosync, Pacemaker, Xen

コンテナをクラスタで管理する:Docker, Kubernetes
システム管理の効率を上げる
- ◯
- しくみ

ネットワーク監視のための統一リソース:SNMP

独自スクリプトから構成管理アプリへ
- ◯
- つくる

ストレージのバックアップをとる:tar, rsync

システムをモニタする:snmpd

管理用のスクリプトを作る:sh, awk, perl, ...

構成管理アプリを使う:Ansible