プロが教える店舗&オフィスのセキュリティ対策術

CentOS5.7(64bit)で自宅サーバーを構築しており、
最近までなんの問題もなかったのですが、
つい先日、サーバー用のマシンが固まっていたので強制終了させました。
その後再起動したら、他のPCからapache、OpenSSH、vsftpd等に接続できない状態になってしまいました。

以下に試した事等を書かせてもらいます。
・同一LAN上の複数のWindowsマシンや携帯電話で接続を試みましたが、無理でした。
・他のマシンからのpingや、サーバーから他PCへのpingは通ります。
・インターネット上のファイルをサーバーがダウンロードする事はできます。
・SELinuxは無効。
・iptablesを無効に。
・hosts.allow&hosts.denyの確認。
・ルータの再起動。
・内蔵NICのドライバをアップデート。

上記のことを試してみましたが変わりませんでした。
他に考えられる要因や、試してみる事等がありましたら、お教えして頂きたく思っております。
よろしくお願いします。

A 回答 (9件)

No1です。


>待ちうけになってないポートに接続しようとした場合は、
>telnet: connect to address 192.168.1.11: Connection refused
>telnet: Unable to connect to remote host: Connection refused

これは正常ですが、

>ちなみにiptablesが無効の状態で
>同一LAN上の他サーバーからtelnetで接続した場合、
>Connection closed by foreign host.
>と接続は出来たけどすぐ切断されているようです。

はおかしいですね。入力待ちになるはず。
本当にクラックで、別のプロセスがポートを取っちゃったのかも。

lsof -i で、ポートをListenしているプロセス名とプロセス番号などがわかります。

COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
httpd 1667 root 3u IPv6 4240 TCP *:http (LISTEN)

念のため、プロセス名だけでなく、プロセス番号(例:1667)で見て、
cat /proc/1667/cmdline
で、パス名を確認してください。

lsof はインストールされてないかもしれませんので、無ければインストールですが、現状だと無理かなあ。
    • good
    • 1
この回答へのお礼

回答ありがとうございます。

No1さんの書き込みを見る前に、
同じバージョンのCentOSのnetinstallから、
「既存インストールのアップグレード」を試してみた所あっさり直ってしまいました。

後学のために、原因として考えられる物や特定方法など思いつきましたら、
お教えいただけると嬉しいです。

お礼日時:2011/10/10 18:17

「ifconfigの結果」の結果が無いのですが、サーバ自体は192.168.1.11でしょうか?



ところで、サーバ以外に同じIPアドレス192.168.1.11が振られているという可能性は無いですか?
なんか今までの現象見ていると、IPアドレスが重複しているっぽいような気がしないでもないですが。
でも、固定で振ってない?
DHCP?
前回の設定されたものって、他にifcfg-eth1とかあったりしませんか?
サーバの構成が今ひとつピンと来ません。

情報少ないっすね。
もうちょっと情報出しませんか?
    • good
    • 0
この回答へのお礼

回答ありがとうございます。

ifconfigやIPの設定に関してはきちんと確認してみましたが、
意味はありませんでした。

言葉足らずな所があった事に関して謝罪させて頂きます。
申し訳ありませんでした。

下のお礼にも書かせていただきましたが、
同じバージョンのCentOSのnetinstallから、
「既存インストールのアップグレード」を試してみた所あっさり直ってしまいました。

恥ずかしながら、「既存インストールのアップグレード」がどういう物なのかよく分かりませんが、
kernelを上書きしていたようだったので、kernelのバージョンを確認した所、
2.6.18-274.3.1.el5から2.6.18-274.el5にバージョンが下がっていました。
(これが原因なのかは分かりませんが。)
yum.logを見てみるとkernelのアップデートが最後にされてから
1ヶ月近く経過してはいるんですが(サーバーが機能しなくなったのはつい最近です)
再起動していなかったため今回のトラブルに繋がったのかなぁ・・
というか、そうであれば解決なので嬉しいななんて思ったりしています。

とりあえずは、yumで自動的にkernelがインストールされないようにしてはみました。

お礼日時:2011/10/10 19:36

No1です。


>Connection reset by peer

ということは、ポートはListenされているけど、ファイアーウォールなどで蹴られた場合とか。

>・iptablesを無効に。
と書かれてますが、それはどういう手順で行って、その手順が成功したかどうかをどうやって確認しましたか?
service iptables stop と service iptables status ?

他の方が書かれてますが、/var/log/messages は見てますか?
    • good
    • 0
