Netcatでポートスキャンとか
Netcatでポートスキャンを実行する
$ nc -v -z localhost 1-1023 localhost.localdomain [127.0.0.1] 80 (www) open localhost.localdomain [127.0.0.1] 25 (smtp) open localhost.localdomain [127.0.0.1] 22 (ssh) open
上記では、localhostの1〜1023番までのポートをスキャンしている。
80, 25, 22番がオープンしているという結果になった。
リクエストをポート8080からポート80へ転送する
$ mknod ncpipe p $ nc -l -p 8080 < ncpipe | nc localhost 80 > ncpipe
違う端末から以下を実行してみる。
なお、Apacheが80番ポートで起動しているものとする。
下記のコマンドで8080番がLISTENしているかチェックしてみる $ lsof -nPi:8080 COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME nc 13692 chibi 3u IPv4 87338 TCP *:8080 (LISTEN) 接続してみる $ nc localhost 8080 HEAD / HTTP/1.0 ←入力後にEnterを2回押す HTTP/1.1 200 OK Date: Mon, 25 Feb 2008 09:35:53 GMT Server: Apache X-Powered-By: PHP/5.2.3-1ubuntu6.3 Vary: Accept-Encoding,User-Agent Connection: close Content-Type: text/html
8080番にアクセスしたのに、80番へきちんと転送されている。
ブラウザなどから、http://localhost:8080/ などとアクセスしてもきちんとコンテンツが表示される。