Zabbix 5.0.4 LTS

なんとなく形になったので、一旦作業は終了

snmpでPrivioのパケット監視だけ入れた。

そういえば、RTX1200でL2TP/IPSECと QNAPにWireGuardを設定した。
WireGuardを入れた理由は、AndroidでL2TPが使えなくなっていたから…

AndroidのWireGuard Clientが繋がっているのか繋がっていないのか全然わからんかった。

久しぶりにNetwork機器の手入れを行なったので、もうお腹いっぱい。

今回の作業は、Mac Miniをファイルサーバとして使っていたものをQNAPに移動させることが発端だったんだが、
1つ触り出すと、次から次に触る場所が増えていって、収集が付かなくなってしまった。

結局 追加機材は、SWX2210-16Gだけとなったが、RTX-1210も調達すればよかったなぁ…

記事を書いているときに、wordpressに入れているSiteGuardを見たら、xmlrpcを使った攻撃がいっぱいあった。
対策で、.htaccessに書いて、xmlrpcを禁止した。

やだねぇ

Ubuntu 14.04 LTS rsyslog

syslogを1箇所で管理したいため、rsyslogに受信設定を行う。

# diff rsyslog.conf rsyslog.conf.org 
18,20c18,20
< $ModLoad imudp
< $UDPServerRun 514
< $AllowedSender UDP ,127.0.0.1,192.168.10.0/24 --- > #$ModLoad imudp
> #$UDPServerRun 514
> 
22,24c22,24
< $ModLoad imtcp
< $InputTCPServerRun 514
< $AllowedSender TCP, 127.0.0.1.192.168.10.0/24 --- > #$ModLoad imtcp
> #$InputTCPServerRun 514
> 

rsyslog設定を読み直す。

# killall rsyslogd

rtx1200のログを転送する設定

syslog host [rsyslog_host ip address]
syslog facility local6
syslog notice on

転送されたlogは、全て/var/log/syslogに出てくるので、切り分けをする。

mkdir -p /var/log/recived
chown syslog:adm /var/log/recived
# vi 10-reviced.conf
:hostname, isequal, "router.home.local"   /var/log/recived/rtx1200.log
& ~ ← /var/log/syslogに記録したくない為
# killall rsyslogd

切り分けできているか、確認

tail -f /var/log/recived/rtx1200.log
Apr 14 15:50:34 router.home.local [IKE] receive heartbeat message from xxx.xxx.xxx.xxx
Apr 14 15:50:34 router.home.local [IKE] still connected : no message
Apr 14 15:50:34 router.home.local [IKE] receive heartbeat message from xxx.xxx.xxx.xxx
Apr 14 15:50:34 router.home.local [IKE] still connected : no message
Apr 14 15:50:34 router.home.local [IKE] receive heartbeat message from xxx.xxx.xxx.xxx
Apr 14 15:50:34 router.home.local [IKE] still connected : no message

つらつら受信している。
本体ログには、記録されていない。

logrotateの設定
/var/log/recived/*.logが新たに増えたので、logrotateに加える。

cat /etc/logrotate.d/recived
/var/log/recived/*.log {
        weekly
        missingok
        rotate 52
        compress
        notifempty
        create 640 syslog adm
        sharedscripts
}

logrotateはcronで動いているので、cronを再起動

service cron restart

動作確認をする。

logrotate -d /etc/logrotate.d/recived
# logrotate -d /etc/logrotate.d/recived
reading config file /etc/logrotate.d/recived

Handling 1 logs

rotating pattern: /var/log/recived/*.log  weekly (52 rotations)
empty log files are not rotated, old logs are removed
considering log /var/log/recived/rtx1200.log
  log does not need rotating

まだlogが溜まってないから、rotationする必要が無いと。
暫くしたら、rotateしたlogがあるか、確認してみる。

YAMAHA RTX1200 覚書3

設定の保存

# save

設定の初期化(工場出荷時に戻す)

CLIで操作

# cold start
Password:

本体ボタンで操作

フロントパネルの MicroSD / USB / DOWNLOAD の
3つのボタンを押しながら電源を入れる。

IP ADDRESS 設定

ip lan1 address 192.168.10.254/24

dhcpd 設定

dhcp scope 1 192.168.10.101-192.168.10.119/24
dhcp duplicate check 100 off
dhcp server rfc2131 compliant except remain-silent
dhcp scope option 1 wins_server=192.168.10.1
dhcp service server

dns 設定

dns server 8.8.8.8 8.8.4.4
dns cache use on
dns server pp 1
dns server select 500001 pp 1 any . restrict pp 1
dns domain DOMAIN.COM
dns private address spoof on
ip host PcName.DOMAIN.com 192.168.10.120

ntp server と 自動時刻合わせ 設定

schedule at 1 */* *:59 * ntpdate ntp.ntphost.jp
sntpd service on
sntpd host lan

