Tag Archive: Linux

SpamhausのXBLについてテキトウに翻訳してみた

仕事で管理するメールがSpamhausXBLにブロックされることが最近度々あって、しかもBL入りする原因がよくわからなかったのでSpamhausのXBLの説明文を英語さっぱりの自分なりに翻訳してみた。

Why was my IP listed in the XBL?
どうして私のIPがXBLにリスト入りされちゃうの?

When mail is received to one of XBL’s feeds, the connection is analyzed automatically to determine if the connecting machine is either an open proxy or a spam-sending Trojan Horse.
メールがXBLの装置の1つに受信されると、接続してきたマシンがオープンプロキシやスパムを送るトロイの木馬に感染してるマシンじゃないかを判断すために、自動的にその接続を分析するよ。

If so, the IP Address is immediately added to Spamhaus’ XBL blocklist.
もしも接続してきたマシンがそれらであるならば、そのIPアドレスは直ちにSpamhausのXBLのブロックするリストに入れるよ。

XBL only lists single IP address, and only when the spam/virus/trojan connects directly to its feed’s servers, not when an intermediate,
non-infected-MTA connects, nor due to a virus being bounced by a legitimate MTA (“backscatter”).

XBLは1つのIPアドレスだけをリストに入れるよ。あと、リスト入りいするのはスパムやウィルスやトロイが直接判定装置のサーバに接続してきたときだけで、
経由サーバや、感染してないMTAや、正当なMTAがウィルスメールに対するバウンスを返した結果(いわゆる後方拡散メールね)なんかはリスト入りの要因にはならないよ。

IP addresses, that host URLs with executable virus/trojan content in emails sent from XBL’d addresses, will also be added due to the very strong likelihood that this is also a trojan infected machine.
XBLにリスト入りされたアドレスから送られるメールに記載された、実行可能なウィルスやトロイの内容を含むURLのホストであるIPアドレスもまた、トロイに感染したマシンである可能性がめっちゃ高いから、リストに加えるよ。
(example.comがXBLのリスト入りしている場合、example.comをURLとして記載したメールを送った送信元IPアドレスもリスト入りしちゃうよ、ってこと。)

For the same reason, IP addresses that connect to our botnet C&C sinkhole servers will also be added.
同様の理由で、うちらの「botnet C&C sinkhole(ハニーポットみたいなもの?)」に接続に来たIPアドレスもリストに加えるよ。

Most IP addresses are listed as a result of directly sending spam or viruses to the CBL system’s detectors (spamtraps, special addresses which do not belong to any real users, and which receive only spam) or by initiating SMTP transactions that look similar to viruses or botnet-proxies.
ほとんどのIPアドレスは、CBLシステムの探知機(実ユーザが一人もいない特別なアドレスで、スパムだけを受信するスパムホイホイだよ)にスパムやウィルスを直接送っちゃったり、ウィルスやBOTネットプロキシなんかと同じような感じに見えるSMTPトランザクションを開始することによってリストに追加されるよ。

Other feeds of spam-sending exploited systems may be added, but only if they meet Spamhaus quality standards.
まぁうちらの品質基準を満たしちゃった場合には、スパム送信に利用されたシステムの他の装置達もリストに加えらちゃうかもね。

(XBL formerly included data from the RSL , BOPM & NJABL blocklists , which no longer exist ) .
(XBLは以前はRSLやBOPM、NJABLブラックリストなんかのデータもインクルードして使ってたんだけど、今はもうなくなっちゃったしね。)

If the IP belongs to a NAT gateway/firewall system, Spamhaus strongly recommends blocking all outgoing port 25 traffic from machines on your network not configured and maintained specifically as mailservers.
もしもそのIPアドレスがNATゲートウェイやファイヤーウォールシステムの配下にあるんなら、明確にメールサーバとして設定やメンテナンスをしていないマシーンから送出される、あらゆる外部の25番ポートへの通信をブロックすることを、うちらは強く推奨するよ。

A single infected machine sending spam out through a NAT can result in blocked mail form the whole LAN.
ウィルスに感染したたった1台のマシンがNATを通ってスパムを送っちゃうことで、結果LAN上の全部のマシンのメール送信がブロックされちゃうことになるからね。

