顯示文章

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


主題 - johnpupu

頁: [1]
1
BSD 討論版 / FreeBSD 6.2 Release
« 於: 2007-01-14 02:07 »
20070114:
        FreeBSD 6.2-RELEASE.
今天更新src 時發現的。

2
BSD 討論版 / FreeBSD 6.1 Released
« 於: 2006-05-09 09:52 »
有興趣的可以去補貨了
ftp://ftp.tw.freebsd.org/pub/FreeBSD/releases/

3
BSD 討論版 / iconv 還原?
« 於: 2006-04-17 13:47 »
請問一下~我要是把原本已經是utf-8
不小心用了iconv -c -f big5 -t utf-8 轉了
有沒有辦法還原~~

4
BSD 討論版 / php4.4.2 裝ZendOptimizer 問題
« 於: 2006-02-23 21:07 »
我今天在ports 中裝了ZendOptimizer
後訊息叫我加入
[Zend]
zend_optimizer.optimization_level=15
zend_extension_manager.optimizer="/usr/local/lib/php/20020429/Optimizer"
zend_extension_manager.optimizer_ts="/usr/local/lib/php/20020429/Optimizer_TS"
zend_extension="/usr/local/lib/php/20020429/ZendExtensionManager.so"
zend_extension_ts="/usr/local/lib/php/20020429/ZendExtensionManager_TS.so"
到/usr/local/etc/php.ini裡
我重啟apache 後就啟不了了
且http-error.log 沒東西
用/usr/local/sbin/httpd去強啟也是沒訊息
而把zend的那些註解掉卻又可以啟動~~
不知道有沒有大大們碰過這樣的問題

5
剛看完~~覺得頗有內容的
介紹給大家~希望對大家有所啟發

http://www.twocw.net/mitworld/video/266/

6
鳥哥臨時公佈欄 / 鳥站好像在吃晚餐
« 於: 2005-12-30 18:16 »
又在休息了?

7
因為客戶反應在大陸有時後能收有時後不能收mail
很奇怪~~搜尋了版上的一些文章
好像都是網段被擋掉的問題~~
想請問一下~~網段都被擋掉了~~
那這樣vpn還有用嗎?
不知道大家是怎麼解決這方面的問題的~~謝謝喔

8
活動/聚會區 / 不知道十二月的活動是?
« 於: 2005-11-30 13:32 »
期待十二月的活動
上梁大師的資料庫的時後有聽到
12/17好像會有聚會?
會是直接這個活動嗎?

9
BSD 討論版 / 簡單的edm 程式
« 於: 2005-11-15 14:03 »
用perl 寫的一個小小的edm發信
#! /usr/bin/perl

die 'Prarmeter error!(./sendout.pl eml list)\n' if (@ARGV!=2);

# eml file
open(FH, $ARGV[0]);
while(<FH>) {
  $mail_body .= $_;
}
close(FH);

# list file
open(FH, $ARGV[1]);
while (<FH>) {
  chomp();
  $temp_body = $mail_body;

  $temp_body =~ s/\$\$rcpt\$\$/$_/g;

  open(PH, "| sendmail -t");
  print PH $temp_body;
  close(PH);
  print "Sending to $_\n";
}
close(FH);

10
BSD 討論版 / FreeBSD 中文化網站 --掛了?
« 於: 2005-11-09 23:11 »
請問一下~~
台灣的freebsd 中文手冊站是不是掛了呀
我看他掛好多天了
http://netlab.cse.yzu.edu.tw/~statue/freebsd/

