CentOSで自宅サーバー構築
[ ]

サイト公開日:2005.12.20
最終更新日: 2017.12.05

■はじめに

LinuxディストリビューションのひとつであるCentOS(The Community ENTerprise Operating System)で自宅サーバーを構築したときの記録です。
CentOSは企業向けLinuxで最もシェアが高い「Red Hat Enterprise Linux(RHEL)」を基に作られている“RHELクローン”。
当サイトはCentOSで構築した自宅Webサーバーから発信しており、 50 日間と 1 時間 05 分 連続稼動しています。


■前提条件

  • サーバーマシンはWindowsがインストールされていたマシン(x86機)を使用(当サイトはFUJITSU PRIMERGY TX100 S1を使用)
    【FUJITSU PRIMERGY TX100 S1の後継機種】
  • ルーター経由接続によるインターネット常時接続環境である(当サイトはIIJmioひかりによるインターネット常時接続環境)
  • 固定または非固定のグローバルIPアドレス環境である(当サイトはGMOとくとくBBの固定グローバルIPアドレス環境(逆引きも可能))
    ※メールサーバーを構築する場合は逆引き可能な固定グローバルIPアドレス環境が望ましい(非固定グローバルIPアドレスや、固定グローバルIPアドレスでも逆引きしたホスト名とメール送信元ホスト名が異なる場合にメール受信を拒否するメールサーバーがまれに存在するため)
  • OSのインストール時を除き、サーバーの操作はWindowsからコマンド操作で行なう

■コンテンツ

