2017年01月30日

CentOS導入記その3:ApatchのインストールでWebサーバー構築

次にWebサーバーを構築します。

1.Apatchのインストール
  ・CentOSの端末アプリから、
      # yum install -y httpd
      # yum -y install php php-mbstring php-pear 
   のコマンドを打って、インストールします。これでPHPとともにApatchも同時にインストールできました。

2.Apatchの設定
・/etc/httpd/conf/httpd.confについて以下のポイントを変更しました。

    ServerName XXXXXX:80 ← #を削除してサーバー名を指定



#
# Possible values for the Options directive are "None", "All",
# or any combination of:
# Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#options
# for more information.
#
Options Includes ExecCGI FollowSymLinks ← Indexesを削除してファイルの一覧
表示を防ぎ、Includes ExecCGIを追記してCGI,SSIを許可

#
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
#
AllowOverride All ← Noneを Allに変えて、.htaccessの許可

#
# The following directives define some format nicknames for use with
# a CustomLog directive (see below).
#
LogFormat "%h %l %u %t "%!414r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined
 ← 長すぎるURI(414エラー)はログに記録しない

#
# If you prefer a logfile with access, agent, and referer information
# (Combined Logfile Format) you can use the following directive.
#

SetEnvIf Request_URI "default.ida" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Request_URI "cmd.exe" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Request_URI "root.exe" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Request_URI "Admin.dll" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Request_URI "NULL.IDA" no_log ← wormからのアクセスをログに記録せず
SetEnvIf Remote_Addr 192.168.1 no_log ← 内部からのアクセスをログに記録せず
SetEnvIf Remote_Addr 127.0.0.1 no_log ← 自ホストからのアクセスをログに記録せず
CustomLog logs/access_log combined env=!no_log ← 上記以外のアクセスをログに記録
する

AddHandler cgi-script .cgi .pl ← 行頭の#を削除して有効にし、CGIスクリプトに.pl
を追加

#AddDefaultCharset UTF-8 ← 行頭に#を付けて、無効にする

ServerTokens Prod ← 最終行に追記。OSをProdに変えてエラーページ等でOS名を表示
しないようにする

KeepAlive On ← 最終行に追記。OffをOnに変えて接続が切れていないか定期的にチェッ
クする

3.Webサーバーの起動
 ・端末からこれをたたいて起動です。
 # systemctl start httpd ← httpd起動
 # systemctl enable httpd ← httpd自動起動設定

 ・HTMLファイルの置き場所に、過去作ったindex.html他をコピペで投入しました。
  /var/www/html

4.SELinuxの無効化
 ・/etc/seliux/configを編集し、SELINUX=disabledとしました。再起動後、無効になりました。

5.firewallの設定
 ・端末からこれをたたいて、サービス種類httpを開放します。
  # firewall-cmd --permanent --add-service=http
 ・これをたたいて設定を有効化します。
  # firewall-cmd --reload

5.ローカルIPアドレスでのWebサーバー確認
 ・同一LAN内のPC上ブラウザから"ローカルIPアドレス:80"で確認すると、Webページが無事表示されました。

6.外部からのWebサーバー確認
 ・そのPC上ブラウザから、今度は"ダイナミックDNSで取得したサーバー名:80"または”グローバルIPアドレス:80”で確認すると、「応答時間が長すぎます」というエラーメッセージで終わります。一瞬、一度だけ表示されたような気がするのですが、その後、またこのエラーメッセージに戻りました。現在、原因を調査中。

→なんと同一LANセグメントからのアクセスで発生していた事象でした。スマートフォンで別個のネットワークから"ダイナミックDNSで取得したサーバー名:80"にアクセスすると、ちゃんとWebコンテンツが表示されました。いいんだけど、なぜだ。原因はどっかの設定ぽい。

