アクセラと+αな生活
アクセラとα350と共に過ごす気まぐれ日記です。
Firefox ブラウザ無料ダウンロード
2017年07月
≪06月  1  2  3  4  5  6  7  8  9  10  11  12  13  14  15  16  17  18  19  20  21  22  23  24  25  26  27  28  29  30  31    08月≫
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
以前、Vine Linux 5 で ポートを確認してみる。で開いているポート確認をしました。


Ubuntu 君はクライアントマシンとして使っているので、サーバーアプリケーションをほとんど使ってません。
とはいえ、SSH などのサーバーアプリケーションは利用してます。
このくらいのサービスやそのサービスで使っているポートくらいは管理しておかないといけませんね。

使わないサービスのポートを開けていても無駄ですから、そんなサービスがあれば、サービスを停止しておくことも必要です。

では、うちの Ubuntu 君、どんなポートが開放されているのかを確認してみましょう。



ポートを確認するには、「nmap」というポートスキャンツールが一般的かなww
「nmap」を利用すれば、対象のマシンの開いているポートを確認(スキャン)することができます。


【「nmap」のインストール】
「nmap」は Ubuntu のデフォルトではインストールされていませんので、インストールする必要があります。
「nmap」はパッケージ化されているので、「apt」でインストールできます。
便利ですねww


$ sudo apt-get update

~ 略 ~

$ sudo apt-get install nmap
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが新たにインストールされます:
nmap
アップグレード: 0 個、新規インストール: 1 個、削除: 0 個、保留: 0 個。
1,590kB のアーカイブを取得する必要があります。
この操作後に追加で 6,332kB のディスク容量が消費されます。
取得:1 http://jp.archive.ubuntu.com karmic/main nmap 5.00-2 [1,590kB]
1,590kB を 4s で取得しました (341kB/s)
未選択パッケージ nmap を選択しています。
(データベースを読み込んでいます ... 現在 259508 個のファイルとディレクトリがインストールされています。)
(.../archives/nmap_5.00-2_i386.deb から) nmap を展開しています...
man-db のトリガを処理しています ...
nmap (5.00-2) を設定しています ...

これでインストールは完了です。
「nmap」は CUI インターフェイスのツールですので、コマンドで実行します。



【ポートスキャン】
では、ポートスキャンをかけてみます。
TCP/IP のスキャンは「-sT」、UDP のスキャンは「-sU」、「-V」をつければ、バージョン関連の情報も表示されます。

TCP で使用しているポートのスキャン
$ sudo nmap -sTV localhost

