AWSでLinuxサーバーを使う基礎知識|EC2の仕組みとオンプレミスサーバーとの違い

宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)
HOMELinux技術 リナックスマスター.JP(Linuxマスター.JP)AWS(Amazon Linux) > AWSでLinuxサーバーを使う基礎知識|EC2の仕組みとオンプレミスサーバーとの違い
「AWSを使ってみたいけど、EC2って何?オンプレのサーバーと何が違うの?」
こういった疑問を持ちながらAWSを触り始めた方は多いはずです。

クラウドとオンプレミスの違いは、単なる「場所の違い」ではありません。インフラの設計思想、管理の責任範囲、コスト構造まで根本から異なります。そのギャップを理解しないまま進むと、思わぬところでつまずくことになります。
この記事では、EC2(Elastic Compute Cloud)の仕組みを入口として、amazon linuxがどんなディストリビューションなのか、オンプレミスとの違いをどう理解すればよいかを、Linuxを学び始めた方でも理解できるように解説します。

この記事のポイント

・AWSのEC2はハードウェアを「仮想マシン」として提供するクラウドサービス
・オンプレミスと最も大きく違うのは「責任共有モデル」とコスト構造
・amazon linuxはEC2向けに最適化されたLinuxディストリビューション
・AWSを使いこなすにはLinuxのファイル・プロセス・ネットワーク管理の基礎が必須


「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
姓・名・メールの3つだけ/30秒/解除は3秒 / 詳細はこちら

AWSとは?クラウドサーバーの基本概念

AWS(Amazon Web Services)は、Amazonが提供するクラウドコンピューティングプラットフォームです。サーバー・ストレージ・データベース・ネットワークなど、ITインフラに必要なあらゆるリソースをインターネット経由で提供します。

クラウドサービスの特徴を一言で表すなら「使った分だけ払うインフラ」です。オンプレミス(自社内に物理サーバーを設置する方式)では、サーバー購入・ラック設置・ネットワーク工事・電源確保といった初期費用が数百万円規模になることもあります。一方AWSなら、数分でサーバーを立ち上げ、使い終わったら削除する、というスタイルが可能です。

AWSが提供するサービスは200種類以上ありますが、Linuxを学ぶ上でまず押さえるべきは「EC2」と「VPC」(仮想ネットワーク)の2つです。VPCはAWS上の仮想的なネットワーク空間で、その中にEC2インスタンスを配置していく設計になります。

EC2(Elastic Compute Cloud)の仕組みとは

EC2は、AWSが提供する仮想サーバーサービスです。「Elastic(弾力的)」という名前が示す通り、リソース(CPU・メモリ)を必要に応じて増減できます。

EC2の内部では、Nitroと呼ばれるAWS独自のハイパーバイザー技術を使い、物理マシン上で複数の仮想マシンを動かしています。ユーザーが「インスタンスを起動する」と、Amazonのデータセンター内の物理ホストに仮想マシンが割り当てられます。Nitroシステムへの移行により、ネットワークI/OやストレージI/Oが専用ハードウェアにオフロードされ、CPU資源をアプリケーションに集中できるようになっています。

EC2インスタンスへのSSH接続と基本情報確認の実例です。

# connect to ec2 instance using key pair authentication $ ssh -i ~/.ssh/my-keypair.pem ec2-user@203.0.113.25 # check os distribution [ec2-user@ip-10-0-1-45 ~]$ cat /etc/os-release NAME="Amazon Linux" VERSION="2023" ID="amzn" ID_LIKE="fedora" VERSION_ID="2023" # get instance type from metadata endpoint [ec2-user@ip-10-0-1-45 ~]$ curl -s http://169.254.169.254/latest/meta-data/instance-type t3.micro # get region from metadata endpoint [ec2-user@ip-10-0-1-45 ~]$ curl -s http://169.254.169.254/latest/meta-data/placement/region ap-northeast-1

接続直後に表示される ip-10-0-1-45 というホスト名は、VPC内のプライベートIPアドレス(10.0.1.45)を元に自動生成されたものです。EC2では、インスタンスのプライベートIPとパブリックIPが分離して管理されています。

169.254.169.254 はEC2のインスタンスメタデータエンドポイントです。インスタンスタイプ・リージョン・IAMロール情報などをシェルスクリプトから参照できる、EC2固有の仕組みです。オンプレミスサーバーには存在しない概念ですので、必ず覚えておきましょう。

オンプレミスサーバーとEC2の違い

オンプレミスとEC2の違いを理解するには、「責任共有モデル」というAWS独自の考え方を押さえる必要があります。

