顯示文章

這裡允許您檢視這個會員的所有文章。請注意, 您只能看見您有權限閱讀的文章。


主題 - baldur

頁: [1]
1
Linux 討論版 / bind/name 設定問題請教
« 於: 2014-11-28 11:55 »
若有 4 個網域, 共用一個 named, 目前有 4 個正, 反解檔
( 有些名稱相同, 但 ip 不同, 例如 mail ip 192.168.10.12, 192.168.20.12 跨網域是不通的 )
192.168.10.rev
host.10 ( 內容包含不重覆 10~40 )
192.168.20.rev
host.20( 內容包含不重覆 10~40 )
192.168.30.rev
host.30( 內容包含不重覆 10~40 )
192.168.40.rev
host.40( 內容包含不重覆 10~40 )

反解 ok 各自獨立的檔案.
但正解小弟目前也是正解四個檔案獨立維護, 但內容有部份重覆但 ip 不同, 所以大雜燴全加在一起造成維護上的困擾.
在 named.conf, 或正解檔案加入 include , 但好似這參數不是這樣用的, 不能作動.
請問有相似的經驗可以提供給小弟參考嗎 ?

named.conf
==
lan10 { 192.168.10.0/24 }
zone lan10 in {
type master
file host10
include host10-20 }
==
或者

host10
==
192.168.10.1 IN A abc.c.com.tw
INCLUDE host10-20
==

host10-20
==
@                     IN A nono.c.com.tw
192.168.20.18 IN A superb.c.com.tw
==

以上~

========================我是分格線====================================================
更新 : include 前面要加 $
host10
==
$include host10-20
192.168.10.1 IN A abc.c.com.tw
==

2
假設 : 客戶 abc@tteml.org 寄給我方 tamy@skycloud.net,
         附件 nobody.bin nobodyhere ( 符合執行檔及 ELF 格式 )

MailScanner 有四種過濾規則, 我查看 MailScanner.conf 先後順序好似
( 由 1 到 4 )
(archives.filename 及 filename 那個才是針對附件呢 ? )
  1.  filename 2. filetype 3.  archives.filename 4. archives.filetype


所以是否我只需改 filename.rules 規則來跳過濾 ( 以下是都正確還是以那個為佳呢 ? )
1. Fromorto: *@tteml.org /etc/MailScanner/filename.allow.conf
2. Fromorto: tteml.org /etc/MailScanner/filename.allow.conf

而 filename.allow.conf 內容如下 : ( 是否正確呢 ? )
allow nobody\.bin$ - -
allow nobodyhere$ - -

設了以上規則, 仍是會擋附件 ..  :-X
有相關經驗的前輩請惠予指點一下... 或轉貼參考文章給小弟研讀 ???

[11/19]更新 :
由於沒時間測試除錯了, 所以
設定
Fromorto: tteml.org 讀取以下規則 :
archives.filename 及 filename 加入
allow nobody\.bin$ - -
allow nobodyhere$ - -
再將 archive.filetype 及 filetype 加入 allow ELF, execution
目前看來是可以的, 另使用者主旨還是會被修改加註警語.

3
小弟架設 ftp 站台後一直收到下載的連線均是以 anonymouse 登入來要 :
downloads/utilities/AFUDOS.zip
downloads/utilities/awdflash.zip

IP 不是固定的, 也不在特定國家範圍... fail2ban 就一直封鎖
一天大概 30 次, 10 幾個 ip 不同時間...

請問有先進有類似的經驗嗎 ?

4
Linux 討論版 / Cacti 安裝使用問題 !!
« 於: 2014-11-05 15:08 »
小弟安裝
cacti 0.8.8b
 1. 外掛 weathermap 0.9.7c 地圖的圖片確無法顯示出來 ?
 2. 安裝在 cacti 啟用 spine 會報錯, 但嘗試在 shell 中加入  --verbosity=3 是可以作動的...

請問列位先進有解決方法嗎?

== weathermap ==
將 weathermap/config 及 output own 改成 cacti, mod 改成 777
如附件, 地圖的圖片確無法顯示出來 ?
* 有試過在 lib/poller-common.php 加入 sleep(16); 來延遲, 但結果相同.

若我直接鍵入 http://ip address/plugins/weathermap/output/231424124215415.png
是可以看到圖片的.
11/10 更新 :
cacti 的範例是建立在 http://ipaddress/cacti 下的.
所以在不知道如何修正 weathermapxxx.php 內容下, 在 httpd.conf 先建立以上的讀取規則
就可以正常使用這個功能了. 昏  :-\
=====================

