はじめての自宅サーバ構築 - Fedora/CentOS -
Last Update 2018/05/30
[ 更新履歴 ] [ サイト マップ ] [ 質問掲示板 ] [ 雑談掲示板 ] [ リンク ]
トップ >> 質問掲示板

 このスレッドはクローズされています。記事の閲覧のみとなります。

 httpdのサービスが機能しない
日時: 2010/11/02 02:52
名前: フェニックス

1.不明点・障害内容:httpdのサービスが機能しない
2.ログの有無   :
  (有:その内容) :
3.Distribution  :fedora
      Version :11
4.Service Name  :httpd
      Version :
5.ネットワーク構成:

初めまして、私は研究室単位でサーバを共有しており、その係を引き継いだのですが、攻撃にあい、サーバーが落ちました。そこで、fedora11で作るサーバーに関する書籍を見てインターネットへの接続はできたのですが、Webページの公開ができません。
具体的には、本のとおりにyumでインストールして、geditで設定をし、サービス設定のhttpdを有効にして開始しようとすると、このサービスは機能してません、と表示されます。
どうか、ご指導のほどお願いします。
メンテ

Page:  [1] [2] [3] [4]

■ コンテンツ関連情報

 Re: httpdのサービスが機能しない ( No.1 )
日時: 2010/10/21 09:10
名前: 管理者

> 具体的には、本のとおりにyumでインストールして、geditで設定をし、サービス設定のhttpdを有効にして開始しようとすると、このサービスは機能してません、と表示されます。

サービス開始時のログ「/var/log/httpd/error_log」には、どの様なメッセージが出力されていますか?

この他、SELinuxが有効になっていたりしませんか?
(「getenforce」コマンドを実行した時に「Enforcing」と出力されていませんか?)
メンテ
 Re: httpdのサービスが機能しない ( No.2 )
日時: 2010/10/21 15:43
名前: フェニックス

申し訳ございません、許可がありませんと言われて、ログの見方がわからないのですが
/etc/rc.d/init.d/httpd start
とコマンドを入れると
(98)Address already in use: make_sock: could not bind to address [::]:80
                                                           [  OK  ]
とでます。
また、
getenforce
と入れると、ご指摘のとおり、
Enforcing
と出力されました。
度々申し訳ございませんが、ご指導の程お願い致します。
メンテ
 Re: httpdのサービスが機能しない ( No.3 )
日時: 2010/10/21 16:28
名前: 管理者

> (98)Address already in use: make_sock: could not bind to address [::]:80

原因としては、何らかのプロセスが httpd で使用するポート「80」を使っている為、サービスが起動できない理由です。


1.80ポートを使用しているプロセス番号を調べます。
   実行例)
   # fuser -n tcp 80
   80/tcp:               1859  2990  3286  3510

   実行例では、「1859」「2990」「3286」「3510」の4つが使用しています。

2.プロセス番号からサービス(プログラム)を調べます。
   実行例) 上記「1」で出力されたプロセス番号「1859」を調べる場合
   # ps aux | grep 1859 | grep -v grep
   root      1859  0.0  0.4 261608 17832 ?        Ss   Sep28   0:20 /usr/sbin/httpd

   出力結果の一番右が、サービス(プログラム)になります。

3.80ポートを使用しているプロセスを強制終了させます。
   実行例) 上記「1」で出力されたプロセス番号「1859」を強制終了
   # kill -9 1859


「1」で出力されたプロセス番号を、「2」「3」で実施して下さい。
本来は「1」-->「3」で問題ないのですが、何がポートを使用しているのか知りたい為「2」を明記しました。
理由は、上記は根本的な解決になっていない為です。

原因を調べる為、「2」の実行結果を開示して下さい。


> getenforce
> と入れると、ご指摘のとおり、
> Enforcing
> と出力されました。


SELinux は無効にしておいた方が無難です。
(知識があれば別ですが・・・。因みに当方はSELinuxの知識は無いので質問には答えられません。)

SELinux の無効化は以下をご参考下さい。

  参照:http://kajuhome.com/security_trouble.shtml#n02-02
メンテ
 Re: httpdのサービスが機能しない ( No.4 )
日時: 2010/10/21 17:07
名前: stranger
参照: http://ja.528p.com/

どのような攻撃をどこから受けて、どこが悪くてサーバが落ちたのか検証されましたか
サポートが切れたfedora11でサーバを構築しても、セキュリティのupdateはfedora側ではしてくれません
公共機関としてのモラルに係わることなので、あえて苦言をいいました

>/etc/rc.d/init.d/httpd start
>とコマンドを入れると
>(98)Address already in use: make_sock: could not bind to address [::]:80


すでにhttpdが起動していてさらにstartを実行したのでは?
[::]:80はipv6のアドレスと思われる
ipv6の設定はされていないでしょうから bindできないと思います

# ps aux | grep httpd
を実行してみる

rootで実行されているのが親プロセス
apache(たぶん)で実行されているのが子プロセス
になります

再度
# /etc/rc.d/init.d/httpd stop
を実行してから

# ps aux | grep httpd
を実行してみる
grep httpdの行以外に表示されないならapacheは停止しています

それでも残っているならkillコマンドを発行します
killコマンドを発行するのはrootで実行している親プロセスだけで良いです

親プロセス子プロセスの関係
親プロセスでリクエストを受けて子プロセスを立ち上げ
実際の通信を子プロセスに受け持たせます

実際にapacheが起動しているならあとはselinuxの関連でしょう
メンテ
 Re: httpdのサービスが機能しない ( No.5 )
日時: 2010/10/21 17:49
名前: フェニックス

攻撃を受けたのかもしれないという仮定を引き継いだ方から聞いただけでしかない状態で、検証の術も分からないのです。至らなくて申し訳ございません。
 # fuser -n tcp 80
のコマンドを打ち込んだところ、何も出ず、#が出てしまい、
# ps aux | grep httpd
を打ち込むと、
root      2676  0.0  0.0   5280   804 pts/0    R+   17:43   0:00 grep httpd
とroot ~ grep httpdまでしか出ず、apacheは実行されていないんでしょうか。startは[OK]とでるのですが。また
# /etc/rc.d/init.d/httpd stop
の結果は[失敗]となってしまいます。
メンテ

Page:  [1] [2] [3] [4]

■ その他

ページ先頭へ

Copyright(©)2004-2018 First home server construction. All Right Reserved.