プログラムブログ

PHP、Database、ネットワーク、サーバセキュリティ

Archive for 1 月, 2009

カーネルモジュール

ロードされているモジュールの表示
lsmod
(/proc/modulesを参照している)

モジュールの情報を表示する
modinfo [オプション] モジュール名

ローダブルモジュールのロード
insmod [オプション] モジュール名
オプション: -v: 詳細表示

モジュールのアンロード
rmmod [オプション] モジュール名
オプション: -a: 未使用のモジュールをすべてアンロード
-v: 詳細表示

モジュールのロード、アンロード(依存関係も解決してくれる)
modprobe [オプション] モジュール名
オプション: -a: すべてのモジュールをロード
-r: モジュールをアンロード
-l: 指定したパターンにマッチするロード可能なモジュール一覧を表示
-t: 特定機能のモジュールのみ
※ モジュールの依存関係はmodules.depに記載されている

モジュールロード時のオプション指定
/etc/modules.conf (2.4系)
/etc/modprobe.conf (2.6系)

記入方法: alias エイリアス名  モジュール名
options  モジュール名  オプション
install  モジュール名  コマンド
remove  コマンド

例. ロードされているモジュール
[root@vmcent5 ~]# lsmod
Module                  Size  Used by
ipt_MASQUERADE          7617  1
iptable_nat            11205  1
ip_nat                 20973  2 ipt_MASQUERADE,iptable_nat
xt_state                6209  1
ip_conntrack           53025  4 ipt_MASQUERADE,iptable_nat,ip_nat,xt_state
nfnetlink              10713  2 ip_nat,ip_conntrack
ipt_REJECT              9537  2
xt_tcpudp               7105  4
iptable_filter          7105  1
ip_tables              17029  2 iptable_nat,iptable_filter
x_tables               17349  6 ipt_MASQUERADE,iptable_nat,xt_state,ipt_REJECT,xt_tcpudp,ip_tables
bridge                 53341  0
autofs4                24517  2
hidp                   23105  2
l2cap                  29505  5 hidp
bluetooth              53797  2 hidp,l2cap
dm_multipath           22089  0
video                  21193  0
sbs                    18533  0
backlight              10049  1 video
i2c_ec                  9025  1 sbs
button                 10705  0
battery                13637  0
asus_acpi              19289  0
ac                      9157  0
ipv6                  258273  24
xfrm_nalgo             13765  1 ipv6
crypto_api             11969  1 xfrm_nalgo
lp                     15849  0
snd_ens1371            28513  1
gameport               18633  1 snd_ens1371
snd_rawmidi            26561  1 snd_ens1371
snd_ac97_codec         93025  1 snd_ens1371
ac97_bus                6337  1 snd_ac97_codec
snd_seq_dummy           7877  0
snd_seq_oss            32577  0
snd_seq_midi_event     11073  1 snd_seq_oss
snd_seq                49585  5 snd_seq_dummy,snd_seq_oss,snd_seq_midi_event
sg                     36189  0
snd_seq_device         11725  4 snd_rawmidi,snd_seq_dummy,snd_seq_oss,snd_seq
snd_pcm_oss            42945  0
snd_mixer_oss          19009  1 snd_pcm_oss
snd_pcm                72005  3 snd_ens1371,snd_ac97_codec,snd_pcm_oss
pcnet32                35141  0
floppy                 57125  0
ide_cd                 40033  0
snd_timer              24517  2 snd_seq,snd_pcm
snd                    52421  12 snd_ens1371,snd_rawmidi,snd_ac97_codec,snd_seq_oss,snd_seq,snd_seq_device,snd_pcm_oss,snd_mixer_oss,snd_pcm,snd_timer
mii                     9409  1 pcnet32
parport_pc             29157  1
soundcore              11553  1 snd
parport                37513  2 lp,parport_pc
cdrom                  36705  1 ide_cd
snd_page_alloc         14281  1 snd_pcm
pcspkr                  7105  0
i2c_piix4              12237  0
serio_raw              10693  0
i2c_core               23745  2 i2c_ec,i2c_piix4
dm_snapshot            21477  0
dm_zero                 6209  0
dm_mirror              29124  0
dm_mod                 61405  9 dm_multipath,dm_snapshot,dm_zero,dm_mirror
ata_piix               22341  0
libata                143997  1 ata_piix
mptspi                 23625  2
mptscsih               36801  1 mptspi
mptbase                74981  2 mptspi,mptscsih
scsi_transport_spi     26305  1 mptspi
sd_mod                 24897  3
scsi_mod              134605  6 sg,libata,mptspi,mptscsih,scsi_transport_spi,sd_mod
ext3                  123593  2
jbd                    56553  1 ext3
uhci_hcd               25421  0
ohci_hcd               23261  0
ehci_hcd               33357  0