オンプレミスでは、物理サーバーのハードウェア管理からOSのパッチ適用まで、すべてが自社の責任です。一方EC2では、物理サーバーのハードウェア・ハイパーバイザー・データセンターの電源・空調はAWSが管理し、OS以上のレイヤーはユーザーの責任になります。
比較項目 オンプレミス AWS EC2
サーバー調達 購入・リース(数週間~数ヶ月) 数分で起動
初期費用 数十万~数百万円 ほぼゼロ(従量課金)
物理ハードウェア管理 自社責任 AWS責任
OSのパッチ適用 自社責任 自社責任(ユーザー管理)
ネットワーク設計 物理スイッチ・ルーター VPC(仮想ネットワーク)
スケールアップ ハードウェア追加が必要 インスタンスタイプ変更で即時対応
コスト構造 固定費(CAPEX) 変動費(OPEX)
冗長化・DR構成 物理機器の二重化が必要 マルチAZ設計でソフトウェア的に実現
【重要】「OSより上は自社管理」という点は特に意識してください。EC2インスタンスを起動しても、OSのセキュリティアップデートを怠れば脆弱なサーバーになります。クラウドだからといって、Linuxの管理作業がゼロになるわけではありません。

また、ネットワーク制御の面でも違いがあります。オンプレミスではファイアウォールや物理スイッチのACLで制御しますが、EC2ではLinux側の firewalld/iptablesに加えて、AWSの「セキュリティグループ」(仮想ファイアウォール)も設定が必要です。「Linuxで許可しているのに外から接続できない」という場合は、セキュリティグループ側でポートが閉じていることがほとんどです。

Amazon Linuxとは?EC2で使われるLinuxディストリビューション

amazon linuxはAWSが開発・提供する、EC2向けに最適化されたLinuxディストリビューションです。現在は主に以下の2バージョンが使われています。

Amazon Linux 2(AL2):CentOS 7系をベースに、AWSが独自に最適化したバージョンです。2026年6月30日にサポートが終了します。
Amazon Linux 2023(AL2023):Fedoraをアップストリームとした新世代のamazon linuxです。AL2の後継で、2029年3月まで6年間のサポートが保証されています。
比較項目 Amazon Linux 2 Amazon Linux 2023
アップストリーム CentOS 7系 Fedora系
パッケージ管理 yum dnf
サポート期限 2026年6月30日 2029年3月まで
SELinux 無効(デフォルト) 有効(デフォルト)
Python 2.7 / 3.x(別途インストール) 3.9以上が標準搭載
デフォルトユーザー ec2-user ec2-user
注意:Amazon Linux 2のサポート期限は2026年6月30日です。現時点でAL2を使っているEC2インスタンスは、AL2023への移行計画を早めに立てることを強く推奨します。移行後はSELinuxがデフォルト有効になるため、既存の設定ファイルやサービス起動スクリプトに影響が出る場合があります。

amazon linuxを含むRPMベースのディストリビューションでは、rpmコマンドの使い方を理解しておくとパッケージ管理がスムーズです。

amazon linux 2023のパッケージ管理実例を示します。

# update all packages (run with sudo on amazon linux 2023) [ec2-user@ip-10-0-1-45 ~]$ sudo dnf update -y # install nginx web server [ec2-user@ip-10-0-1-45 ~]$ sudo dnf install nginx -y # check installed version [ec2-user@ip-10-0-1-45 ~]$ nginx -v nginx version: nginx/1.24.0 # enable nginx to start on boot and start service [ec2-user@ip-10-0-1-45 ~]$ sudo systemctl enable --now nginx Created symlink /etc/systemd/system/multi-user.target.wants/nginx.service

EC2でamazon linuxを使う最大のメリットは、AWSのサービスとの親和性の高さです。AWS CLIがプリインストールされており、IAMロールを使ったAWSリソースへのアクセスがすぐに使えます。

amazon linuxをEC2で実際に使いながら学ぶ具体的なステップは、AWSのAmazon Linux入門講座で詳しく解説しています。EC2の起動から初期設定まで一通り学べますので、ぜひあわせてご確認ください。

EC2インスタンスタイプの選び方(初心者向け)

EC2のインスタンスタイプとは、仮想マシンのスペック(CPU・メモリ・ネットワーク帯域)の組み合わせを指します。「t3.micro」「m6i.large」などの名称で表され、命名規則は次の通りです。

ファミリー:用途を示します(t=バースト可能汎用、m=汎用、c=コンピューティング最適化、r=メモリ最適化など)
世代:数字が大きいほど新世代(t3よりt4gの方が新しい)
サイズ:micro < small < medium < large < xlarge < 2xlarge の順に大きくなる