11
活動/聚會區 / 期待11月的活動
« 於: 2005-10-26 17:05 »
不知道11月的活動的題目是什麼
很期待`

12
BSD 討論版 / 自動備份構想
« 於: 2005-10-12 16:27 »
小第的這個構想是想用程式的比對方法來做自動的備份
因為小第目前手邊有兩台主機
一台簡稱A
一台簡稱B
在A主機中有一個/home1
在b主機中也有一個/home1
小第目前目前的備份方法是寫一個shell
時間一到就把A的/HOME1 TAR起來然後SCP 過去B主機的/HOME1
不過這個方法~~小第覺得要是資料量到一個程度的時後在TAR 本身就滿消號資原的
然後TAR完又要SCP過去B主機,雖然是內部連線~不過資料量大,還是頗浩頻寬的對吧。
所以目前是想說
我完完整整的把A主機的HOME1 複制一份到B主機的HOME1去

所以應該會有三種情況
第一種應該是
A主機有B主機沒有
則從A主機COPY過去一份至B主機
第二種就是
A主機沒有B主機有
則刪除B主機中的該檔
第三種就是
A主機有B主機也有,但是時間不一致,則表示修改過,
就把A主機中的該檔COPY過去B主機中

不知道小第這樣的做法可行與否~及是否當資料量大時--假設100G
會否很消號系統資源?
目前想到去比對時間的方法應該是用find

不知道有沒有大大可以提供一點意見^^
先謝謝囉~~~

13
因為在ie下用squirrel mail 收附加檔案
會出現亂碼而小第也自已做了一個utf-8的語系~不過還是宣告失敗
自已做的utf-8 語系雖然收信等等都ok不過收別人寄來的信幾都是都big5 所以這個方法也是不work的
後來去分析了一下有關header封包中的filename的記錄如下
Content-dis postition: inline ; filename="%20%20%%20%20%%20%2020050816%BA%F4%B8%F4%B8%EA%B7%BD%B3W%B9%BA.xls"\r\n\r\n

然後去程式中找有關header的程式
grep -R SendDownloadHeader *
發現在mine.php中有提到
mime.php: * function SendDownloadHeaders - send file to the browser
mime.php:function SendDownloadHeaders($type0, $type1, $filename, $force, $filesize=0) {
mime.php:}  // end fn SendDownloadHeaders

so 看了一下mine.php
如下:
if ($isIE) {
        $filename=rawurlencode($filename);
        header ("Pragma: public");
        header ("Cache-Control: no-store, max-age=0, no-cache, must-revalidate"); // HTTP/1.1
        header ("Cache-Control: post-check=0, pre-check=0", false);
        header ("Cache-Control: private");

        //set the inline header for IE, we'll add the attachment header later if we need it
        header ("Content-Disposition: inline; filename=$filename");
    }

    if (!$force) {
        // Try to show in browser window
        header ("Content-Disposition: inline; filename=\"$filename\"");
        header ("Content-Type: $type0/$type1; name=\"$filename\"");
    } else {
        // Try to pop up the "save as" box

        // IE makes this hard.  It pops up 2 save boxes, or none.
        // http://support.microsoft.com/support/kb/articles/Q238/5/88.ASP
        // http://support.microsoft.com/default.aspx?scid=kb;EN-US;260519
        // But, according to Microsoft, it is "RFC compliant but doesn't
        // take into account some deviations that allowed within the
        // specification."  Doesn't that mean RFC non-compliant?
        // http://support.microsoft.com/support/kb/articles/Q258/4/52.ASP

        // all browsers need the application/octet-stream header for this
        header ("Content-Type: application/octet-stream; name=\"$filename\"");

        // http://support.microsoft.com/support/kb/articles/Q182/3/15.asp
        // Do not have quotes around filename, but that applied to
        // "attachment"... does it apply to inline too?
        header ("Content-Disposition: attachment; filename=\"$filename\"");

        if ($isIE && !$isIE6) {
.......
程式自行的幫ie 去判斷~~
不過ie不吃這套`~so把

