ネットワーク容量を増やすために一部のLinuxサーバーにアクセスできました。今、単に実行してtop
何が実行されているかを確認するよりも、サーバーを確認する方法がもっとあるかどうか疑問に思います。
SSHを介してログインしたときに良い概要を得るには、どのサービスとデーモンが実行されているのか、そして何をしているのかを簡単に説明するための便利な方法はありますか?
答え1
より多くのグラフィック出力を得るには、htop
代わりに使用することを検討できます。top
その後、lsof -p <pid>
ネットワークファイルを含むサービスで開いているファイルを確認できます。
lsof
さまざまなオプションがありますので、お問い合わせくださいman 8 lsof
。
その後、このツールを使用して現在のネットワーク接続を表示できます。iptop
ツールは、サーバーが接続されているリモートコンピュータの識別されたIPアドレス、またはそのドメイン名の表示など、さまざまなオプションを提供します。
monitorix
システムの負荷と使用平均、メモリ割り当て、ディスクドライブの状態、システムサービス、ネットワークポート、およびメール統計を表示します。
安全上の問題が気になる場合は、スリカタエンジン「リアルタイム侵入検知(IDS)、インライン侵入防止(IPS)、ネットワークセキュリティ監視(NSM)、およびオフラインPCAP処理が可能です。」無料でオープンソースです。
コンピュータのほとんどすべてを監視する完全なツールの場合は、次のものがあります。集めるは、CPU使用率、メモリ、ネットワーク、inode、プロセス、nfs、tcp、ソケットなどのLinuxシステムリソースに関する情報を監視および収集するための完全なツールです。フランス語では、これらのツールのために「迷路システム」に翻訳される「usine à gaz」という表現を使用していますが、非常に効果的なようです。
答え2
サーバーがどのサービスを提供しているかを知りたい場合は、すべての受信TCP / UDPポートを確認する必要があります。
netstat -ltu
lはリスニングを意味します。
t は tcp を意味します。
u は udp を意味します。
また、起動時にどのサービスが起動するかを確認してください。
service --status-all
そしてsystemdを使う
systemctl list-units
答え3
私の最初のコマンドは
>netstat -lpunt
プロセスIDとプログラム名とともに、すべてのリスニングポートが一覧表示されます。
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 18637/mysqld
ああ、見てください。 mysqlを実行しています。定義されたデータベース名を表示します。
tcp6 0 0 :::8084 :::* LISTEN 18034/java
Java。おそらくトムキャットかもしれません...
>ps ax | grep 18034
18034 ? Ssl 0:34 /usr/lib/jvm/jre/bin/java -classpath /usr/share/tomcat/bin/bootstrap.jar:/usr/share/tomca
はい。 /usr/share/tomcatをチェックして、どの.warファイルがあるかを確認してください。
tcp6 0 0 :::80 :::* LISTEN 20336/httpd
Apache。サイト定義ファイルを見つけます。
...など。通常、サーバーはIP経由でサービスを公開するため、リスニングソケットが良い出発点になります。
マシンが「使用中」の場合、
iotop -o -d 10
どのプロセスが実際にディスクを台無しにしているかを示します。