このスレッドはクローズされています。記事の閲覧のみとなります。
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を有効にして開始しようとすると、このサービスは機能してません、と表示されます。 どうか、ご指導のほどお願いします。
|
■ コンテンツ関連情報
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 の結果は[失敗]となってしまいます。
|
■ その他