使用ODBC數(shù)據(jù)庫管理Serv-U的FTP用戶及相關(guān)ASP編程[附源碼示例下載]
Serv-U 支持基于ODBC數(shù)據(jù)庫的用戶和用戶組設(shè)置,這為我們基于Serv-U編程提供了良好的接口,接下來我們介紹如何具體實(shí)現(xiàn)。
一、使用ODBC數(shù)據(jù)庫管理Serv-U
前提條件:企業(yè)版的Serv-U(4.1以上版本)才能夠支持ODBC,常見可支持的數(shù)據(jù)庫包括access、mysql、oracle和mssql等。
Serv-U英文官方網(wǎng)站上提供了部分?jǐn)?shù)據(jù)庫示例,本站提供下載,請(qǐng)選擇:
·Access示例:MS Access ODBC Example
·Ms SQL示例:MS SQL Server ODBC Example
·MySQL示例:MySQL ODBC Example
·Oracle創(chuàng)建表結(jié)構(gòu)的SQL文件:Oracle database for use with Serv-U
以下以Ms SQL為例介紹使用方法
1、安裝好Serv-U企業(yè)版(4.1以上版本),創(chuàng)建一個(gè)新的域,在第四步中,域類型選擇“存儲(chǔ)于ODBC數(shù)據(jù)庫中”,如圖:
2、下載MS SQL Server ODBC Example示例包,獲得CreateServUTables.sql(用于在mssql中創(chuàng)建Serv-U的對(duì)應(yīng)表結(jié)構(gòu))文件,并在mssql中執(zhí)
行該文件,創(chuàng)建六個(gè)表,分別為:
·ftp_users
·ftp_userIPs
·ftp_userAccess
·ftp_groups
·ftp_groupIPs
·ftp_groupAccess
其中ftp_users為存放用戶的表,最為重要。
3、建立ODBC。示例過程如下
(1)添加系統(tǒng)DSN(系統(tǒng)數(shù)據(jù)源),選擇SQL Server,填好數(shù)據(jù)源名稱和服務(wù)器(本機(jī)使用local)
(2)登錄驗(yàn)證方式根據(jù)你的mssql設(shè)置決定,這里用SQL驗(yàn)證的方式登錄
(3)更改數(shù)據(jù)庫為你創(chuàng)建好Serv-U表的數(shù)據(jù)庫,確認(rèn),完成ODBC設(shè)置?,F(xiàn)在你有了一個(gè)名為Serv-U的系統(tǒng)數(shù)據(jù)源,記得這個(gè)名字和登錄使用用戶和密碼。
4、配置Serv-U
(1)關(guān)閉Serv-U,從MS SQL Server ODBC Example示例包中獲得Add-to-Ini.txt文件,打開此文件,完整復(fù)制以下代碼:
[Domain1]
ODBCTables=ftp_users|ftp_groups|ftp_userAccess|ftp_groupAccess|ftp_userIPs|ftp_groupIPs
ODBCColumns=ftpUserName|ftpPassword|sKey|dirHome|loginMsgFile|accessRule|disabled|sessionEncryption|dirHomeLock|hideHidden|alwaysAllowLogin|changePassword|quotaEnable|maxUsersLoginPerIP|speedLimitUp|speedLimitDown|maxUsersConcurrent|timeOutIdle|timeOutSession|ratioUp|ratioDown|ratioCredit|quotaCurrent|quotaMax|expiration|privilege|ftpPasswordType|ratioType|groups|notes|indexNo
(2)打開Serv-U的安裝目錄,找到ServUDaemon.ini文件,將對(duì)應(yīng)[Domain1]及其后面的對(duì)應(yīng)設(shè)置用上面的代碼替換。
(3)重新打開你的Serv-U,找到剛才你新建的域,在ODBC設(shè)置中應(yīng)該已經(jīng)能夠看到ODBC鏈接設(shè)置中,除了ODBC源名稱、帳號(hào)和密碼部分空的外,其他的表名和列名都已經(jīng)設(shè)置好了。