See CBL ‘s FAQ for more information .
詳細はCBLのFAQを見てね。

 

うーん、イクナイURLを含むメールの送信元もブロックするよ、ってのが怪しいなぁ。

drop_cachesの必要性

上のグラフは公開しているmrtgのうち、メモリの使用量を月毎に表したもの。緑が物理メモリの空き量、青の実線がSWAPの空き量なのだが、見ての通り今年の第1週から徐々に空きが減っているのがわかります。

原因はdrop_cachesのcron実行を止めたから。これまで自分はメモリの空き容量確保のため、簡単な実行プログラム

/root/caches_crear.sh
#!/bin/sh
/bin/sync
/bin/sync
/bin/sync
/bin/echo 1 > /proc/sys/vm/drop_caches
sleep 20
#
/bin/sync
/bin/sync
/bin/sync
/bin/echo 1 > /proc/sys/vm/drop_caches

こんなん書いてcronで定期的に実行することで、適当な空き容量を確保してたんですよ。でも実際はこのメモリの内役的にはプログラムが掴んでるだけじゃなくて、ページキャッシュも含まれてるらしいじゃないですか。あとダーティキャッシュも。

システムの高速化を助けるページキャッシュをdrop_cachesでクリアしてしまうのは、逆によろしくないんではないかと思い立ったのがちょうどこの1週目の中ごろなわけです。

で、約1カ月クリアなしでどうなるかと様子を見ていたんですけど、見ての通り少しずつメモリが減っていき、今日見たらかなり切ない残量になっていたんで、やっぱりcronを復活させることにしました。メモリが底をついてswapとか発生したらさらに切なそうだから。

とりあえず数十分に一回という高頻度でクリアしてたのを、週1に変更して様子を見ることにします。

初期起動サービスの取捨選択-Fedora13

off NetworkManager NetworkManager is a tool for easily managing network connections 簡単にネットワーク接続を管理するためのツール。
off acpid Listen and dispatch ACPI events from the kernel カーネル上からACPI(電源管理関係の規格)を管理。
off atd Runs commands scheduled by the “at” command at the time “at”コマンドを使って、スケジューリングしたコマンドを実行するためのデーモン。

on

auditd This starts the Linux Auditing System Daemon, which collects security related events in a dedicated audit log. If this daemon is turned off, audit events will be sent to syslog. 検査専門のログからセキュリティ関連のイベントを収集するLinuxの検査システムデーモンを開始。
off avahi-daemon This is a daemon which runs on client machines to perform Zeroconf service discovery on a network. avahi-daemon must be running on system that use Avahi for service discovery. Avahi-daemon should not be running otherwise. ネットワーク上でZeroconf(設定不要でネットワークに参加させる技術)コマンドの発見を実行するためにクライアントマシン上で動作するデーモン。
それを行わないのであれば、実行させるべきではない。
off cpuspeed Run dynamic CPU speed daemon and/or load appropriate CPUの速度を動的に変化させるデーモン。

on

crond cron is a standard UNIX program that runs user-specified ユーザの指定で走らせるスタンダードなUNIXプログラム。
off dnsmasq This script starts your DNS caching server DNSのキャッシュサーバ。
off firstboot Firstboot is a druid style program that runs on the first time a machine is booted after install. It checks for the existence of an /etc/sysconfig/firstboot file. If the file exists and contains RUN_FIRSTBOOT=NO, firstboot will not run. Otherwise, firstboot will run. If /etc/reconfigSys exists or if “reconfig” is provided in the kernel boot arguments, firstboot will run in reconfiguration mode. インストール後に最初にマシンを起動した際に実行するドルイドスタイルのプログラム。
/etc/sysconf/firstbootの存在をチェックし、そのファイルがありかつRUN_FIRSTBOOT=NOであれば、実行されず、そうでなければ実行される。
/etx/reconfigSysが存在するか、カーネルのブートアーギュメント内で「reconfig」が提供されている場合は、再構成モードで実行する。
off gpm GPM adds mouse support to text-based Linux applications such テキストベースのLinuxアプリケーションでマウスのサポートを追加。
off haldaemon This is a daemon for collecting and maintaing information about hardware from several sources. ハードウェアの情報を収集、保持するデーモン。
off ip6tables Start, stop and save ip6tables firewall. ipv6のiptableの実行、停止、設定保存。
off iptables Start, stop and save iptables firewall. ipv4のiptableの実行、停止、設定保存。
off irda IrDA(TM) (Infrared Data Association) is an industry standard for wireless, infrare commnunication between devices. IrDA speeds range from 9600 bps to 4Mbps, and IrDA can be used by printers, and mobile phones. IrDA(Infrared Data Association)は無線(赤外線通信)のための標準規格。
IrDAの通信帯域は9600bps~4Mbpsで、プリンタや携帯電話などに用いられる。