Starting Nmap 5.00 ( http://nmap.org ) at yyyy-mm-dd hh:mm JST
Warning: Hostname localhost resolves to 2 IPs. Using 127.0.0.1.
Interesting ports on localhost (127.0.0.1):
Not shown: 993 closed ports
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 5.1p1 Debian 6ubuntu2 (protocol 2.0)
25/tcp open smtp Exim smtpd 4.69
139/tcp open netbios-ssn Samba smbd 3.X (workgroup: WORKGROUP)
445/tcp open netbios-ssn Samba smbd 3.X (workgroup: WORKGROUP)
631/tcp open ipp CUPS 1.4
901/tcp open http Samba SWAT administration server
10000/tcp open http Webmin httpd
Service Info: Host: <ホスト>; OS: Linux

Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 11.63 seconds

UDP で使用しているポートのスキャン

$ sudo nmap -sUV localhost

Starting Nmap 5.00 ( http://nmap.org ) at yyyy-mm-dd hh:mm JST
Warning: Hostname localhost resolves to 2 IPs. Using 127.0.0.1.
Interesting ports on localhost (127.0.0.1):
Not shown: 995 closed ports
PORT STATE SERVICE VERSION
123/udp open ntp NTP v4
137/udp open netbios-ns Microsoft Windows XP netbios-ssn
138/udp open|filtered netbios-dgm
5353/udp open|filtered zeroconf
10000/udp open webmin
Service Info: Host: <ホスト>; OS: Windows

Service detection performed. Please report any incorrect results at http://nmap.org/submit/ .
Nmap done: 1 IP address (1 host up) scanned in 56.50 seconds

これでどのポートが開放されているかを把握することができました。
ここでは、UDP は割愛し、TCP で使われているポートが何に使われているのか確認しましょう。
(基本的には UDP でも同様に確認できます)

TCP で開放されているのは
 ・22番ポート OpenSSH で使用
 ・25番ポート smtp(Exim)で使用
 ・139番ポート Samba で使用
 ・445番ポート Samba で使用
 ・631番ポート CUPS で使用
 ・901番ポート Samba SWAT で使用
 ・10000番ポート Webmin で使用
というのが分かります。

全て見たことがあるプロセス(サービス、デーモンプロセス)で把握できていれば問題ありませんが、中にはよく分からないプロセスがあるかもしれません。。。

そのような場合、「lsof」でポートを使用しているプロセスを確認できます。
例えば、631番ポートを使用している「CUPS」を調べるのであれば、「lsof」でそのポート番号を指定して実行します。

$ sudo lsof -i:631
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
cupsd 1758 root 6u IPv6 8209 0t0 TCP localhost:ipp (LISTEN)
cupsd 1758 root 7u IPv4 8210 0t0 TCP localhost:ipp (LISTEN)

「command」が「cupd」となってますね。
ちなみに、Unix 系でプロセスの最後が「d」の場合、デーモンプロセス(Windows でいうところのサービス)の可能性が高いです。
「cupd」となってますし、ユーザが「root」なので、おそらく「何かしらのデーモンプロセスではないだろうか。。。」と推測できます。

「lsof」でコマンドなどの情報が取得できました。
「cupd」が起動しているということは、プロセスとして起動しているはずですので、「pgrep」などでプロセスを確認してみましょう。

$ pgrep -lf cupsd
1758 /usr/sbin/cupsd -C /etc/cups/cupsd.conf

$ ps -ef |grep cupsd|grep -v grep
root 1758 1 0 hh:mm ? 00:00:00 /usr/sbin/cupsd -C /etc/cups/cupsd.conf

どうやら、「/usr/sbin/cupsd」が「CUPS」の正体のようですね。

あとは、「man」、「dpkg -l」、「apt-cache search」などで、何のパッケージかを調べてみましょう。


$ apt-cache search cupsd
apcupsd - APC UPS Power Management (daemon)
apcupsd-cgi - APC UPS Power Management (web interface)
apcupsd-doc - APC UPS Power Management (documentation/examples)
gapcmon - APC UPS Power Management (GUI)
gkrellmapcupsd - 現在のプロセッサ速度を表示する gkrellm 用プラグイン
cups - Common UNIX Printing System(tm) - server
libcupsdriver1 - Common UNIX Printing System(tm) - Driver library
libcupsdriver1-dev - Common UNIX Printing System(tm) - Development files driver library
cups-ppdc - Common UNIX Printing System(tm) - PPD manipulation utilities
cupsddk - Common UNIX Printing System (transitional package)

「apt-cache search」では、他の情報も出てしまうので、カンになりますが、どうやら、「CUPS」は「Common UNIX Printing System(tm) - server」のようです。


このような感じで、「CUPS」が何であるかが分かりましたので、「CUPS」が必要なのか、不要なのかを判断できます。
「CUPS」はプリンタのサービスですので、プリンタを使用しないのであれば、不要なサービスというような判断ができますね。

不要なら起動しないようにして、不要なポートも開放されないようにしておけばいいでしょう。





ネットで調べれば「CUPS」もすぐに調べることができるでしょうね。
「lsof」はポートスキャンの時くらいしか使いませんけど、「pgrep」などは、ポートスキャンしたプロセスの調査以外でも使えるので、おぼえておくと他の場面でも、役に立つでしょう。


コメント
この記事へのコメント
承認待ちコメント
このコメントは管理者の承認待ちです
2012/11/11(日) 03:13 | | #[編集]
URL :
コメント :
パスワード :
管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
Template designed by アクセラと+αな生活

Powered by .
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。