※ホスト名やドメイン名、IPアドレスは各自の環境に置き換えること
※各目次に表記してあるバージョンは、当サイトで確認をとったCentOSのバージョンを示しており、そのバージョンでないとできないということではない
※各ページのソフトのバージョンは、当サイトで確認をとった時点のものであり、最新版の有無は適宜確認してください
  1. スポンサーリンク
  2. CentOSインストール
    1. CentOS7インストール CentOS7固有
    2. CentOS6インストール CentOS6固有

  3. クライアント(Windows)からLinuxサーバーをリモート操作する
    1. WindowsからSSHサーバーへリモート接続(TeraTermパスワード方式ログイン編)

    −−これ以降はクライアント(Windows)からリモート接続で行う−−


  4. CentOS初期設定
    1. CentOS7初期設定 CentOS7固有
    2. CentOS6初期設定 CentOS6固有

  5. 仮想マシン構築
    1. 仮想マシン構築(KVM) CentOS7,6
    2. ゲスト作成(CentOS7編) CentOS7,6
    3. ゲスト作成(CentOS6編) CentOS7,6
    4. ゲスト作成(Windows7編) CentOS6
    5. ゲスト環境変更 CentOS6
    6. ゲスト複製 CentOS7,6

  6. サーバー公開前のセキュリティ強化
    1. ファイル改竄検知システム導入(Tripwire) CentOS7,6
    2. rootkit検知ツール導入(chkrootkit) CentOS7,6
    3. アンチウイルスソフト導入(Clam AntiVirus) CentOS7
    4. アンチウイルスソフト導入(Clam AntiVirus) CentOS6
    5. ファイアウォール構築(iptables) CentOS7,6

  7. システム時刻を自動的に合わせる
    1. NTPサーバー構築(chrony) CentOS7
    2. NTPサーバー構築(ntpd) CentOS6

  8. クライアント(Windows)からLinuxサーバーをリモート操作する
    1. SSHサーバー構築(OpenSSH) CentOS6
    2. WindowsからSSHサーバーへリモート接続(TeraTerm鍵方式ログイン編)

  9. Linuxをルーターにする
    1. Linuxルーター構築(rp-pppoe+iptables) CentOS5

  10. LAN内クライアントマシンへIPアドレスを自動で割当てる
    1. DHCPサーバー構築(dhcp) CentOS7,6

  11. 外部からドメイン名でサーバーにアクセスできるようにする
    1. ドメイン名取得(独自ドメイン編)※有料
    2. ドメイン名取得(ieServer.Net編)※無料

  12. 内部からドメイン名でサーバーにアクセスできるようにする
    1. DNSサーバー構築(BIND) CentOS7,6

  13. Linuxルーターでフレッツ・スクウェアへ接続できるようにする
    1. フレッツ・スクウェア接続設定 CentOS5

  14. Webサーバーを公開する
    1. Webサーバー構築(Apache) CentOS7,6
    2. Webサーバー間通信内容暗号化(Apache+mod_SSL+Certbot) CentOS7,6
    3. Webサーバー間通信内容暗号化(Apache+mod_SSL) CentOS7,6※サーバー証明書は自作
    4. ユーザーディレクトリ作成(/~ユーザー名/) CentOS7,6
    5. Webページパスワード制限(htpasswd) CentOS7,6
    6. クライアント証明書認証(Apache+OpenSSL) CentOS7
    7. バーチャルホスト設定 CentOS7,6
    8. Webサーバー間通信内容圧縮(mod_deflate) CentOS7,6

  15. Windowsで作成したWebページをWebサーバーへアップロードする
    1. WindowsからSSHサーバーへファイル転送(WinSCP)

  16. Webページへのアクセス統計をWebブラウザからみれるようにする
    1. Apacheアクセスログ解析(AWStats) CentOS7
    2. Apacheアクセスログ解析(AWStats) CentOS6
    3. バーチャルホスト用アクセスログ解析(AWStats) CentOS7,6
    4. リファラスパム対策 CentOS7,6

  17. 自宅サーバーのWebサイト内をGoogleのように検索できるようにする
    1. サイト内検索システム構築(Namazu) CentOS7,6

  18. 独自のメールアドレスをつくる
    1. メールサーバー構築(Postfix+Dovecot)CentOS7,6
    2. メールサーバー間通信内容暗号化(Postfix+Dovecot+OpenSSL+Certbot)CentOS7,6
    3. メールサーバー間通信内容暗号化(Postfix+Dovecot+OpenSSL)CentOS7,6※サーバー証明書は自作
    4. メールサーバーでスパムメール送信元接続拒否(Postfix+milter-manager+milter-greylist)CentOS7
    5. メールサーバーでウイルスチェック(Postfix+Clam AntiVirus+milter-manager+clamav-milter)CentOS7
    6. メールサーバーでスパムチェック(Postfix+SpamAssassin+milter-manager+spamass-milter)CentOS7
    7. メールサーバーで添付ファイル自動暗号化(Postfix+SaMMA)CentOS7,6
    8. バーチャルドメイン設定CentOS7,6
    9. メール自動返信機能導入(Vacation)CentOS7,6
    10. メーリングリストサーバー構築(Postfix+Mailman)
    11. Postfixログ解析ツール導入(pflogsumm)

  19. HotmailやYahoo!メールのようにWebブラウザ上でメールできるようにする
    1. Webmailシステム構築(RoundCube Webmail) CentOS7,6

  20. メールサーバー共通
    1. OP25B(Outbound Port 25 Blocking)対策 CentOS7,6
    2. 複数ドメイン宛メールの集約(Fetchmail) CentOS7,6

  21. メールマガジンを発行できるようにする
    1. メールマガジン配信システム構築(acmailer) CentOS7

  22. 一般ユーザーにWebブラウザ上での各種設定機能を提供する
    1. Usermin導入(Usermin) CentOS7,6
    2. UserminでVacation設定(Usermin::Vacation) CentOS7,6

  23. スポンサーリンク
  24. データベースシステムを作る
    1. データベースサーバー構築(MariaDB) CentOS7
    2. データベースサーバー構築(MySQL) CentOS6
    3. MySQLデータベース自動バックアップ運用(mysqlhotcopy) CentOS7,6
    4. MySQL用GUI設定ツール導入(phpMyAdmin) CentOS7,6

  25. LinuxサーバーをWindowsのファイルサーバーにする
    1. Windowsファイルサーバー構築(Samba) CentOS7,6
    2. Samba用GUI設定ツール導入(SWAT)

  26. LinuxサーバーでWindows、Linuxのユーザー情報を一元管理する
    1. Active Directoryドメインコントローラー構築(Samba) CentOS7
    2. Active Directoryメンバーサーバー追加(Winbind) CentOS7,6
    3. Active Directoryドメインコントローラー追加 CentOS7

  27. iPhoneからサーバー上の音楽ファイルを再生できるようにする
    1. Subsonic導入(Subsonic) CentOS7,6

  28. LinuxサーバーをDLNA対応家電のデジタルメディアサーバーにする
    1. DLNAサーバー構築(ReadyMedia(旧MiniDLNA))CentOS7
    2. DLNAサーバー構築(MediaTomb)CentOS6

  29. Linuxサーバーを内部/外部共用のWindowsのファイルサーバーにする
    1. Webフォルダサーバー構築(WebDAV)

  30. Weblog(ブログ)サイトを作る
    1. ブログサイト構築(WordPress) CentOS7,6

  31. SNS(ソーシャルネットワーキングサイト)を作る
    1. SNS構築(OpenPNE) CentOS7,6

  32. TwitterのようなSNSサービスを自宅サーバーで行えるようにする
    1. Mastodonインスタンス構築(Mastodon) CentOS7

  33. コミュニティサイトを作る
    1. コミュニティサイト構築(XOOPS Cube)CentOS7

  34. Javaで動的なWebページを作る
    1. Javaアプリケーションサーバー構築(Tomcat8) CentOS7
    2. Javaアプリケーションサーバー構築(Tomcat6) CentOS6

  35. バージョン管理システムを構築する
    1. バージョン管理システム構築(Subversion)CentOS5

  36. 動画を配信する
    1. 動画配信サーバー構築(nginx+nginx-rtmp-module)CentOS7
    2. ライブ配信録画CentOS7
    3. 動画視聴認証設定CentOS7

  37. TV録画予約視聴システムを構築する
    1. TV録画予約視聴サーバー構築(epgrec UNA)CentOS7
    2. TV録画予約視聴サーバーのスマホ対応(EPGRemote)CentOS7

  38. 監視カメラシステムを構築する
    1. 監視カメラシステム構築(Motion)CentOS7,6

  39. サーバーの状態をブラウザから監視する(Nagios編)
    1. 統合監視システム構築(Nagios) CentOS7
    2. リモートホストサービス監視(Nagios+nrpe) CentOS7
    3. 性能統計グラフ追加(Nagios+PNP4Nagios) CentOS7

  40. サーバーの状態をブラウザから監視する(RRDtool編)
    1. サーバー監視システム構築(RRDtool+Cacti) CentOS5
    2. Apacheアクセス統計監視グラフ追加(apachestats) CentOS5
    3. BINDアクセス統計監視グラフ追加(bind9-snmp) CentOS5

  41. Webアクセス中継サーバーを導入する
    1. プロキシサーバー構築(Squid)CentOS7,6
    2. プロキシサーバーでウイルスチェック(Squid+SquidClamAV+ClamAV)CentOS5
    3. プロキシサーバーでコンテンツフィルタリング(squidGuard)CentOS7
    4. Squidログ解析(Sarg)CentOS7

  42. サーバー公開後のセキュリティ強化
    1. 不正アクセス検知システム導入(Snort+BASE+Oinkmaster) CentOS5
    2. ログ監視ツール導入(SWATCH) CentOS7,6
    3. 脆弱性スキャナ導入(Nessus) CentOS7

  43. サーバーのファイルを自動的にバックアップする
    1. 自動バックアップ運用(tar+GnuPG) CentOS7,6
    2. 遠隔地バックアップ(gdrive) CentOS7
    3. リアルタイムミラーリングツール導入(lsyncd+rsyncd) CentOS5

  44. 外部から安全にLANへ接続できるようにする
    1. VPNサーバー構築(SoftEther VPN Server) CentOS7,6
    2. Windows上にVNCサーバー導入(UltraVNC)

  45. ハードディスク故障に備える
    1. 非RAIDシステムのRAID化 CentOS5
    2. RAID構成ハードディスク交換 CentOS5

  46. 論理ボリューム操作
    1. ハードディスク追加 CentOS5
    2. ハードディスク削除 CentOS5
    3. 論理ボリューム追加 CentOS5
    4. 論理ボリューム削除 CentOS5
    5. 論理ボリュームサイズ拡大 CentOS5
    6. 論理ボリュームサイズ縮小 CentOS5

  47. クラスタシステムを構築する
    1. HAクラスタシステム構築(Heartbeat+DRBD+Apache) CentOS5
    2. HAクラスタシステム構築(Heartbeat+DRBD+Apache+Tomcat) CentOS5

  48. スポンサーリンク


■関連コンテンツ




▲このページのトップへ戻る

Copyright© 2005-2017 fallenangels, All rights reserved.
ご自由にリンクしてください(連絡は不要です)
本ページへのご意見・ご要望、誤字・脱字・リンク切れ等のご連絡はこちらからお願いします