例. ohci_hcdの情報を表示
[root@vmcent5 ~]# modinfo ohci_hcd
filename:       /lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/host/ohci-hcd.ko
license:        GPL
description:    2005 April 22 USB 1.1 ‘Open’ Host Controller (OHCI) Driver
author:         Roman Weissgaerber, David Brownell
srcversion:     E53437064626400CD08203F
alias:          pci:v*d*sv*sd*bc0Csc03i10*
depends:
vermagic:       2.6.18-92.1.6.el5 SMP mod_unload 686 REGPARM 4KSTACKS gcc-4.1
parm:           distrust_firmware:true to distrust firmware power/overcurrent setup (bool)
parm:           no_handshake:true (not default) disables BIOS handshake (bool)
module_sig:     883f35048628b1778c1e0dbcde189931128b6309f705cf65f9c905a29c3d0de9d3ae9d029eef2da409f4514a69d72dcd2d40e54efde59fc17d2294f498

例. ehci_hcdのアンロード
[root@vmcent5 ~]# rmmod -v ehci_hcd
rmmod ehci_hcd, wait=no

例. usb関連でロード可能なモジュール一覧
[root@vmcent5 proc]# modprobe -lt usb
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/acecad.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/aiptek.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/airprime.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/appledisplay.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/appletouch.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/ark3116.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/asix.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/ati_remote.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/ati_remote2.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/auerswald.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/belkin_sa.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/catc.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/class/cdc-acm.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/cdc_ether.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/cdc_subset.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/cp2101.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/atm/cxacru.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/cyberjack.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/cypress_m8.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/digi_acceleport.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/dm9601.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/host/ehci-hcd.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/emi26.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/emi62.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/empeg.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/ftdi_sio.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/funsoft.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/garmin_gps.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/gl620a.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/hp4x.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/idmouse.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/io_edgeport.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/io_ti.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/ipaq.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/ipw.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/ir-usb.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/host/isp116x-hcd.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/kaweth.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/kbtab.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/keyspan.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/keyspan_pda.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/keyspan_remote.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/kl5kusb105.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/kobil_sct.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/ldusb.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/legousbtower.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/mct_u232.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/image/mdc800.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/image/microtek.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/navman.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/net1080.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/host/ohci-hcd.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/omninet.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/option.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/pegasus.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/phidgetkit.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/phidgetservo.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/pl2303.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/plusb.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/powermate.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/rio500.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/rndis_host.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/rtl8150.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/safe_serial.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/sierra.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/sisusbvga/sisusbvga.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/host/sl811-hcd.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/host/sl811_cs.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/sound/usb/snd-usb-audio.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/sound/usb/snd-usb-lib.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/sound/usb/usx2y/snd-usb-usx2y.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/atm/speedtch.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/ti_usb_3410_5052.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/atm/ueagle-atm.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/host/uhci-hcd.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/storage/usb-storage.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/atm/usbatm.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/usblcd.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/usbled.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/class/usblp.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/usbnet.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/usbserial.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/usbtest.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/usbtouchscreen.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/misc/uss720.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/visor.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/wacom.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/serial/whiteheat.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/input/xpad.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/atm/xusbatm.ko
/lib/modules/2.6.18-92.1.6.el5/kernel/drivers/usb/net/zaurus.ko

例. /etc/modprobe.conf
[root@vmcent5 proc]# more /etc/modprobe.conf
alias eth0 pcnet32
alias scsi_hostadapter mptbase
alias scsi_hostadapter1 mptspi
alias scsi_hostadapter2 ata_piix
alias snd-card-0 snd-ens1371
options snd-card-0 index=0
options snd-ens1371 index=0
remove snd-ens1371 { /usr/sbin/alsactl store 0 >/dev/null 2>&1 || : ; }; /sbin/m
odprobe -r –ignore-remove snd-ens1371
# Added by VMware Tools
install pcnet32 /sbin/modprobe -q –ignore-install vmxnet;/sbin/modprobe -q –ig
nore-install pcnet32 $CMDLINE_OPTS;/bin/true
alias char-major-14 es1371
alias eth1 3c501

No comments

ulimit (システムリソースの制限)

シェル単位で使用できるCPUやメモリ、作成ファイルサイズなどの制限を設定するコマンドがulimit。

ulimit [オプション]

-a: 制限内容を表示
-t: CPU 時間の最大量 (秒単位)
-u: 1 人のユーザが使用できる最大のプロセス数

-c: 作成されるコアファイル (core) の最大サイズ