on

irqbalance The irqbalance daemon will distribute interrupts across マルチCPU環境で2ndCPU以降も割り込み処理を行えるようにするデーモン。
off lvm2-monitor Monitoring of LVM2 mirrors, snapshots etc. using dmeventd or progress polling LVM2のミラーやスナップショットをモニタリング。
off mdmonitor The mdmonitor service checks the status of all software すべてのソフトの状態をチェック(実際はRAID用)。
off messagebus This is a daemon which broadcasts notifications of system システムの通知をブロードキャストするデーモン。
アプリケーション間でやりとりを行うための、プロセス間通信(IPC)実装のひとつ。
off multipathd This service monitors and manages multipathデバイスの監視と管理。
off mysqld MySQL Database server. MySQLデータベースサーバ。

on

netconsole Initializes network console logging ディスクへのログ書込みが失敗した場合やシリアル接続のコンソールが非実用的であるといった問題を解決するためにUDP上にカーネル printk メッセージを出力。
off netfs Mount and unmount network filesystems. ネットワーク上のファイルシステムをマウント/アンマウント。

on

network Bring up/down networking ネットワークのup/down。
off nfs NFS is a popular protocol for file sharing across networks. This service provides NFS server functionality, which is configured via the /etc/exports file. ネットワーク上でのファイル共有の一般的なプロトコル
/etc/exportsファイルを通して設定されたNFSサーバの機能を提供。
off nfslock NFS is a popular protocol for file sharing across networks. This service provides NFS file locking. 使用中のNFSファイルをロック。

on

nscd This is a daemon which handles passwd and group lookups for running programs and cache the resulsts for next query. You should start this daemon if you use slow naming services like NIS, NIS+, LDAP, or hesiod. 実行中のプログラムを検索し、次のクエリのためにその結果をキャッシュする、passwdファイルとgroupファイルを取り扱うデーモン。

on

ntpd ntpd is the NTPv4 daemon. The Network Time Protocol(NTP) NTPv4のデーモン。

on

ntpdate ntpdate sets the local clock by polling NTP servers NTPサーバを回ってローカルの時計をセット。
off pcscd The PC/SC smart card daemon is a resource manager for the PCカード等を扱うデーモン。
off psacct Starts and Stops process accounting saコマンドを使ってアカウントごとの利用統計を取る。
off rdisc This is a daemon which discovers routers on the local subnet. ローカルサブネット内のルータを発見するデーモン。
off restorecond restorecond uses inotify to look for creation of new files listed in the /etc/selinux/restorecond.conf file, and restores the corrent security context. /etc/selinuc/restorecond.confファイル内にリストアップされた新しいファイルの作成を検索し、現在のセキュリティ状況を回復。
off rpcbind The rpcbind utility is a server that converts RPC program numbers into universal addresses. It must be running on the host to be able to make RPC calls on a server on that machine. RPCプログラム(Remote Procedure Call:プログラムから別のアドレス空間にあるサブルーチンや手続きの実行を可能にする技術)ナンバーを一般的なアドレスに変換するサーバ。
ホスト上のサーバに対してRPCコールを実行するには、ホスト上でこのプログラムが実行されている必要がある。
off rpcgssd NFS is a popular protocol for file sharing across networks. This daemon manages RPCSEC GSS contexts on the RPCSEC GSSを実行・管理するデーモン。
off rpcidmapd NFS is a popular protocol for file sharing across networks. This daemon maps user names and groups to UID and GID numbers on NFSv4 mounts. NFSv4上でユーザ名とグループをそれぞれUIDとGIDの番号にマッピングするデーモン。
off rpcsvcgssd NFS is a popular protocol for file sharing across networks. This daemon manages RPCSEC GSS contexts on the RPCSEC SVC GSSを実行・管理するデーモン。