(4)填寫好你的ODBC源名稱、帳號(hào)和密碼,應(yīng)用設(shè)置,如果你的設(shè)置沒有問題的話,域前面的圖標(biāo)將不再是禁止的樣子,表示已經(jīng)設(shè)置好了
(5)隨便建立一個(gè)用戶,然后對(duì)應(yīng)在你的ftp_users表中查找看是否存在,如果沒有問題,你已經(jīng)完成了Serv-U的ODBC設(shè)置。
二、編程實(shí)現(xiàn)ODBC管理Serv-U用戶
有了數(shù)據(jù)庫,用編程實(shí)現(xiàn)管理Serv-U用戶應(yīng)該是一件非常簡單而輕松的事情,唯一的難點(diǎn)在于密碼的加密。
我們知道Serv-U三種加密算法,默認(rèn)情況下是32位的md5加密算法,這和有的16位和64位加密算法有所不同,因此我們?cè)诰幊讨幸褂?2位的
MD5加密算法來實(shí)現(xiàn)密碼的加密。以下以ASP編程為例:
用以下兩個(gè)函數(shù)完成對(duì)密碼的加密,32位MD5加密文件在此下載MD5.ASP
Function SerUPassEnCode(strPass)
Dim Char1,Char2,Seed,prePass,EncodePass,FinalPass
If IsNull(strPass) Or strPass="" Then Exit Function
Char1 = Chr(Rand(97,122))
Char2 = Chr(Rand(97,122))
Seed = Char1 & Char2
prePass = Seed & strPass
EnCodePass = Ucase(md5(prePass)) '32位md5
FinalPass = Seed & EnCodePass
SerUPassEnCode = FinalPass
End Function
Function Rand(n,m)
Dim a,b,t
a = n : b = m
If b < a Then t = b : b = a : a = t
Randomize
Rand = Int(rnd*(b-a+1)+a)
End Function
本文完全原創(chuàng),請(qǐng)尊重作者勞動(dòng),轉(zhuǎn)載請(qǐng)注明出處,謝謝。
- 使用FTP下載目錄,即FTP命令批量自動(dòng)下載的bat文件
- Linux下使用Shell腳本實(shí)現(xiàn)ftp的自動(dòng)上傳下載的代碼小結(jié)
- 批處理bat下載FTP服務(wù)器上某個(gè)目錄下的文件
- JAVA技術(shù)實(shí)現(xiàn)上傳下載文件到FTP服務(wù)器(完整)
- php下連接ftp實(shí)現(xiàn)文件的上傳、下載、刪除文件實(shí)例代碼
- JAVA中使用FTPClient實(shí)現(xiàn)文件上傳下載實(shí)例代碼
- java操作ftp下載文件示例
- python實(shí)現(xiàn)支持目錄FTP上傳下載文件的方法
- 關(guān)于c#連接ftp進(jìn)行上傳下載實(shí)現(xiàn)原理及代碼
- Java語言實(shí)現(xiàn)簡單FTP軟件 FTP軟件效果圖預(yù)覽之下載功能(2)
相關(guān)文章
asp隔行換色實(shí)現(xiàn)代碼(表格或者列表)
在ASP(Active Server Pages)中實(shí)現(xiàn)隔行變色通常涉及到對(duì)HTML表格或列表進(jìn)行樣式設(shè)置,ASP本身主要用于服務(wù)器端腳本處理,而具體的樣式(如顏色變化)通常通過HTML和CSS來實(shí)現(xiàn),下面是一些常見的方法來實(shí)現(xiàn)這一功能2025-03-03
分享一個(gè)好東東,動(dòng)態(tài)Include文件 (Dynamic File Includes)
相信很多ASP開發(fā)者都會(huì)抱怨ASP的Include方式太老土了,以的方式加載文件實(shí)在是太不舒服了,在實(shí)際項(xiàng)目中不管我是不是一開始就要用到這個(gè)文件,我總得早早的把它Include進(jìn)來...這方面PHP就舒服很多...什么時(shí)候用,什么時(shí)候In...2008-05-05
Microsoft JET Database Engine 錯(cuò)誤 ''80004005'' 未指定的錯(cuò)誤的完美解決方法
Microsoft JET Database Engine 錯(cuò)誤 ''80004005'' 未指定的錯(cuò)誤的完美解決方法...2007-03-03
msxml3.dll 錯(cuò)誤 800c0019 系統(tǒng)錯(cuò)誤:-2146697191解決方法
今天發(fā)現(xiàn)一個(gè)asp后臺(tái)使用了XMLHTTP組件的頁面無法無法生成靜態(tài)頁面了,運(yùn)行時(shí)提示msxml3.dll 錯(cuò)誤 800c0019 系統(tǒng)錯(cuò)誤:-2146697191,經(jīng)過搜索如下方法解決了問題2020-11-11




