投稿

自宅サーバ(Debian/etch)をnmap(Windows XP)でポートスキャン

自宅サーバ(Debian/etch)のセキュリティ検査をするのに、Windows XPマシンからポートスキャンしてみた。 1. http://insecure.org/からnmap-4.85BETA7-setup.exeをダウンロード 2. nmap-4.85BETA7-setup.exeを実行してインストール 3. 以下を実行 C:\Program Files\Nmap>nmap -P0 -n -sS -T4 -p1-65535 192.168.1.132 Starting Nmap 4.85BETA7 ( http://nmap.org ) at 2009-04-19 11:43 東京 (標準時) Interesting ports on 192.168.1.132: Not shown: 65528 closed ports PORT    STATE SERVICE 21/tcp  open  ftp 22/tcp  open  ssh 80/tcp  open  http 111/tcp open  rpcbind 113/tcp open  auth 443/tcp open  https 901/tcp open  samba-swat MAC Address: xx:xx:xx:xx:xx:xx (Matsushita Electric IND. CO) Nmap done: 1 IP address (1 host up) scanned in 81.48 seconds C:\Program Files\Nmap> 4. rpcbind、auth、samba-swatは自宅サーバには必要ないので止めてみる。あと、ftpはscp(sftp)で代替するのでこれも止める。 <rpcbindを止める> # /etc/init.d/portmap stop Stopping portmap daemon.... # update-rc.d -f portmap remove Removing any system startup links for /etc/init.d/portmap ... ...

自宅サーバ(Debian/etch)のiptablesで、とあるホストを遮断

やってみたのでメモしておく。 /root/myfirewall.shを作成し、アクセス拒否したいipアドレスを登録。 # vi /root/myfirewall.sh #!/bin/sh iptables -I INPUT -s XXX.XXX.XXX.XXX -j DROP 定義に問題ないか確認。 # /bin/sh /root/myfirewall.sh # iptables -L ... DROP       0    --  xxxx.jp  anywhere ← 拒否したいIPアドレスのFQDN名を確認 ... # etc/network/interfacesに書き青文字の行を追加。 iface eth0 inet dhcp         pre-up /bin/sh /root/myfirewall.sh $IFACE $IF_ADDRESS 再起動しても定義がされていることを確認。 # shutdown -r now ... #  iptables -L ... DROP       0    --  xxxx.jp  anywhere ← 再起動してもちゃんとある。 ... #

自宅サーバ(Debian/etch)にxcacheを導入

PHP高速化ツールのxcacheを導入してみた。意外と苦労したので、作業ログから手順を整理しておく。 まず、/etc/apt/sources.listを編集し、下記2行を追加。 deb http://www.backports.org/debian/ etch-backports main deb-src http://www.backports.org/debian/ etch-backports main それから、"apt-get update"と実行すると、以下のエラーが発生。 # apt-get update ... W: GPG error: http://www.jp.backports.org etch-backports Release: The following signatures couldn't be verified because the public key is not available: NO_PUBK EY EA8E8B2116BA136C ... 次に、上の赤色部分の使って、以下を実行。 # gpg --keyserver wwwkeys.eu.pgp.net --recv-keys EA8E8B2116BA136C ... # gpg --armor --export EA8E8B2116BA136C | apt-key add - OK # 再度、"apt-get update"以下を実行。今度はエラーは出ない。 # apt-get update ... # aptitude install php5-xcache ... 最後にapacheを再起動し、xcacheを有効に。 # /etc/init.d/apache2 stop Stopping web server (apache2).... # /etc/init.d/apache2 start Starting web server (apache2).... 以上

自宅サーバ(Debian/etch)のpukiwiki高速化

自宅サーバはMobile Pentium MMX 233MHz(?)という非常に非力なマシンなんだが、Pukiwikiのとあるページの処理に5秒もかかってしまう。あまりに遅すぎるのでなんとかならないかと思案していたところ、 Bodycache なるものを発見。 おぉ、はやいはやい。 平均5秒→平均0.1秒に大変身。 ページに以下のプラグインが使用されていると、効果がでないそうだ。includeが使えないのは少し残念だが、いいか別に。 ls2 pcomment include 更に、xcacheなるものも入れてみた。 平均0.1秒→0.06秒前後に、ちびっと向上。 Bodycacheほどの効果はなかったが、このわずかな違いでずいぶんと小気味よい。

自宅サーバ(Debian etch)にntp設定を実施

手順は以下。 # aptitude install ntp ntpdate ntp-simple .... # vi /etc/ntp.conf 以下を編集 <編集前> server 0.debian.pool.ntp.org iburst server 1.debian.pool.ntp.org iburst server 2.debian.pool.ntp.org iburst server 3.debian.pool.ntp.org iburst <編集後> server 210.173.160.27 iburst server 210.173.160.57 iburst server 210.173.160.87 iburst ※プロバイダ毎の推奨NTPサーバ設定は ここ を参照のこと。 # touch /var/lib/ntp/ntp.drift  ← 空ファイルを作成 # /etc/init.d/ntp stop Stopping NTP server: ntpd. # ntpdate -b 210.173.160.87 ← 無理やり合わせる 23 Mar 22:43:03 ntpdate[4230]: step time server 210.173.160.87 offset -0.001219 sec # /etc/init.d/ntp start Starting NTP server: ntpd. # ntpq -p      remote           refid      st t when poll reach   delay   offset  jitter ============================================================================== *ntp1.jst.mfeed. 210.173.160.86   2 u   22  ...

[Solaris] 動的ポート割り当て範囲

調べてみたので忘れないように。以下のOSパラメータで設定できる様子。 tcp_smallest_anon_port 最小値:1024 最大値:TCP_MAX_PORT(=(64 * 1024 - 1)=65535) デフォルト値:32768 tcp_largest_anon_port 最小値:1024 最大値:TCP_MAX_PORT デフォルト値:TCP_MAX_PORT udp_smallest_anon_port 最小値:1024 最大値:UDP_MAX_PORT(=65535) デフォルト値:(32 * 1024)=32768 udp_largest_anon_port 最小値:1024 最大値:UDP_MAX_PORT デフォルト値:UDP_MAX_PORT 参考 http://homepage2.nifty.com/BASH/sol/ndd.html  (リンク切れ) tcp.c  (リンク切れ) udp.c  (リンク切れ)

[C言語] 共有ライブラリを作って呼んでみる

共有ライブラリで発生した異常をgdbで調べてみる実験をしたく、まずは、共有ライブラリを作成&実験してみた。 環境は、以下。 2.6.18-92.1.22.el5 gcc (GCC) 4.1.2 20071124 (Red Hat 4.1.2-42) 以下のファイルをそれぞれ作成してから、make; sh run.shと実行すればめでたく(?)core発生。 "Makefile" all : test_core clean :         rm -f test_core test_core.o liba.so liba.so.1 liba.so.1.0 liba.o         rm -f core.* test_core : test_core.o liba.so.1.0         gcc -g -o test_core test_core.o -L. -la test_core.o : test_core.c         gcc -Wall -g -c test_core.c -o test_core.o liba.so.1.0 : liba.o         gcc -g -shared -Wl,-soname,liba.so.1 -o liba.so.1.0 liba.o -lc         ln -sf liba.so.1 liba.so         ln -sf liba.so.1.0 liba.so.1 liba.o : liba.c liba.h         gcc -fpic -g -c -Wall liba.c "liba.h" int liba(); "liba.c" int liba() {         int i = 10 / ...