== spine 0.8.8b ==
安裝放在 /usr/local/spine/bin/spine
設定檔在 /usr/local/spine/etc/spine.conf

手動執行 cacti:/usr/share/spine/bin/spine
報錯 : SPINE: Poller[0] ERROR: SS[999] Script Server did not start properly return message was
改成除錯模式可以執行.
              cacti:/usr/share/spine/bin/spine -- --verbosity=3
11/10 更新 :
只要有值沒有正確回應就會有這個告警, 但不影響功能.
所以只能先不理它了.
spine Processes:1 Threads:1 Hosts:11 HostsPerProcess:11 DataSources:338 RRDsProcessed:184
spine ( 0.2965ms ) 大概是 cmd.php( 0.6247ms )(  二倍快 ( 一個執行緒下 )
=================



5
Linux 討論版 / Re: Linux DNS 問題
« 於: 2014-10-20 14:35 »
不知各位大大有沒有遇過一個關於DNS server的問題.(我用的是9.8.2rc1-RedHat-9.8.2-0.23.rc1.el6_5.1 版本)
....

會不會你的 dns ip 被對方給鎖了呢 ? <== 我猜是這個.

6
小弟系統原掛載的 1TB 硬碟有壞軌, 有執行過修復來記錄並搬移 superblock !
日前使用 clonezilla 中的硬碟對拷 ( 1TB => 2TB ), 目前遇到怪問題如下 /dev/sda3 無法掛載 ?? ( 已解決 )

fdisk -l 有三個 partition
   Device Boot      Start         End      Blocks   Id  System
/dev/sda1   *           1       30214   242688000   83  Linux
/dev/sda2           30214       30401     1506304   82  Linux swap / Solaris
/dev/sda3           30401      243201  1709316704+  83  Linux

但 df 只有二個
Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/sda1            238879328  13131060 213613868   6% /
tmpfs                   771328         0    771328   0% /dev/shm

執行 mkfs.ext4 /dev/sda3 錯誤訊息 :

mke2fs 1.41.12 (17-May-2010)
Could not stat /dev/sda3 --- No such file or directory

The device apparently does not exist; did you specify it correctly?

執行  partprobe 錯誤訊息 :
Warning: WARNING: the kernel failed to re-read the partition table on /dev/sda (Device or resource busy).  As a result, it may not reflect all of your changes until after reboot.

 ;D 更新 : 使用 kpartx 重新掃一次就可以製作(mkfs)及掛載 sda3 了 ( fdisk 做完後重新開機也可以 )
 ;D 加註 : 後期作業系統如有使用 dmsetup 請先移除欲掛載的 partition 後, 其磁碟才可立即做為它用喔.
  dmsetup remove /dev/sdb1

7
Linux 討論版 / CWMP TR069 HOWTO ??
« 於: 2014-09-17 13:54 »
小弟手邊有很多設備, 想利用 CWMP 來管理.
上網下載了 openacs 來使用.
* 這程式碼是建立在 java 平台上的, 範例是使用 mysql 做為資料庫平台.

建立完成後, 將所有設備的 URL 指向 http://ip:8080/openacs/acs, 帳密均為 openacs.
依使用所述, openacs 伺服器收到用戶端 (client ) 的 inform 後即自行建立 hardware 以利管理.
* Find CPE 這裡應該要能看到已回報的設備內容.

但我這只能由 netstat 看到有 client 連入但 timeout 的連線.
tcpdump 也可以看到各間隔時間內各終端的封包.

目前 http://ip:8080/openacs 內的 Fine CPE 並沒有終端/client 可以檢視 ???
==
少安裝了 java sdk ... 已解決 !
==

8
小弟想請教各位大神, 附件內第一列有 ( date, po, item, o.qty, s.qty, r.qty)
1. 目前需要計算相同年月下, o.qty 小於 20 但 item 不重複, 及重複的次數.
2. 加總各年月下不同週數的 s.qty 依PO 分類
對陣列及多條件計算苦手中, 可否惠予指點呢 ?
環境為 office 2000 excel.

檢查相同年月是可以正常計數.
=SUMPRODUCT((YEAR(test!$A$2:$A$1018)=YEAR($a3))*(MONTH(test!$A$2:$A$1018)=MONTH($a3)))
加上小於多少數量, 但算出來的數值是 D 這欄的全部加總......
=SUMPRODUCT((YEAR(test!$A$2:$A$1018)=YEAR($a3))*(MONTH(test!$A$2:$A$1018)=MONTH($a3))*countif(test!$d2:D1018,"<20"))
加上有多少重複, 也還是 D 有多少重複而不是小弟要的數值呢....
=SUMPRODUCT((YEAR(test!$A$2:$A$4000)=YEAR($A3))*(MONTH(test!$A$2:$A$4000)=MONTH($A3))*COUNTIF(test!$D$2:$D$4000,test!$D$2:$D$4000))

思考中....

9
Linux 討論版 / 關於 selinux 如何除錯.....
« 於: 2014-09-02 17:37 »
小弟目前嘗試在 selinux 功能內, 安裝一套件 io-stat ( PERL )
這套件是使用 iostat 讀出 io 狀態並將值寫入 /tmp/iostat
供 snmp 來讀取. ( snmp_t, temp_t read geterr )
會產生 AVC, denied 錯誤告警.

但依據 google 搜尋出來的建議, 將 audit.log 內的錯誤利用
audit2allow 來產生例外模組, 並由 semodule 來掛載.
semodule -l 檢查模組已掛入.

目前 audit.log 內已沒有錯誤但 snmp 仍無法讀出數值.

( setenforce = 0 功能就正常可讀出 )

請問小弟接下來如何除錯呢 ?

10
小弟最近安裝 postfix, 有很多擋垃圾郵件的服務都關門了, 還有那些是可用的呢 ?

對岸的 cblless.anti-spam.org.cn 查不到 IP 及
zen.spamhaus.org 查名字都變為 zen.spamhaus.org.com.tw 都不可用的樣子. 是否都用不上呢 ?

以上, 請列位先進解惑呢 ..


11
小弟目前在套用網路上某人所寫, 用來分析郵件收送數量並給 cacti 繪製的 perl 程式, 除了 mess_rejected 一直
為 0 沒有加總, 其它均正常有數值及加總.

有試著將 if((($line=~/NOQUEUE/) && ($line=~/reject\=/)) || ($line =~/rejecting/)){
改為
if($line=~/reject/){
kill 及重新執行, 但仍是數值一直為 0  ... ( 用 tail 去看 maillog 可以看到有 NOQUEUE 及 reject )

請問如何除錯呢 ??



#!/usr/bin/perl
$debug=0;       # 1=Debug messages are displayed, 0=No debug messages are displayed
$daemon=1;      # 1=Daemonize the program, 0=Run interactive
$syslog=1;      # 1=Log stuff to syslog, 0=No logging to syslog
$self="/etc/cacti/watchmaillog/watchmaillog.sh";  # Location of this script
$counterfile="/etc/cacti/watchmaillog/watchmaillog_counters";   # Location to store the counter file
$resetfile="/etc/cacti/watchmaillog/watchmaillog_reset";   # Location of the reset counter flag file
$pidfile="/var/run/watchmaillog.pid";   # Location of the running process ID file (used in logrotate)

use Sys::Syslog;
use POSIX;
use Time::HiRes qw( gettimeofday tv_interval );

$|=1;

my $sigset = POSIX::SigSet->new();
my $hupaction = POSIX::SigAction->new('hup_signal_handler',
                                     $sigset,
                                     &POSIX::SA_NODEFER);
my $osigaction = POSIX::SigAction->new('signal_handler',
                                     $sigset,
                                     &POSIX::SA_NODEFER);
POSIX::sigaction(&POSIX::SIGHUP, $hupaction);
POSIX::sigaction(&POSIX::SIGINT, $osigaction);
POSIX::sigaction(&POSIX::SIGTERM, $osigaction);


if($daemon){
        $pid=fork;
   if($pid) {
      open(PID,">".$pidfile) or die "Cannot open PID file: $!.";
         print PID ("$pid\n");   # Write the PID out to the PID file for logrotate
      close(PID);
   }
        exit if $pid;
        die "Couldn't fork : $!" unless defined($pid);
        setsid() or die "Can't start a new session: $!";
   $time_to_die=0;
}

sub signal_handler {
        $time_to_die=1;
}

sub hup_signal_handler {
      if($debug){print "got SIGHUP\n";}
      close(MAILLOG);
      exec($self) or die "Couldn't restart: $!\n";
}

if($syslog){openlog("watchmaillog","pid","daemon");}
if($syslog){syslog("notice","Starting.");}
if($debug){print("watchmaillog is starting.\n");}

# Main part of the program
open(MAILLOG, "tail -n 0 -f /var/log/maillog|") or die "Cannot open maillog: $!.";
my $line="";
while(!$time_to_die){
   $line=<MAILLOG>;
   # Look for received messages where the sender is not from our domain(s)
               if(($line=~/from\=/) && ($line!~/\@domain1.com|\@domain2.com/)){
      $item="mess_recv";
      &readcounterfile;
      $counter{$item}++;
      if($debug){print("Found an inbound message, incrementing the message recieve counter to $counter{$item}.\n");}
      &writecounterfile;
   }
   # Look for messages sent to our domain(s), indicates an inbound message relayed to an internal server
   if(($line=~/=sent/) && ($line=~/\@domain1.com|\@domain2.com/)){
      $item="mess_relay";
      &readcounterfile;
      $counter{$item}++;
      if($debug){print("Found an clean inbound message, incrementing the clean message recieve counter to $counter{$item}.\n");}
      &writecounterfile;
   }
   # Look for sent messages to NOT our email domain(s), indicates an outbound message
   if(($line=~/=sent/) && ($line!~/\@domain1.com|\@domain2.com/)){
      $item="mess_sent";
      &readcounterfile;
      $counter{$item}++;
      if($debug){print("Found an outbound message, incrementing the message sent counter to $counter{$item}.\n");}
      &writecounterfile;
   }
   # Look for rejected messages
   if((($line=~/NOQUEUE/) && ($line=~/reject\=/)) || ($line =~/rejecting/)){
      $item="mess_rejected";
      &readcounterfile;
      $counter{$item}++;
      if($debug){print("Found a rejected message, incrementing the message rejected counter to $counter{$item}.\n");}
      &writecounterfile;
   }
   # Look for MailScanner spam scanning batch results
   if($line=~/Spam\ Checks\:\ Found/){
      $item="spam";
      $spam_count_pos = index($line,"Spam\ Checks\:\ Found");
      $spam_count_pos2 = index($line, "\ spam\ messages");
      $spam_count = substr($line,($spam_count_pos+19),($spam_count_pos2-($spam_count_pos+19)));
      &readcounterfile;
      $counter{$item}=$counter{$item}+$spam_count;
      if($debug){print("Found $spam_count SPAM in the MailScanner batch, incrementing the spam counter to $counter{$item}.\n");}
      &writecounterfile;
   }
   # Look for MainScanner virus scanning batch results
   if($line=~/Virus\ Scanning\:\ Found/){
      $item="virus";
      $virus_count_pos = index($line,"Virus\ Scanning\:\ Found");
      $virus_count_pos2 = index($line, "\ viruses");
      $virus_count = substr($line,($virus_count_pos+22),($virus_count_pos2-($virus_count_pos+22)));
      &readcounterfile;
      $counter{$item}=$counter{$item}+$virus_count;
      if($debug){print("Found $virus_count viruses in the MailScanner batch, incrementing the virus counter to $counter{$item}.\n");}
      &writecounterfile;
   }
   # Look for MailScanner waiting messages
   if($line=~/New\ Batch\:\ Found/){
      $item="mess_waiting";
      $mess_waiting_pos = index($line,"New\ Batch\:\ Found");
      $mess_waiting_pos2 = index($line,"\ messages\ waiting");
      $mess_waiting = substr($line,($mess_waiting_pos+17),($mess_waiting_pos2-($mess_waiting_pos+17)));
      &readcounterfile;
      $counter{$item}=$mess_waiting;
      if($debug){print("Mailscanner found $mess_waiting messages waiting, setting the mess_waiting counter to $counter{$item}.\n");}
      &writecounterfile;
   }
}
close(MAILLOG);
if($debug){print("watchmaillog is ending.\n");}
if($syslog){syslog("notice","Ending.");}
unlink($pidfile);

# Subroutine to read the contents of the counter file
sub readcounterfile {
   # Read the counter values from the file
   if($debug){print("Reading contents of counter file.\n");}
   open(COUNTER,$counterfile);
   while($line=<COUNTER>){
      @line=split(/\:/,$line);
      chop($line[1]); # Drop the trailing LF off the value
      # Check for reset counter flag file
      if(-e $resetfile."_".$line[0]){
         if($debug){print("Reset counter flag file found for counter $line[0], resetting counter value to 0.\n");}
         $counter{$line[0]}=0;
         unlink($resetfile."_".$line[0]);
      } else {
         $counter{$line[0]}=$line[1];
      }
      if($debug){print("Counter $line[0] = $counter{$line[0]}.\n");}
   }
   close(COUNTER);
}

# Subrouting to write the contents of the counter file
sub writecounterfile {
   if($debug){print("Writing counter values to counter file.\n");}
   open(COUNTER,">".$counterfile);
   # Write each counter item out to the counter file
   foreach $item (sort keys(%counter)) {
      print COUNTER ($item."\:".$counter{$item}."\n");
   }
   close(COUNTER);
   chmod(0666,$counterfile);
}

12
MailScanner 已許久沒有更新了, 請問有後繼者嗎 ? (  OS centos 6.5 )

近期安裝 4.84.6 其內建的 update_bad_phishing_sites , 已經不能正常作動了.

依 MailScanner 2014/6/4 討論串去修正 url 到 www.mailscanner.eu 及附加上判讀 cache 時間的修正碼後, 接受更新仍是不順

會更新但斷斷續續
Retrieving http://www.mailscanner.eu/2014-312.6
Failed to retrieve http://www.mailscanner.eu/2014-312.6 at /usr/sbin/update_bad_phishing_sites line 219.

請問板上有人這方面的經驗嗎 ?

以上 ~

13
小弟實測發送( upload )可以透過 tc qdisc 及 filter 來達成限速的功能, 但對接收( download )沒有效果 ??

  Host.a -- eth -- Host.b

Host.b => host.a 有效可限速
Host.a => host.b 沒有效果

還是有其它工具可以達成這限速的需求呢 ?


Example scripte :

/sbin/tc qdisc add dev eth4 root handle 1: htb default 10
/sbin/tc class add dev eth4 parent 1: classid 1:1 htb rate 100mbit burst 15k
/sbin/tc class add dev eth4 parent 1:1 classid 1:10 htb rate 5mbit burst 15k
/sbin/tc class add dev eth4 parent 1:1 classid 1:20 htb rate 15mbit burst 15k
/sbin/tc qdisc add dev eth4 parent 1:10 handle 10: sfq perturb 10
/sbin/tc filter add dev eth4 protocol ip parent 1: prio 1 u32 match ip dst 0.0.0.0/0 flowid 1:10
/sbin/tc filter add dev eth4 protocol ip parent 1: prio 1 u32 match ip src 0.0.0.0/0 flowid 1:10

14
最近不死心改用 tar 安裝, 但仍一樣有這告警, 只好再一項一項的找...
應該是原始作者群一開始就忘了幫 postfix-sasl 加入 ignoreregex 這一行了...

結案 =_=



小弟是採用 yum 安裝的
fail2ban-0.8.11-2.el6

設定所需的服務後, 啟動就得到以下的告警訊息

    Starting fail2ban: WARNING 'ignoreregex' not defined in 'Definition'. Using default one: ''

請問有前輩有相關的經驗嗎 ?

小弟試著在 jail.conf  default 中加入 ignoreregex =  也是會有這個告警
google 上相關討論很少有這方面的討論, 請惠予指教呢 !
目前 filter.d 內的所有 conf 設定, 其definition 內的 ignoreregex 都沒有去更改.

以上

15
框架頁面 http://lcss.hinet.net
左列認証連結位置 http://lcss.hinet.net/login-new.pl
例如我在 A 主機設定一組網域名稱並用以下連結來自動跳轉, 但會被要求回主頁填寫帳密.
  <meta http-equiv="Refresh"content="0;URL=http://lcss.hinet.net/login-new.pl?username=xxx&password=zzz">

有其它方式及建議嗎 ?

請不吝指教....

16
Centos 5
sendmail 8.13.8-8.1
saslauthd ( cyrus 2.1.22-7 )
fail2ban 0.8.4-29

named, pop3, ftp, ssh 均可正常動作.
但 sasl <== 無法作動.

系統內的 /var/log/maillog 沒有 sasl 認証錯誤的記錄及 /var/log/secure 關於
sasl 認証錯誤均沒有記錄到遠端的 ip 位置( rhost )

有嘗試將 sendmail.mc 的 loglevel 改為 10或16 再m4 至 sendmail.cf 但
好似最大就只至 9

手動 saslauthd 進入 -d 偵誤模式, 可以看到認証錯誤, 但一樣看不到遠端的 ip 位置

請問列位先進有解決方案嗎 ?

頁: [1]