-d: プロセスのデータセグメントの最大サイズ
-f: シェルが作成できるMaxファイルサイズ
-l: メモリにロックできる最大サイズ
-n: オープン可能ファイルの最大値
-p: 512 バイトブロック単位でのパイプのサイズ
-s: 最大スタックサイズ
-v: シェルが使用できる最大の仮想メモリ量

例.
[root@vmcent5 ~]# ulimit -a
core file size          (blocks, -c) 0
data seg size           (kbytes, -d) unlimited
scheduling priority             (-e) 0
file size               (blocks, -f) unlimited
pending signals                 (-i) 4096
max locked memory       (kbytes, -l) 32
max memory size         (kbytes, -m) unlimited
open files                      (-n) 1024
pipe size            (512 bytes, -p) 8
POSIX message queues     (bytes, -q) 819200
real-time priority              (-r) 0
stack size              (kbytes, -s) 10240
cpu time               (seconds, -t) unlimited
max user processes              (-u) 4096
virtual memory          (kbytes, -v) unlimited
file locks                      (-x) unlimited

No comments

SUIDが付与されているファイルの抽出

# find / -perm -u+s -exec ls -la ‘{}’ ‘;’

例. vmware centOS5 デフォルト (運用時はここから不要なSUIDを削っていく必要がある)
-rwsr-xr-x 1 root root 31244  3月 14  2007 /bin/ping6
-rwsr-xr-x 1 root root 24120  5月 24  2008 /bin/su
-rwsr-xr-x 1 root root 35864  3月 14  2007 /bin/ping
-rwsr-xr-x 1 root root 38840  5月 24  2008 /bin/umount
-rwsr-xr-x 1 root root 57908  5月 24  2008 /bin/mount
-rwsr-xr-x 1 root root 13108 11月 29  2007 /usr/bin/rlogin
-rws–x–x 1 root root 19128  5月 24  2008 /usr/bin/chsh
—s–x–x 2 root root 160280  5月 24  2008 /usr/bin/sudoedit
—s–x–x 2 root root 160280  5月 24  2008 /usr/bin/sudo
-rwsr-xr-x 1 root root 43976  1月  6  2007 /usr/bin/at
-rwsr-xr-x 1 root root 22984  1月  6  2007 /usr/bin/passwd
-rwsr-xr-x 1 root root 24588  5月 24  2008 /usr/bin/newgrp
-rws–x–x 1 root root 17900  5月 24  2008 /usr/bin/chfn
-rws–x–x 1 root root 1812708  6月 21  2008 /usr/bin/Xorg
-rwsr-sr-x 1 root root 315416 11月 10  2007 /usr/bin/crontab
-rwsr-xr-x 1 root root 50296  5月 24  2008 /usr/bin/gpasswd
-rwsr-xr-x 1 root root 18544 11月 29  2007 /usr/bin/rcp
-rwsr-xr-x 1 root root 46972  5月 24  2008 /usr/bin/chage
-rwsr-xr-x 1 root root 8908 11月 29  2007 /usr/bin/rsh
-rwsr-xr-x 1 root root 64908  5月 24  2008 /usr/libexec/libvirt_proxy
-rwsr-xr-x 1 root root 176328  5月 24  2008 /usr/libexec/openssh/ssh-keysign
-rwsr-xr-x 1 root root 147447  5月 24  2008 /usr/kerberos/bin/ksu
-r-sr-xr-x 1 root root 20444  3月  3  2008 /usr/lib/vmware-tools/sbin32/vmware-hgfsmounter
-rwsr-xr-x 1 root root 6240  1月  6  2007 /usr/sbin/ccreds_validate
-rws–x–x 1 root root 35036  5月 24  2008 /usr/sbin/userhelper
-rwsr-xr-x 1 root root 6820  6月 14  2008 /usr/sbin/usernetctl
-r-s–x— 1 root apache 24711  1月 21  2008 /usr/sbin/suexec
-rwsr-xr-x 1 root root 6728  5月 24  2008 /usr/sbin/userisdnctl
-rwsr-xr-x 1 root root 19184  5月 24  2008 /sbin/unix_chkpwd
-rwsr-xr-x 1 root root 12248  5月 24  2008 /sbin/pam_timestamp_check
-rwsr-xr-x 1 root root 70484  7月 31 14:49 /sbin/mount.nfs
-rwsr-xr-x 1 root root 70488  7月 31 14:49 /sbin/umount.nfs4
-rwsr-xr-x 1 root root 70488  7月 31 14:49 /sbin/mount.nfs4
-rwsr-xr-x 1 root root 70488  7月 31 14:49 /sbin/umount.nfs

No comments