if ($isIE) {
        //$filename=rawurlencode($filename);    <==這行註解掉
        header ("Pragma: public");

就ok了~~

不知道之前有沒有人發表過~~提出來給有用小松鼠的人參考

14
BSD 討論版 / pam-mysql 6.0 & pam-mysql5 認証問題
« 於: 2005-09-29 14:14 »
小第最近在裝virtual host 的postfix, courier-imap , mysql 時
發現要是裝pam-mysql 6.0 的時後在認証不會過,而裝回pam-mysql5的時後就認証通過

很奇怪不知道為什麼~~
我也看了mysql的log

pam-mysql.5 的mysql.log如下
050929 14:09:17      41 Connect     postfix@localhost on postfix
                     41 Init DB     postfix
                     41 Query       SELECT password FROM mailbox WHERE username='johnpupu'
                     41 Quit
                     36 Query       SELECT `goto` FROM alias WHERE address='xxx.com.tw'
                     37 Query       SELECT description FROM domain WHERE domain='xxx.com.tw'
                     38 Query       SELECT `goto` FROM alias WHERE address='johnpupu@xxx.com.tw'
                     39 Query       SELECT `goto` FROM alias WHERE address='johnpupu@xxx.com.tw'
                     36 Query       SELECT `goto` FROM alias WHERE address='xxx.com.tw'
                     37 Query       SELECT description FROM domain WHERE domain='xxx.com.tw'
                     42 Connect     postfix@localhost on postfix
                     42 Query       SELECT maildir FROM mailbox WHERE username='johnpupu@xxx.com.tw'


pam-mysql.6 version的mysql.log 如下

050929 14:05:28     224 Connect     postfix@localhost on postfix
                    224 Init DB     postfix
                    224 Query       SELECT password FROM mailbox WHERE username = 'johnpupu'
                    224 Quit
                    225 Connect     postfix@localhost on postfix
                    225 Init DB     postfix
                    225 Query       SELECT 1, password FROM mailbox WHERE username = 'johnpupu'
                    225 Quit
在紅色的那兩行
Select 出來都是空值且
不過裝pam-mysql6 的話會多了一個1

確定在postfix 中的設定是好的
在使用webmail 寄一切順利~~

不知道有沒有大大們有遇到相同的情形
還是小第那邊有錯~~再請大大們指點

15
BSD 討論版 / perl 5.6 & perl 5.8.7
« 於: 2005-09-22 23:11 »
想請問一下~在freebsd中有兩套perl 會不會造成嚴重的問題呢
是不是我在裝好freebsd的時後就把perl 5.6給移掉會比較好呢?
不知道會有什麼影嚮?

16
用mysql來做samba的認証。

文件可以在/usr/local/share/examples/samba/pdb/mysql裡下找到
首先先建資料庫的table

CREATE TABLE user (
logon_time int(9),
logoff_time int(9),
kickoff_time int(9),
pass_last_set_time int(9),
pass_can_change_time int(9),
pass_must_change_time int(9),
username varchar(255),
domain varchar(255),
nt_username varchar(255),
nt_fullname varchar(255),
home_dir varchar(255),
dir_drive varchar(4),
logon_script varchar(255),
profile_path varchar(255),
acct_desc varchar(255),
workstations varchar(255),
unknown_str varchar(255),
munged_dial varchar(255),
uid int(9) NOT NULL DEFAULT "0" PRIMARY KEY auto_increment,
gid int(9),
user_sid varchar(255),
group_sid varchar(255),
lm_pw varchar(255),
nt_pw varchar(255),
acct_ctrl int(9),
unknown_3 int(9),
logon_divs int(9),
hours_len int(9),
unknown_5 int(9),
unknown_6 int(9) default "1260",
bad_password_count int(9),
logon_count int(9)
);
然後新增一筆資料至 user
小第只新增了username, domain, homedir, uid, gid, user_sid, group_sid, lm_pw, nt_pw這些欄位

然後改smb.conf
[global]
netbios name = FOOBAR
workgroup = TESTGROUP
security = domain
domain logons = yes
domain master = yes
passdb backend = mysql:mysql (以下請改成你自已的mysql設定)
mysql:mysql host = localhost
mysql:mysql user = samba
mysql:mysql password = ambas
mysql:mysql database = samba

以上這些資料在網路上都找得到~~不過你還是沒法透過mysql做認証登入

原因在user_sid這個欄位要是這邊沒有加如下資料

S-1-5-21-1573749901-186869194-3963891256-501的話,則會出現如下訊息。

passdb/pdb_mysql.c:row_to_sam_account(93)

No user SID retrieved from database!

小第這邊的解法應該比較算是權宜之計 因為user_sid 這個欄位是nt user 的sid
小第不太清楚自已登入到samba 的機器的sid
所以就亂co了一個sid去填入mysql
然後
用smbpasswd 去改密碼
因為我們在mysql加的密碼就算用encrypt samba還是看不懂~~

samba疑惑一
在設定完example/samba/pdb/mysql中的資料後
我啟動的時後,在mysql的log中有出現
SELECT logon_time,logoff_time,kickoff_time,pass_last_set_time,
pass_can_change_time,pass_must_change_time,username,
domain,nt_username,nt_fullname,home_dir,dir_drive,logon_script,
profile_path,acct_desc,workstations,unknown_str,munged_dial,user_sid,
group_sid,lm_pw,nt_pw,NULL,acct_ctrl,logon_divs,hours_len,
bad_password_count,logon_count,unknown_6 FROM user
WHERE user_sid = 'S-1-5-11-1543741201-186861294-3963291256-502'
如下訊息~~
這點還滿疑惑的,不知道他為什麼在我啟動samba的時後,在mysql會多出這筆log,且不知道這個sid是server的sid或是小第遠端putty的sid
而小第的user_sid中的資料就是co這邊的sid

samba疑惑二
在我從windows中連到samba的時後,在打帳號密碼之前~~
小第實際測試過,在mysql log中會出現
SELECT logon_time,logoff_time,kickoff_time,pass_last_set_time,
pass_can_change_time,pass_must_change_time,username,domain,
nt_username,nt_fullname,home_dir,dir_drive,logon_script,profile_path,
acct_desc,workstations,unknown_str,munged_dial,user_sid,group_sid,
lm_pw,nt_pw,NULL,acct_ctrl,logon_divs,hours_len,bad_password_count,
logon_count,unknown_6 FROM user WHERE username = 'John'
where 的username 都是windows的帳號
可是很不幸的是都沒有辦法這樣直接登入成功~

三位一体思考

小第會想用mysql來管理samba 最主要的原因是因為
小第打算把postfix, proftpd, samba 的帳號和密碼統一管理
然後寫一隻程式可以在web介面去做帳號管理

目前在postfix 和proftpd 已經克服 ,而samba 的登入方法也克服不過很不幸的是
samba的加密的格式和postfix 和proftpd 不一樣~沒辦法吃同一個格式~~
目前想想只有透過另一條路pam 來做samba 和mysql的帳號認証~

17
這是小第摸索了一個多月的心得

Mail Server 安裝
先裝Mysql(這邊是裝mysql5)
裝mysql來做認証管理和帳戶管理
建postfix資料庫

create database postfix
然後建資料表
CREATE TABLE `admin` (
`username` varchar(255) NOT NULL default '',
`password` varchar(255) NOT NULL default '',
`domain` varchar(255) NOT NULL default '',
`created` datetime NOT NULL default '0000-00-00 00:00:00',
`modified` datetime NOT NULL default '0000-00-00 00:00:00',
`active` tinyint(4) NOT NULL default '1',
PRIMARY KEY (`username`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE `alias` (
`address` varchar(255) NOT NULL default '',
`goto` text NOT NULL,
`domain` varchar(255) NOT NULL default '',
`created` datetime NOT NULL default '0000-00-00 00:00:00',
`modified` datetime NOT NULL default '0000-00-00 00:00:00',
`active` tinyint(4) NOT NULL default '1',
PRIMARY KEY (`address`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE `domain` (
`domain` varchar(255) NOT NULL default '',
`description` varchar(255) NOT NULL default '',
`aliases` int(10) NOT NULL default '-1',
`mailboxes` int(10) NOT NULL default '-1',
`maxquota` int(10) NOT NULL default '-1',
`transport` varchar(255) default NULL,
`backupmx` tinyint(1) NOT NULL default '0',
`created` datetime NOT NULL default '0000-00-00 00:00:00',
`modified` datetime NOT NULL default '0000-00-00 00:00:00',
`active` tinyint(4) NOT NULL default '1',
PRIMARY KEY (`domain`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE `domain_admins` (
`username` varchar(255) NOT NULL default '',
`domain` varchar(255) NOT NULL default '',
`created` datetime NOT NULL default '0000-00-00 00:00:00',
`active` tinyint(4) NOT NULL default '1'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE `log` (
`timestamp` datetime NOT NULL default '0000-00-00 00:00:00',
`username` varchar(255) NOT NULL default '',
`domain` varchar(255) NOT NULL default '',
`action` varchar(255) NOT NULL default '',
`data` varchar(255) NOT NULL default ''
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE `mailbox` (
`username` varchar(255) NOT NULL default '',
`password` varchar(255) NOT NULL default '',
`name` varchar(255) NOT NULL default '',
`maildir` varchar(255) NOT NULL default '',
`quota` int(10) NOT NULL default '-1',
`domain` varchar(255) NOT NULL default '',
`created` datetime NOT NULL default '0000-00-00 00:00:00',
`modified` datetime NOT NULL default '0000-00-00 00:00:00',
`active` tinyint(4) NOT NULL default '1',
PRIMARY KEY (`username`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;

CREATE TABLE `vacation` (
`email` varchar(255) NOT NULL default '',
`subject` varchar(255) NOT NULL default '',
`body` text NOT NULL,
`cache` text NOT NULL,
`domain` varchar(255) NOT NULL default '',
`created` datetime NOT NULL default '0000-00-00 00:00:00',
`active` tinyint(4) NOT NULL default '1'
) ENGINE=MyISAM DEFAULT CHARSET=utf8;
開postfix權限

GRANT ALL ON postfix.* TO postfix@localhost IDENTIFIED BY "secret"; (密碼可以改你爽的)
ps 也可以用匯入的方式。


----------------------------------------------------------------------------------------
實作:資料庫的備份
使用Putty連線到主機。
執行以下的指令,將資料匯出到 Script檔:
mysqldump -p lib13 > db_backup.sql
輸入你的密碼後,完成匯出。


實作:刪除 Guestbook 資料表
使用Putty連線到主機。
在 Linux Shell 執行以下的指令:
mysql -p
輸入你的密碼後,進入 mysql 提示。
在mysql 提示下,輸入以下的命令,選用匯入的資料庫。
use lib13;
在mysql 提示下,輸入以下的命令,刪除 Guestbook 資料表。
drop table Guestbook;
在mysql 提示下,輸入以下的命令,秀出資料庫中所有的資料表。
show tables;

實作:資料庫的還原
使用Putty連線到主機。
在 Linux Shell 執行以下的指令:
mysql -p lib13 < db_backup.sql
輸入你的密碼後,完成還原。
---------------------------------------------------------------------------------------


接下來安裝pam-mysql(主要是要做courier 和mysql間的認証)
安裝 pam_mysql
# cd /usr/ports/security/pam-mysql;make install clean
這兒有一些 pam_mysql 文件 /usr/local/share/doc/pam_mysql

建立捷徑
# ln -s /usr/local/lib/pam_mysql.so /usr/lib/pam_mysql.so

然後到cd /etc/pam.d/
加入一個smtp
內容:
auth optional pam_mysql.so user=postfix passwd=secret host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=1 sqllog=0
account required pam_mysql.so user=postfix passwd=secret host=localhost db=postfix table=mailbox usercolumn=username passwdcolumn=password crypt=1 sqllog=0

(
方才 pam 的設定,其中
※ crypt=0 表示儲存的密碼為明碼,這對人類而言,是易讀易懂,但是不安全。
※ crypt=1 表示儲存的密碼為經由 UNIX系統中的 DES 所編碼過的密碼,據悉,它這有兩種加密方式;一種為普通的 DES 加密方式,也叫 crypt(),加密後的密碼有 13 位元長,另一種則為使用 MD5 演算法加密的,也叫 md5 crypt(),可說是 DES 的加強版,特點是以 $1$ 為開頭,加密後的密碼長度不定。
※ crypt=2 表示是用 MySQL 內建的函數 password() 所加密的密碼。)

安裝 cyrus-sasl2-saslauthd
安裝 cyrus-sasl2-saslauthd 時,會自動一併安裝 cyrus-sasl2
先編輯它的 Makefile
# cd /usr/ports/security/cyrus-sasl2-saslauthd/ ; ee Makefile
在 CONFIGURE_ARGS 這段新增那三個參數
## CONFIGURE_ARGS=
--enable-sql=mysql \
--with-mysql=/var/db/ \
--with-dblib=none \
開始安裝 Cyrus-sasl2-saslauthd
# make install clean

設定啟動 FreeBSD 時執行 saslauthd,在 /etc/rc.conf 新增此行 saslauthd_enable="YES"

請認有無此檔,並且連結到正確路徑
# ls -l /usr/local/lib/sasl2/libsql.so.2
libsql.so.2 -> /usr/local/lib/mysql/libmysqlclient.so.12
如果沒有 libsql.so.2 此檔,或者連到非以上路徑,請下此指令(到/usr/local/lib/mysql/看一下libmysqlclient.so是多少把他連結過來)
# ln -s /usr/local/lib/mysql/libmysqlclient.so.12 /usr/local/lib/sasl2/libsql.so.2

啟動 saslauth daemon,注意,saslauthd 必需在 IMAP or POSTFIX 前啟動
# /usr/local/etc/rc.d/saslauthd.sh start

為了要讓 saslauth daemon 支援 PAM,saslauthd 必須隨著 -a pam 參數一同啟動,檢驗看看
# ps ax|grep sasl
10174 ?? Is 0:00.10 /usr/local/sbin/saslauthd -a pam ##後面有 -a pam

安裝與設定 postfix

# cd /usr/ports/mail/postfix ; make install clean ; rehash
選擇這些選項
[X] SASL2
[X] MySQL

安裝完記得看他的資訊
如下
# vim /etc/rc.conf
加入下列資訊
## Postfix
sendmail_enable="YES"
sendmail_flags="-bd"
sendmail_pidfile="/var/spool/postfix/pid/master.pid"
sendmail_procname="/usr/local/libexec/postfix/master"
sendmail_outbound_enable="NO"
sendmail_submit_enable="NO"
sendmail_msp_queue_enable="NO"

# vim /etc/periodic.conf
daily_clean_hoststat_enable="NO"
daily_status_mail_rejects_enable="NO"
daily_status_include_submit_mailq="NO"
daily_submit_queuerun="NO"

安裝完後執行
# /usr/local/sbin/postalias /etc/aliases
# /usr/local/sbin/postmap /usr/local/etc/postfix/transport

設置開機時啟動 postfix,新建一個捷徑
# ln -s /usr/local/sbin/postfix /usr/local/etc/rc.d/postfix.sh

然後修改postfix 的main.cf設定檔
#vim /usr/local/etc/postfix/main.cf

myhostname = 改成你的主機名
mydomain = 改成你的domain
myorigin = $mydomain
inet_interfaces = all
unknown_local_recipient_reject_code = 450
mynetworks_style = subnet
mynetworks = 127.0.0.0/8, 再加入你ip的網段(那個8的意思是你的子網路遮罩的位元數)
alias_database = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
home_mailbox = Maildir/
mailbox_transport = virtual
virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:125
virtual_mailbox_base = /home/mbox
virtual_mailbox_domains = mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_mailbox_limit = 512000000
virtual_minimum_uid = 125
virtual_transport = virtual
virtual_uid_maps = static:125
virtual_mailbox_limit_inbox = yes
virtual_mailbox_limit_maps = mysql:/usr/local/etc/postfix/mysql_virtual_vquota_maps.cf
virtual_mailbox_limit_override = yes

virtual_maildir_extended = yes
virtual_create_maildirsize = yes
message_size_limit = 50000000
maximal_queue_lifetime = 2d
bounce_queue_lifetime = 1d

broken_sasl_auth_clients = yes
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_non_fqdn_hostname, reject_non_fqdn_sender, reject_non_fqdn_recipient, reject_unauth_destination, reject_unauth_pipelining, reject_invalid_hostname, reject_rbl_client opm.blitzed.org, reject_rbl_client list.dsbl.org, reject_rbl_client relays.ordb.org, reject_rbl_client bl.spamcop.net, reject_rbl_client sbl.spamhaus.org, check_client_access regexp:/usr/local/etc/postfix/regexp-access.cf
smtpd_sasl_auth_enable = yes
smtpd_sasl_local_domain = $myhostname
smtpd_sasl_security_options = noanonymous
smtpd_delay_reject = no

然後在postfix 目錄下加入這五個檔案

#vim /usr/local/etc/postfix/mysql_virtual_alias_maps.cf
user = postfix
password = (mysql中postfix的密碼)
hotst = localhost
dbname = postfix
table = alias
select_field = 'goto'
where_field = address

#vim /usr/local/etc/postfix/mysql_virtual_domains_maps.cf
user = postfix
password = (mysql中postfix的密碼)
hotst = localhost
dbname = postfix
table = domain
select_field = 'description'
where_field = domain

#vim /usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf
user = postfix
password = (mysql中postfix的密碼)
hotst = localhost
dbname = postfix
table = mailbox
select_field = maildir
where_field = username

#vim /usr/local/etc/postfix/mysql_virtual_vquota_maps.cf
user = postfix
password = (mysql中postfix的密碼)
hotst = localhost
dbname = postfix
table = alias
select_field = quota
where_field = username

#vim /usr/local/etc/postfix/regexp-access.cf
/[a-z0-9].dynamic.*/ 554 Service unavailable,Please see http://www.twia.org.tw/SPAM-930412(news).htm

安裝courier-imap
#cd /usr/port/mail/courier-imap
#make install clean
#vim /etc/rc.conf

## Courier Authd
courier_authdaemond_enable="YES"

## Courier IMAPD
courier_imap_imapd_enable="YES"
courier_imap_pop3d_enable="YES"

編輯authmysqlrc
#vim /usr/local/etc/authlib/authmysqlrc
MYSQL_SERVER localhost
MYSQL_USERNAME postfix (就是剛剛你在開mysql postfix這個user)
MYSQL_PASSWORD secret (就是剛剛你在開mysql postfix這個user的密碼)
MYSQL_SOCKET /tmp/mysql.sock
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE postfix
MYSQL_USER_TABLE mailbox
MYSQL_CRYPT_PWFIELD password
DEFAULT_DOMAIN 你的domain
MYSQL_UID_FIELD 125(POSTFIX 的uid)
MYSQL_GID_FIELD 125(POSTFIX 的gid)
MYSQL_LOGIN_FIELD username
MYSQL_HOME_FIELD 'home/mbox'
MYSQL_NAME_FIELD name
MYSQL_MAILDIR_FIELD maildir

編輯smtp.conf
#vim /usr/local/lib/sasl2/smtp.conf
pwcheck_method: saslauthd

編輯smtpd.conf

#vim /usr/local/lib/sasl2/smtpd.conf
pwcheck_method: saslauthd
mech_list: plain login

最後再去home裡面建mbox這個目錄
#cd /home
#mkdir mbox
#chown postfix:postfix mbox

這樣就大功告成了~~
重開機~~測試你的mailserver吧

修改於2005/9.7

部份文件參考
http://doc.uniorg.net/postfix/index.php

18
BSD 討論版 / freebsd5.4 灌php4-extention的問題
« 於: 2005-07-18 17:53 »
小第的是freebsd5.4
目前已裝好apache13
apache13-modssl
mod_php4
mysql41-server
而要另外再灌php套件的時後

===>    Verifying install for /usr/local/lib/perl5/site_perl/5.8.7/mach/Locale/gettext.pm in /usr/ports/devel/p5-Locale-gettext
===>  Building for p5-gettext-1.03
0: not found
*** Error code 127

Stop in /usr/ports/devel/p5-Locale-gettext/work/gettext-1.03.
*** Error code 1

Stop in /usr/ports/devel/p5-Locale-gettext.
*** Error code 1

Stop in /usr/ports/misc/help2man.
*** Error code 1

Stop in /usr/ports/devel/autoconf259.
*** Error code 1

Stop in /usr/ports/archivers/php4-bz2.
*** Error code 1

Stop in /usr/ports/lang/php4-extensions.

他的意思應該是說找不到
p5-gettext-1.03
這個對吧
而小第也把ports更新了(是在cvsup.tw.freebsd.org),請問一下~小第該怎麼樣解決這個問題呢~謝謝各位大大的指教!!

19
Linux 討論版 / libgd.so.1.8
« 於: 2005-06-25 17:41 »
小第的linux版本是rh9
小第的問題主要是要灌php-4.2.2.17.2
但是因為相依性的問題出現了以下的情況
[root@linux update]# rpm -ivh php-4.2.2-17.2.i386.rpm
warning: php-4.2.2-17.2.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
error: Failed dependencies:
        libgd.so.1.8 is needed by php-4.2.2-17.2
小第有找到gd-1.8.4的版本中有包括libgd.so.1.8
也成功安裝過php
但是因為小第的gd版本須要2.0以上
所以沒有辦法安裝gd-1.8.4這個版本
網友有說請小第
先移除 php,安裝上您的 gd 程式庫 package,然後去 rebuild 一份 php source rpm package 成為 binary rpm package,最後安裝上 binary rpm package 即可。
小第試了不過卻出現了
我把php-4.2.2-17.2.src.rpm 去rebuild 時出現了以下的錯誤,不過小第看不太懂他的錯誤情況,是小第少做了些什麼嗎?

make[3]: Leaving directory `/usr/src/redhat/BUILD/php-4.2.2/build-cgi/ext/ftp'
make[2]: Leaving directory `/usr/src/redhat/BUILD/php-4.2.2/build-cgi/ext/ftp'
Making all in gd
make[2]: Entering directory `/usr/src/redhat/BUILD/php-4.2.2/build-cgi/ext/gd'
make[3]: Entering directory `/usr/src/redhat/BUILD/php-4.2.2/build-cgi/ext/gd'
gcc -I. -I/usr/src/redhat/BUILD/php-4.2.2/ext/gd -I/usr/src/redhat/BUILD/php-4.2.2/build-cgi/main -I/usr/src/redhat/BUILD/php-4.2.2 -I/usr/src/redhat/BUILD/php-4.2.2/build-cgi/Zend -I/usr/include/libxml2 -I/usr/include/freetype2/freetype -I/usr/include/imap -I/usr/include/mysql -I/usr/local/include -I/usr/include/pspell -I/usr/include/ucd-snmp -I/usr/src/redhat/BUILD/php-4.2.2/main -I/usr/src/redhat/BUILD/php-4.2.2/Zend -I/usr/src/redhat/BUILD/php-4.2.2/TSRM -DUCD_COMPATIBLE -I/usr/src/redhat/BUILD/php-4.2.2/build-cgi/TSRM -O2 -g -march=i386 -mcpu=i686 -fPIC -c /usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd.c && touch gd.lo
In file included from /usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd.c:83:
/usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd_ctx.c: In function `_php_image_output_ctx':
/usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd_ctx.c:70: structure has no member named `free'
/usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd_ctx.c:98: structure has no member named `free'
/usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd.c: In function `_php_image_type':
/usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd.c:1014: structure has no member named `free'
/usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd.c:1017: structure has no member named `free'
/usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd.c: In function `_php_image_create_from':
/usr/src/redhat/BUILD/php-4.2.2/ext/gd/gd.c:1208: structure has no member named `free'
make[3]: *** [gd.lo] Error 1
make[3]: Leaving directory `/usr/src/redhat/BUILD/php-4.2.2/build-cgi/ext/gd'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/usr/src/redhat/BUILD/php-4.2.2/build-cgi/ext/gd'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/usr/src/redhat/BUILD/php-4.2.2/build-cgi/ext'
make: *** [all-recursive] Error 1
error: Bad exit status from /var/tmp/rpm-tmp.90463 (%build)


RPM build errors:
Bad exit status from /var/tmp/rpm-tmp.90463 (%build)
以下的問題
不知道是不是還有什麼套件有libgd.so.1.8這東東,
小第為了這個問題困擾了好久又或是小第在rebuild php的時後有那邊做錯了以致一直沒有辦法rebuild
這問題困擾了小第一個多星期了。

20
Linux 討論版 / libgd.so 的問題??
« 於: 2005-06-06 19:55 »
各位大大不好意思,請問一下
小第照著鳥哥上面的www server教學
用rpm方式目前已灌好了httpd ,mysql,但是在灌php-4.2.2-17.2
時的相依性有一點問題
libgd.so.1.8 is needed by php-4.2.2-17.2

小第查了一下
[root@linux update]# rpm -qa | grep gd
gdk-pixbuf-0.18.0-7
libgd-2.0.27-1
gdbm-1.8.0-20
sysklogd-1.4.1-12
gdk-pixbuf-gnome-0.18.0-7
gdm-2.4.1.3-5
gd-1.8.3-1
[root@linux update]#

在rpm search 中的我有看到在gd-1.8.3-1有包含libgd.so.1.8
不過我的相依性問題還是在
另外我看了一下我的[root@linux update]# cd /usr/lib/libgd
libgdbm.so.2 libgdk_pixbuf-2.0.so.0.200.1 libgdk-x11-2.0.so.0
libgdbm.so.2.0.0 libgdk_pixbuf.so.2 libgdk-x11-2.0.so.0.200.1
libgdk-1.2.so.0 libgdk_pixbuf.so.2.0.0 libgd.so.1
libgdk-1.2.so.0.9.1 libgdk_pixbuf_xlib-2.0.so.0 libgd.so.1.8.3
libgdk_imlib.so.1 libgdk_pixbuf_xlib-2.0.so.0.200.1 libgd.so.2.0.0
libgdk_imlib.so.1.9.13 libgdk_pixbuf_xlib.so.2
libgdk_pixbuf-2.0.so.0 libgdk_pixbuf_xlib.so.2.0.0
[root@linux update]# cd /usr/lib/libgd
[root@linux update]# rpm -ivh php-4.2.2-17.2.i386.rpm
warning: php-4.2.2-17.2.i386.rpm: V3 DSA signature: NOKEY, key ID db42a60e
error: Failed dependencies:
libgd.so.1.8 is needed by php-4.2.2-17.2在這底下有看到libgd.so.1.8.3 ,所以小第不知道是不是出了什麼問題?
不知道小第還有少了些什麼該注意的嗎?
請大大們指點一下方向,還是須要再看些什麼文件呢?

21
Linux 討論版 / Linux 被入侵!!!!
« 於: 2004-05-06 21:31 »
各位大大,小第所架設在學校的linux主機被入侵~~
在我從遠端登入的時後
會多出下列的字句
-bash: /dev/null: is not a directory


因為之前的登入的時後不會出現這些字句
後來我就把這個/dev/null給砍掉
結果就不能開機了~~
以下是出現的問題
Loading default keymap (us): /etc/rc.d/rc.sysinit: line 162: /dev/null: Read-only file system                                          
                                                                                      [FAILED]
setting hostname:  PRM:  dup2:  Bad file descriptor
                                                                                       [FAILED]
/etc/rc.d/rc.sysinit: line 173: /dev/null: Read-only file system
/etc/rc.d/rc.sysinit: line 173: /dev/null: Read-only file system
Initializing USB controller (ehci-hcd):  dup2:  Bad file descriptor
                                                                                      [FAILED]
Initializing USB controller (ehci-hcd):  dup2:  Bad file descriptor
                                                                                      [FAILED]
/etc/rc.d/rc.sysinit: line 173: /dev/null: Read-only file system
/etc/rc.d/rc.sysinit: line 173: /dev/null: Read-only file system
/etc/rc.d/rc.sysinit: line 173: /dev/null: Read-only file system
awk: cmd. line:2: fatal: cannot open file '/proc/mounts' for reading (No such file or directory)
Checking root filesystem
dup2: Bad file descriptor
                                                                                     [FAILED]
*** An error occurred during the file system check.
*** Dropping you to a shell; the system will reboot
*** when you leave the shell
Give root password for maintenance
(or type Control-D to continue):



以上是無法開機所出現的文字
小第我目前應該怎麼樣去解決這樣的問題呢
肯請各位大大多多幫忙
小第不勝感激!!!

22
網頁技術 / access denied
« 於: 2004-03-29 21:03 »
各位大大!!小第的php 和mysql的連接失敗
情形如下
http://johnpupu.adsldns.org/johnpupu/johnpupu.php


回覆說access denied 小第很想知道為什麼會被access denied

才能去解決問題。~~請大大們多指點!!!拜拖拜拖!!!

是那方面的問題請大大們指點!!

23
各位大大您們好呀!!!!
小第又來問問題了^^
因為學校的專題,所以小第架了一個linux的lamp
現在目前小第因為要開始建置資料庫,但是卡在一個問題,我從遠端用putty連上學校的主機是可以顯示中文的,但是當我在mysql底下時,卻是沒有辦法打中文
是因為jmcce 的問題嗎?這是小第的第一個問題?

第二個就是小第有問過別人說可以用phpmyadmin就可以克服中文輸入的問題,但是小第因為都還是初入門,所以想先把觀念都建立好,不知道說phpmyadmin是不是對觀念比較沒有幫助呢??
各位大大們的建議是如何呢
在phpmyadmin   或是  直接在mysql底下寫呢??

24
鳥哥臨時公佈欄 / 鳥哥的網站
« 於: 2004-03-22 03:45 »
請問一下各位大大,鳥哥大大的網站是不是怪怪的,最近回應都很慢,討論版也是,都上不太去也。是發生什麼問題了嗎??

25
各位大大!!
不好意思,請問您們一些問題,我在架設samba伺服器上有一些困難
因為我想要跨網段,如以下這個網址(不須要設定client的file server)(xp os 下)

\\www.viavoice.com.tw

上面這個是一個file server的網址,我想用我學校的機器架設一個如以上這網址的
file server
我查過我的smb.conf
testparm是ok的
host allow 我也是把他給註解掉!!用預設的方式,充許全部的ip
那我看過我的/etc/services
如以下

netbios-ns       137/tcp                   #NETBIOS Name Serice
netbios-ns       137/udp                  
netbios-dgm    138/tcp                   #NETBIOS Datagram Serice
netbios-dgm    138/udp                  
netbios-ssn     139/tcp                    #NETBIOS session service
netbios-ssn     139/udp

ps 135 136 port 沒有起來
我的port也啟動了!
netstat -tl 如以下情況
Proto Recv-Q Send-Q Local Address  Foreign Address   State
tcp             0          0 *:32768          *:*                     LISTEN
tcp             0          0 PRM:32769       *:*                     LISTEN
tcp             0          0 *:mysql          *:*                     LISTEN
tcp             0          0 *:netbios-ssn   *:*                     LISTEN
tcp             0          0 PRM:783         *:*                     LISTEN
tcp             0          0 *:sunrpc         *:*                     LISTEN
tcp             0          0 *:http             *:*                     LISTEN
tcp             0          0 *:ssh              *:*                     LISTEN
tcp             0          0 PRM:ipp          *:*                     LISTEN
tcp             0          0 PRM:smtp         *:*                     LISTEN

那我也看了smbclient
狀況如下
Domain=[PRMGROUP] OS=[Unix] Server=[Samba 2.2.7a]

             Sharename             Type                  Comment
             -------------            --------                --------------
             share1                   Printer                 Share directory
             IPC$                      IPC                     IPC Service  (PRM Server)
             Admin$                  Disk                    IPC Service  (PRM Server)
             johnpupu               Disk                     Home Directories

             Server                            Comment
            -----------                        -------------
              PRM                                PRM Server

             Workgroup                       Master
            ------------                         ------------
              PRMGROUP                

                                                         
我也啟動了我的samba 那為什麼我不行從我家的電腦連上學校的主機呢

非常肯請各位大大指點方向,小第很願意摸索,肯請各位大大指點迷津!!!!

是否有任何地方小第忽略了,肯請大大們指導。謝謝

26
各位先進們,小第有兩個小問題。


第一 小第在linux red hat 9.0下使用全部安裝,有一個很奇怪的問題就是
            無法在bash 上無法顯示中文。例如:
# cd /etc/fstab
-bash: /ls: "S|亂碼

但是我用putty 連我自已的主機卻可以顯示中文。例如:
# cd /etc/fstab
-bash cd: /etc/fstab: 這並不是一個目路

請問一下這是什麼問題呢??我看了一下vbird的書了,好像沒有提到,所以才來請問各位大大。

第二 就是想要請問一下因為我們公司的file server 可以連上internet
(使用samba),小第目前還是學生由於想要也自已架一個file server 目前samba
也都灌好了,套件如下:
samba-swat-2.2.7a-7.9.0
samba-2.2.7a-7.9.0
redhat-config-samba-1.0.4-1
samba-common-2.2.7a-7.9.0
samba-client-2.2.7a-7.9.0
以上是我所安裝的套件,想要請問的就是該如何讓file server 不只只是服務Lan
可以服務到wan 該如何route ?

若是那邊有相關的文章也可以和小第指點一下,小第一定會去看的,謝謝!!!
麻煩各位了

27
肉腳版 / 請問一下
« 於: 2004-03-06 01:55 »
請問一下,我想知道說可以遠端連線的 file server (不僅僅是Lan)的軟体是那種呢??
是samba嗎~~
可以解答一下嗎~~samba是不是只能區域網路呢??

頁: [1]