→いろいろ調べてみると、今回ポートマッピング機能でNATエントリ設定しているルータが、外部からのアクセスはNATで内部のWebサーバーに流してくれるが、内部からのアクセスはNATで流してくれないという仕様のものだったと判明。外部ネットワークからのアクセスならOKなので、この場合は当然の事象であり、問題はなかった。内部ネットワークからはプライベートIPアドレスで入れば良いだけだった。
posted by kuwata at 15:23 | Comment(0) | TrackBack(0) | トラブル対応 | このブログの読者になる | 更新情報をチェックする

CentOS導入記その2:CentOSのインストール

次にデュアルブート環境でCentOSをインストールします。

1.CentOSインストールメディアの作成
  CentOSのISOファイルをダウンロード(http://mirror.fairway.ne.jp/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso
  これをImgburnでDVDに焼き、インストールメディアを作成しました。

2.ターゲットPCのBIOS設定ーBOOT順序変更
  UEFIだったので、セキュアブートをDisabledにし、かつCSMをEnableにすることで、レガシーBIOS環境に戻してDVDからのブートが優先されるようにしました。

3.空き領域としたパーティションにCentOSインストール
  インストールDVDから起動して、日本語選択、インストール先のパーティション設定、日付と時刻設定、ソフトウェアの選択(今回はGNOME Desktopでアドオンはすべて選択)、ネットワークとホスト名設定は手動でIPアドレスやネットマスク、ゲートウェイ、DNSサーバーのアドレスを指定しました。ホスト名設定は忘れていたので、あとでやってみます。あとはルートパスワードの設定など。

4.Webminのインストール
  Webブラウザから管理できるようWebminをインストールしました。アクセス可能なのは自サーバーおよびメインマシンだけに限定しました。
 # yum -y install http://download.webmin.com/download/yum/webmin-1.740-1.noarch.rpm
でインストールした後、
 /etc//webmin/miniserv.conf
を編集し、最終行に
 allow= x.x.x.x o.o.o.o
とアクセスを許可するローカルIPアドレスを記述しました。
その後、(ローカルIPアドレス:10000)でブラウザからアクセスし、ログインしてから、webminの言語とテーマの変更で、Japanese(JA_JP.UTF-8)を選択しました。
posted by kuwata at 10:01 | Comment(0) | TrackBack(0) | トラブル対応 | このブログの読者になる | 更新情報をチェックする

2017年01月29日

CentOS導入記その1:運用環境づくりスタート!

Windows8.1を導入しているCorei7マシン(64bit、8GBメモリー)に、CentOSをインストールして、デュアルブート体制で運用できるようにするプロジェクトの開始です。

まずは第一段階として、ネットワーク環境の整備を行いました。

1.プライベートIPアドレスの固定化
  ・当該マシンのIPアドレスを固定にします。具体的には、有線接続環境なので、Win8.1上で設定。
   ネットワークと共有センター − イーサネット − プロパティ −インターネットプロトコルヴァージョン4
   これをダブルクリックして、固定のプライベートIPアドレス(192.168.0.x)とサブネットマスク(255.255.255.0)、そしてデフォルトゲートウェイや優先DNSサーバーを設定しました。
   その後、念のために再起動をしました。

2.ポート(ルーター)の開放
  ・次にポートの開放を行います。
    HTTP:80  SMTP:25  POP3:110  IMAP4:143 FTP:20〜21  DNS:53(TCP/UDP)
    HTTPS:443  SMTPS:465  POP3S:995  IMAP4S:993 Submission:587
  ・ルータのポートマッピング設定−NATエントリにおいて、上記のポート番号を開放していきました。

3.ドメインの取得
  ・無料のドメインを取得します。→MyDNS.jp
・ダイナミックDNSでのサーバー名を取得しました。

4.DiCEの設定
  ・DiCEをインストールし、動的にIPアドレスとダイナミックDNSを紐づけするように設定しました。

posted by kuwata at 13:59 | Comment(0) | TrackBack(0) | トラブル対応 | このブログの読者になる | 更新情報をチェックする