学習目的や開発環境には t3.micro または t3.small が適しています。AWSの無料利用枠(Free Tier)では、t3.microを月750時間まで無料で使えます。本番運用では、Web/APサーバーは m6i.large 以上、DBサーバーは r6i 系(メモリ最適化)を検討するとよいでしょう。

インスタンスタイプはインスタンスを停止した状態で変更できます。最初は小さく始めて必要に応じて拡張する「スモールスタート」戦略が取れる点が、オンプレミスとの大きな違いのひとつです。

AWSを使いこなすために必要なLinuxの基礎知識

EC2はLinuxサーバーの仮想版です。EC2インスタンスに接続した瞬間から、日常の管理作業はすべてLinuxコマンドで行います。AWSを使いこなすために最低限必要なLinuxの知識を整理します。
知識領域 EC2での活用場面
ファイル・ディレクトリ操作 設定ファイルの編集、ログの確認
パッケージ管理(dnf/yum) ソフトウェアのインストール・更新
プロセス管理(ps/top) サービスの稼働確認・負荷確認
ポート確認(ss/lsof) リスニングポートの確認・疎通確認
DNS・ネットワーク確認(dig/ip) 名前解決・ルーティングの確認
systemd(systemctl) サービスの起動・停止・自動起動設定
ファイルシステム・マウント EBSボリュームの追加・マウント
EC2で特に意識したいのは「ファイルシステムとストレージの設計」です。EC2では、OSが動作するルートボリューム(EBS)とは別に、データ用のEBSボリュームを追加して mount コマンドでマウントする設計が一般的です。マウントの実践についてはmountコマンドの使い方を参照してください。

Linux基本コマンドの解説:EC2で毎日使うコマンドをひと通り押さえたい方はこちら
Linuxのポート確認コマンド(ss/lsof):セキュリティグループと合わせてポート確認を行う場面で役立ちます
Linux DNS設定の基本:EC2上でサービスを動かす際の名前解決設定の参考に

EC2でよくあるトラブルと確認ポイント

実務でEC2を運用していると、最初に必ずつまずくのが「接続できない」「サービスに届かない」といったネットワーク系のトラブルです。

SSHに接続できない場合:まずセキュリティグループのインバウンドルールでポート22(またはカスタムポート)が許可されているか確認します。次に、キーペアのファイル権限(600)が正しいかチェックします。
Webサービスに外部から届かない場合:セキュリティグループでポート80/443が開いているか、EC2側で ss -tlnp | grep :80 として実際にリスニング状態か確認します。両方OKなのに届かない場合はVPCのルートテーブルとインターネットゲートウェイの設定を見直します。
パッケージインストールに失敗する場合:amazon linux 2023ではSELinuxが有効なため、インストール後の設定変更がSELinuxによって阻まれることがあります。 getenforce コマンドでEnforcingになっていないか確認し、必要に応じてポリシー設定を行います。
インスタンスが重い・応答が遅い場合:t3系はCPUクレジットが枯渇するとパフォーマンスが低下します。CloudWatchのCPU Creditメトリクスを確認し、クレジット不足であればインスタンスタイプを変更するか、m系(バーストなし)への移行を検討します。

まとめ:AWSでLinuxを学ぶ最初の一歩

この記事で解説したAWSとEC2の要点を整理します。
テーマ ポイント
AWSの特徴 従量課金でインフラを使えるクラウドプラットフォーム。数分でサーバー起動が可能
EC2の仕組み Nitroハイパーバイザーによる仮想サーバー。メタデータエンドポイント(169.254.169.254)が使える
オンプレとの最大の違い 責任共有モデル。物理ハード管理はAWS、OS以上の管理はユーザー責任
amazon linux EC2向け最適化ディストリビューション。現在はAL2023(dnf管理、SELinux有効)が主流
必要なLinux知識 ファイル操作・パッケージ管理・systemd・ポート確認・マウントが基礎
AWSはLinuxの知識を前提として設計されています。コマンドラインで自在にサーバーを操作できるスキルがあれば、EC2の運用はオンプレミスと大きく変わりません。まずLinuxの基礎を固め、その延長線上にAWSを位置づける学習順序が最も効率的です。

現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、AWSのAmazon Linux入門講座で実践的な手順をご確認いただけます。

AWSでLinuxサーバーを効率よく学ぶなら、AWSのAmazon Linux入門講座をご覧ください。

無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は30秒、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

姓・名・メールの3つだけ/30秒/解除は3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録
宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として20年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。