configのバックアップ
RTX1200の設定ファイルをバックアップしておくと、いざという時やRTXの交換時に役立つ
SDにバックアップ

copy config 0 sd1:config.txt

SDから復元
これは試したこと無いんですが、引数を逆にすれば良い?

copy sd1:config.txt config 0

または、本体で操作

コピーしたconfig.txtがあるSDカードを新しいRTXに刺し、
外部メモリボタンとDOWNLOADボタンを同時に3秒以上押す。
コピー終了後、自動的に再起動がかかる。
ただし、operation external-memory download permitが[off]になっている場合は、
動作しない。その場合は、operation external-memory download permit onとすれば、OK

NETVOLANTEの登録

netvolante-dns hostname host pp server=1 [HOSTNAME].netvolante.jp

ここが詳しく解説されてますね。
Lua Scriptを使って、VPN接続があった場合メール送信とかされてます。
参考になるので、僕も導入してみたい。
上記サイトを参考に、設定する。

VPN Connected Sending Mail

Lua Script(vpnmail.lua)
--------------------------##  設定値  ##--------------------------------

-- 検出したい SYSLOG の文字列パターン
ptn = " Call detected from user "

-- メールの設定
mail_tbl = {
	smtp_address = "(SMTPサーバーのアドレス)",
	from = "(送信元メールアドレス)",
	to = "(宛先メールアドレス)"
}

-- メールの送信に失敗した時に出力する SYSLOG のレベル (info, debug, notice)
log_level = "info"

----------------------##  設定値ここまで  ##----------------------------

------------------------------------------------------------
-- 現在の日時を取得する関数                               --
------------------------------------------------------------
function time_stamp()
	local t

	t = os.date("*t")
	return string.format("%d/%02d/%02d %02d:%02d:%02d", 
		t.year, t.month, t.day, t.hour, t.min, t.sec)
end

------------------------------------------------------------
-- メインルーチン                                         --
------------------------------------------------------------
local rtn, str

while (true) do
	rtn, str = rt.syslogwatch(ptn)  -- SYSLOG の監視(SYSLOG の出力が行われない間、呼び出し元の Lua タスクはスリープ状態になる)。
	if (rtn) and (str) then
		mail_tbl.text = string.format("ログに検索文字列が検出されました。\r\n検索文字列: \"%s\"\r\n\r\n", ptn)
		mail_tbl.text = mail_tbl.text .. str[1]
		mail_tbl.subject = string.format("VPNアクセスあり (%s)", time_stamp())
		rtn = rt.mail(mail_tbl)
		if (not rtn) then
			rt.syslog(log_level, "failed to send mail. (Lua スクリプトファイル名)")
		end
	end
end

TFTPで送信してみる。

RTX1200で操作
tftp host 192.168.X.Y ← 特定のIPアドレスからのTFTP接続(Windows)を許可。
show file list / all ← ルートディレクトリ配下すべてのディレクトリ・ファイルを表示。
make directory /lua ← ルートディレクトリ配下にluaディレクトリを作成。

送信マシンから操作
→ここでWindowsからTFTPでluaスクリプトを転送する。
 Windowsコマンドプロンプト例
  >tftp 192.168.X.Z(RTXルーターIP) put C:\xxx\vpnmail.lua(Windows格納Luaスクリプトパス) /lua/vpnmail.lua/pass(RTX Administratorパス)

  macでの例
  >tftp
    tftp> connect
    (to) 192.168.xxx.xxx
    put Desktop/vpnmail.lua /lua/vpnmail.lua/(Administrator PASSWORD)
Sent 1728 bytes in 0.0 seconds

RTX1200で操作
show file list / all 
[ / ]
2015/04/30 10:26:03 <DIR>           lua

[ /lua ]
2015/04/30 10:29:05            1728 vpnmail.lua

lua /lua/vpnmail.lua ← 格納したluaスクリプトを実行。
show status lua running ← 実行中のlua表示。

schedule at 2 startup * lua /lua/vpnmail.lua ← ルーター起動時にluaスクリプトを自動実行

show config
# show config 
# RTX1200 Rev.10.01.59 (Tue Aug 19 19:26:02 2014)
・・・略・・・
schedule at 2 startup * lua /lua/vpnmail.lua

そのまま拝借して済みません。

YAMAHA RTX1200 覚書2

RTX1200のIP ADDRESS、接続するマシンのIP ADDRESSの設定とシリアルケーブルの接続やドライバ設定が済めば、実際に接続してみる。

  • Windowsの場合 Teraterm pro であれば各項目を設定し、接続をSerialにしてOKを押せば、接続が確立される。
  • Macの場合、USB/SERIAL変換が必修となってくるので、ドライバのインストール後、ttyの何処に設定されたかを確認し、cuコマンドで接続する。
  • ログイン後、モード切替の必要があり一般ユーザーとadministratorがあり、一般ユーザーでは、config等の確認は出来るが設定を行うことが出来ない。
    設定するためには、administratorでログインしておく。
    一般ユーザーのプロンプト >
    administratorのプロンプト #
  • コマンド入力は、ASCIIで行う。表示する文字コードとは関係ありません。
    簡単に言うと2バイト文字を使わないという感じです。