この回答へのお礼

今気付いたのですが、他マシンから、iptablesで拒否される事をしてみると、
きちんとIPTABLESのログが残っていましたので、
そこまでは通過しているようです。

ちなみにiptablesが無効の状態で
同一LAN上の他サーバーからtelnetで接続した場合、

# telnet 192.168.1.11 (ssh,http,ftpのポート)
Trying 192.168.1.11...
Connected to 192.168.1.11 (192.168.1.11).
Escape character is '^]'.
Connection closed by foreign host.

と接続は出来たけどすぐ切断されているようです。
(普段利用しているWindowsマシンからブラウザやFTP、SSHのクライアントソフトでアクセスしてもすぐ切断されてる感じです。)
待ちうけになってないポートに接続しようとした場合は、

# telnet 192.168.1.11 適当なポート
Trying 192.168.1.11...
telnet: connect to address 192.168.1.11: Connection refused
telnet: Unable to connect to remote host: Connection refused

となります。

iptablesはservice iptables stopで停止させ、
エラーや警告等を出さずに終了したので問題ないと判断していました。

/var/log/messagesは当日から一生懸命1行1行読んでますが
それらしいエラーや警告が無いので困ってます。

お礼日時:2011/10/10 14:32

ifconfigの結果


/etc/sysconfig/network-scripts/ifcfg-eth0の中身
/etc/sysconfig/networkの中身
/etc/resolv.confの中身
/etc/hostsの中身

をそれぞれ提示してもらいましょうか。
だいたいこういうのは、ネットワーク周りのトラブルが影響しているものです。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROT=dhcp
HWADDR=12:34:56:78:AB:CD
PEERDNS=yes
IPV6INT=no
ONBOOT=yes

/etc/sysconfig/network
NETWORKING=yes
NETWORKING_IPV6=no
HOSTNAME=aa.bb.net
GATEWAY=192.168.1.1

/etc/resolv.conf
namesaver 192.168.1.1

/etc/hosts
127.0.0.1 aa.bb.net aa localhost.localdomain localhost
::1 localhost6.localdomain6 localhost6

色々設定を変えたりしてみましたが結果は変わらず、
今現在はこうなっています。

お礼日時:2011/10/10 13:34

>ログの確認をしてみましたが、


>接続できないためログが残ってないようです。

アクセスログではなくてhttpd, sshd, vsftpdのプロセスが
起動できているのかのログですよ。
自動起動の設定をしているから起動されているはず、
ではなくて
本当に起動されているのかどうかを確認してみてください。
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
プロセスの起動に関してましては何の問題も無いようです。
もう1台サーバーがあるので、
そちらのログとの比較をしたり、調べたりもしてみましたが、
変なログは出ていません。

お礼日時:2011/10/10 13:26

No.1のかたの確認に加えて、そもそもこれらのdaemonは再起動後に自動で起動するような設定になっているのでしょうか?


apache(httpd)などが起動していないだけでは?
確認事項にプロセスに関する確認が全く行われていないのが気になりますが

chkconfig --list httpd
を実行したらどうなりますか?
http://tech.hitsug.net/?CentOS%2FApache%2F%E8%B5 …
    • good
    • 0
この回答へのお礼

回答ありがとうございます。
全て自動で起動するようにしております。
何度もrestartしてみたりしましたが、意味はありませんでした。

chkconfigの結果は上記のサイトと同じく、
[root@linux ~]# chkconfig --list httpd
httpd 0:off 1:off 2:on 3:on 4:on 5:on 6:off
と表示されます。

お礼日時:2011/10/10 00:05

httpd, sshd, vsftpdのログの確認はされましたか?

    • good
    • 0
この回答へのお礼

回答ありがとうございます。
ログの確認をしてみましたが、
接続できないためログが残ってないようです。
iptablesのログも残っていません。

お礼日時:2011/10/10 00:05

クラックされたんじゃないのかね。

    • good
    • 0

サーバーローカルで、apache、OpenSSH、vsftpd接続が出来るのかどうか書いてませんよ。

    • good
    • 0
この回答へのお礼

回答ありがとうございます。
telnetで接続を試みましたが接続できない状態でした。

#telnet 127.0.0.1 各ポート
telnet: connect to address 127.0.0.1: Connection reset by peer
telnet: Unable to connect to remote host: Connection reset by peer

全てのポートにおいて上記のように表示されます。
またnetstatでポートを確認すると各ポートLISTENになっています。

お礼日時:2011/10/09 23:47

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!