on

rsyslog Rsyslog is an enhanced multi-threaded syslogd supporting, マルチスレッドのsyslog強化版。
off saslauthd Saslauthd is a server process which handles planintext 平文でのログインを取り扱うサーバプロセス。
off sendmail sendmail is a Mail Transport Agent (MTA) 言わずと知れたMTA。
off smartd The smart daemon monitors SMART status of the local hard drives and ローカルHDDのSMARTステータスをモニタするデーモン。

on

sshd SSH is a protocol for secure remote shell access. セキュアな遠隔操作プロトコル。
off sssd Provides a set of daemons to manage access to remote directories 外部ディレクトリのアクセスの管理を提供するデーモン。
off udev-post Moves the generated persistent udev rules to /etc/udev/rules.d udevは/devディレクトリを管理する新しい手法。
ユーザが指定するルールとsysfsによって提供される情報を照合して、システムに組み込まれたデバイスに相当する/devデバイスノードを作成し命名。
たぶんデバイスの自動認識。
off wpa_supplicant wpa_supplicant is a tool for connecting to wireless networks ワイヤレスネットワークへの接続用のツール。
off ypbind This is a daemon which runs on NIS/YP clients and binds them to a NIS domain. It must be running for systems based on glibc to work as NIS clients,but it should not be enabled on systems which are not using NIS. NIS/YPクライアント上で動作し、それらをNISドメインにバインドするデーモン。
NISクライアントとして動作するためにはglibcベースのシステムで実行されている必要があるが、NISを使わないのであればenableにしておくべきではない。

Fedoraインストールする度に何を切るんだか忘れちゃうんですよね。
なもんで備忘録としてメモを残し残し。
on/offは飽くまで自分の用途に合わせたものなので注意。

「個人の感想であり、商品の効果を保証するものではありません。」

うちのネットワーク構成

001
なんとなくうちのネットワーク構成でも。

Bフレ経由で@niftyから固定IPもらってネットに接続してます。
ルータからは普通にローカル。1階の2人のノートは無線、2階へはきしめんケーブル這わせてます。一応Giga。
2階のパソコン、自分のメインPCのはずなんですけど、結婚してから二人でいる時間が長いので、あんまり使ってあげられてません。

二人とも自分のノートでブログ書いてるんで、kitakore.asiaサーバに内向きDNSサーバ入れて、ノート2台ともプライマリDNSサーバをkitakore.asiaサーバに設定しています。
kitakore.asiaサーバはファイルサーバも兼用。対外サーバにそんなもん入れんなって感じだけど、別にNAS入れるよりも安いしぃ。

hinet.netがうざい

dynamic.hinet.netがうざい。
ひたすらsmtpポートにアクセスしてくる。
入られることはないが無駄なログがたまってうざいので、
hinet.netからのsmtpポートへのアクセスはすべて遮断しちゃうことにした。

hinet.netの住処はだいたいこのあたり。たぶんまだある。

59.112.0.0/12
59.124.0.0/14
61.216.0.0/14
61.220.0.0/14
61.224.0.0/14
61.228.0.0/14
114.32.0.0/12
118.160.0.0/13
118.168.0.0/14
122.116.0.0/15
125.224.0.0/13
125.232.0.0/15
218.160.0.0/12
220.128.0.0/12

なんで、

# /sbin/iptables -A INPUT -s 59.112.0.0/12 -p tcp –dport 25 -j REJECT
※↑だとdportの前の–(ハイフン)がひとつしか表示されないけど、
実際は––(ハイフンハイフン)と二つつなげて「––dport」にしてください。
なんかこのブログ、投稿すると文字化け(?)で正しく表示されないんです。

って感じでiptableに放り込むことにした。

ら、

ログが流れなくなってさみしくなった。

MRTGの設定

mrtg