接続例

cu -l /dev/tty.KeySerial1

ちなみに、RTX1200の文字コードはS-JISとなっている。あとで変更も可能ではあります。

利用可能な文字コードは、SJIS , EUC , ASCII がある。

文字コード コンソールの文字
SJIS 日本語
EUC 日本語
ASCII 英語
TELNETで接続

TELNETでログインする場合、ログイン待ちとなってからエンターを押すと、


Password:

と表示される。工場出荷時はパスワードが設定されてないので、エンターを押してログイン出来ます。

SSHで接続

SSHで接続可能な状態にするために若干の設定が必要となる。
セキュリティの観点から可能な限りSSHでの接続をお薦めする。

SSHでログイン可能な状態にするため、TELNETやシリアル接続した状態にしておく。

RTX1200では、SSH V2、公開鍵暗号DSAとRSAによりホスト認証、パスワード認証、送信データ圧縮、クライアントの生存確認、IPv6をサポートしており、SSH同時接続ユーザー数は8IDまでである。

RTX1200のCLIは「TAB」補完もサポートしています。

SSHログイン設定

RTX1200にログインし、administratorに昇格しておきます。

# login user USERNAME PASSWORD ;USERNAME ログインに使用するID名 、PASSWORD ログインに使用するパスワード # sshd host key generate ;RTX1200のssh hostkey を作成 # sshd service on ;sshd 起動 [/text] ヘルプの利用

> help
1) At any time, you can type a '?' to help your typing on the console.
   In case typing command name is not complete, lists the available keywords.
   In case complete, displays the command format and description.

2) You can use following functions when typing commands: keyword completion,
   putting a previous command on the line, moving cursor or editing the line.
   
     Note: 'Ctrl + X' means typing the Ctrl key and X key simultaneously.

   ------------------------------------------------------------------------
   Completes keyword                         : Tab key
   ------------------------------------------------------------------------
   Puts the previous command on the line     : Ctrl + p, or UP arrow key
   Puts the next command on the line         : Ctrl + n, or DOWN arrow key
   ------------------------------------------------------------------------
   Moves cursor forward one character        : Ctrl + f, or RIGHT arrow key
   Moves cursor backward one character       : Ctrl + b, or LEFT arrow key
   Moves cursor to the end of the line       : Ctrl + e
   Moves cursor to the beggining of the line : Ctrl + a
   ------------------------------------------------------------------------
   Kills the pending input                   : Ctrl + c
   Erases one character at the cursor        : Ctrl + d
> show config 
# RTX1200 Rev.10.01.59 (Tue Aug 19 19:26:02 2014)
# MAC Address : 00:a0:de:xx:xx:xx, 00:a0:de:xx:xx:xx, 00:a0:de:xx:xx:xx
# Memory 128Mbytes, 3LAN, 1BRI
# main:  RTX1200 ver=b0 serial=D2600xxxx MAC-Address=00:a0:de:xx:xx:xx MAC-Addr
ess=00:a0:de:xx:xx:xx MAC-Address=00:a0:de:xx:xx:xx
# Reporting Date: Apr 29 11:45:31 2015
login password encrypted *
administrator password encrypted *

YAMAHA RTX1200 覚書1

ヤマハ ギガアクセスVPNルーター RTX1200

工場出荷時のIP ADDRESSは、192.168.100.1に割当されている。

RTX1200にはGUIが搭載されており、192.168.100.1にアクセスするとWEB GUIである程度の徹底変更が可能。もちろん接続するPCのIP ADDRESSは、192.168.100.2~254にしておかなければならない。

WEB GUIで設定できる項目はCLIに比べて少ないので、結局はCLIで接続後 細かな設定をしていかなければならない。

iBUFFALO USBシリアルケーブル(USBtypeA to D-sub9ピン)1.0m ブラックスケルトン BSUSRC0610BSCLIに接続するにはシリアルケーブル(RC-232C)でPCと接続する必要がある。RTX1200にはRS-232cケーブルは付属しているが昨今のPCにはRC-232c端子が無いものも多いので、USB/SERAIL変換ケーブルを準備しておくと何かと重宝します。

またRTX1200と接続するには、クロスケーブルを使わないといけません。

CLIで接続するには、Windowsであれば標準搭載されているハイパーターミナルや、TeratermPro等が利用できますが、お薦めは、TeratermProです。

macだとcuコマンド等で利用可能です。

設定項目 設定値
データ転送速度 9600bps
キャラクタビット長 8
パリティチェック なし
ストップビット数 1
フロー制御 Xon/Xoff

接続の基本的項目は以上です。

次は、実際の仕方を書いてみたいと思う。