【MRTGのインストール】

# yum install mrtg.i386

それ以外何かライブラリとか必要だった気がする・・・。
・GD ライブラリ
・zlib ライブラリ
・libpng ライブラリ
・Perl 5.004以降
・Apache
この辺。

【mrtg.cfgをつくる】
※サーバのアドレスが192.168.1.100の場合

# /usr/bin/cfgmaker – -ifref=descr – -ifdesc=descr public@192.168.1.100 > /etc/mrtg/mrtg.cfg


【mrtg.cfgの編集】

# vi /etc/mrtg/mrtg.cfg
### Global Config Options# for UNIX
# WorkDir: /home/http/mrtg
WorkDir: /var/www/mrtg  ←追加
 

# or for NT
# WorkDir: c:\mrtgdata### Global Defaults

# to get bits instead of bytes and graphs growing to the right
Options[_]: growright, noinfo
コメント(#)を削除。growrightはグラフの推移を左過去・右未来にする。デフォルトは逆。
noinfoはトップページにいらん情報を表示させないため。

EnableIPv6: no
Language:eucjp
←日本語対応のために追加

ひとまずこれだけで通信量は出せるが、CPU使用率・空きメモリ量・HDD使用率も表示させてみる。

### CPU Load Average ###
Target[cpu]: .1.3.6.1.4.1.2021.10.1.5.1&.1.3.6.1.4.1.2021.10.1.5.2:public@192.168.1.100
MaxBytes[cpu]: 100
Unscaled[cpu]: dwmy
Options[cpu]: gauge, absolute, growright, noinfo, nopercent
YLegend[cpu]: CPU Load(%)
ShortLegend[cpu]: (%)
LegendI[cpu]: 1分間平均
LegendO[cpu]: 5分間平均
Legend1[cpu]: 1分間平均(%)
Legend2[cpu]: 5分間平均(%)
Title[cpu]: CPU使用率
PageTop[cpu]: <H1>CPU使用率</H1>

### Memory Free ####
Target[mem]: .1.3.6.1.4.1.2021.4.6.0&.1.3.6.1.4.1.2021.4.4.0:public@192.168.1.100
MaxBytes1[mem]: 1024556  ←最大容量をあらかじめ確認しておく
MaxBytes2[mem]: 2031608  ←確認方法は【メモリ量の確認】で
Unscaled[mem]: dwmy
Options[mem]: gauge, absolute, growright, noinfo
YLegend[mem]: Mem Free(Bytes)
ShortLegend[mem]: Bytes
kilo[mem]: 1024
kMG[mem]: k,M,G,T,P
LegendI[mem]: Real
LegendO[mem]: Swap
Legend1[mem]: 空き物理メモリ[MBytes]
Legend2[mem]: 空きスワップメモリ[MBytes]
Title[mem]: 空きメモリ量
PageTop[mem]: <H1>空きメモリ量</H1>

### Disk Used ####
Target[disk]: .1.3.6.1.4.1.2021.9.1.9.1&.1.3.6.1.4.1.2021.9.1.9.1:public@192.168.1.100
MaxBytes[disk]: 100
Unscaled[disk]: dwmy
Options[disk]: gauge, absolute, growright, nopercent, noinfo
YLegend[disk]: Disk Used(%)
ShortLegend[disk]: (%)
LegendI[disk]: / Disk used
LegendO[disk]: / Disk Used
Legend1[disk]: / Disk used
Legend2[disk]: / Disk used
Title[disk]: ディスク使用率
PageTop[disk]: <H1>ディスク使用率</H1>

 

 

 

[cpu]や[mem]は項目別に分ける。かぶってはいけない。

【メモリ量の確認】

# free

total used free shared buffers cached
Mem: 1024556 285572 738984 0 544 32564
-/+ buffers/cache: 252464 772092
Swap: 2031608 1756 2029852

Mem:とSwap:のtotalをメモっておく


【データの取得】

# env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
# env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg
# env LANG=C /usr/bin/mrtg /etc/mrtg/mrtg.cfg

最初は比較用のデータがまだないためにエラーが出るが、3回実行すると出なくなる。

【インデックスページの作成】
なんか文字化けするんで以下のリンク先のテキストを参照
http://www.kitakore.asia/index.txt

うちの場合は
http://kitakore.asia/mrtg/
インストール時に/etc/cron.dにmrtgが作成されてるのであとは放置プレイで。

SNMPの設定

【SNMPのインストール】

# yum install net-snmp.i386


【コンフィグファイルの編集】

# vi /etc/snmp/snmpd.conf
####
# First, map the community name “public” into a “security name”# sec.name source community
com2sec local localhost private
com2sec mynetwork 192.168.1.0/24 public####
# Second, map the security name into a group name:

# groupName securityModel securityName
group MyROGroup v1 local
group MyROGroup v2c local
group MyROGroup v1 mynetwork
group MyROGroup v2c mynetwork

####
# Third, create a view for us to let the group have rights to:

# Make at least snmpwalk -v 1 localhost -c public system fast again.
view all included .1 80

####
# Finally, grant the group read-only access to the systemview view.# group context sec.model sec.level prefix read write notif
access MyROGroup “” any noauth exact all none none
access MyRWGroup “” any noauth exact all all none

考えるな。感じろ。間違ってる所もあるが気にするな。

【SNMPデーモンを起動】

# /etc/init.d/snmpd start


【SNMP動作確認】

# snmpwalk -v 1 -c private localhost .

もしくは サーバのアドレスが192.168.1.100の場合、

# snmpwalk -v 1 -c public 192.168.1.100 .

ズラ~っと結果が表示されればOK。
v2(デフォルト)だとなんか正常に表示されないので”-v 1″でv1に。
また、v1だとコミュニティの指定が必要なので”-c”でコミュニティを指定。
最後にスペース+”.” を忘れずに。

Sendmail de SMTPAuth

【sendmailが使えるようにしておく】

【cyrus-saslのインストール】
cyrus-sasl-*.*.**-****
cyrus-sasl-md5-*****
cyrus-sasl-plain-******
cyrus-sasl-devel-*****

【/usr/lib/sasl2/Sendmail.confの編集】
pwcheck_method: saslauthd
mech_list: PLAIN LOGIN


【saslauthdの起動】

【sendmail.mcの編集】
dnl TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
dnl define(`confAUTH_MECHANISMS’, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl

↓コメントアウト (行頭の dnl を削除)
TRUST_AUTH_MECH(`EXTERNAL DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl
define(`confAUTH_MECHANISMS’, `EXTERNAL GSSAPI DIGEST-MD5 CRAM-MD5 LOGIN PLAIN’)dnl


【sencmail.cfの生成】

# cd /etc/mail
# cp sendmail.cf sendmail.cf.bk
# m4 sendmail.mc > sendmail.cf


【sendmail.cfの書き直し】

【sendmailの再起動】

DebianでのR300へのNICドライバの入れ方

Dell PowerEdge R300にDebian入れようとしたら標準ドライバにBroadcom BCM5722の
ドライバがなかったので、手動で入れてみるでゴザるの巻。

NICドライバなしでインスコ

# apt-get install make
# apt-get install gcc
# apt-get install linux-headers-2.6.18-6-686

↑インスコしたDebianのカーネルバージョンを/lib/modules/あたりで確認しとく

別機で
http://www.broadcom.com/support/ethernet_nic/netxtreme_server.php
からLinux(tg3)用linux-3.92n.zipをDL
解凍してtg3-3.92n.tar.gzを取り出す
CDに焼くとかUSBメモリに入れるとかしてtg3-3.92n.tar.gzを任意のフォルダにコピー

# tar zxvf tg3-3.92n.tar.gz
# cd tg3-3.92n
# make clean
# make; make install

インストール終わったらドライバモジュールの読み込み

# modprobe tg3

確認

# lsmod

※10Mbps half でつながっちゃってる場合※

# apt-get install ethtool
# ethtool -s eth0 autoneg on

ほいでから

# dmesg

で確認。
tg3: eth0: Link is up at 1000 Mbps, full duplex.
とかなってればOK。

再起動時に自動でonになるように、

# vi /etc/rc.local

/usr/sbin/ethtool -s eth0 autoneg on

とか書いておくとよい。