ASP + Serv-u 實現FTP的代碼
2024-05-04 10:59:06
供稿:網友
<!--#include file="md5.asp"-->
<%
Dim iniPath,iniFileName,iniStr,tmpStr,n
Dim userName,passWord,tmp
userName = "myfso222" '用戶名
passWord = "awaysrain" '密碼
tmp = "ai" '隨機生成兩個小寫字母,(應該是隨機生成的,但是我這里省略了)
passWord = tmp & UCase(md5(passWord)) '密碼,是MD5加密過的,用動網的MD5加密程序,具體算法是隨機生成兩位小寫字母,然后和你的密碼連接后進行MD5加密,把隨機生成的密碼和MD5加密后的結果作為密碼存放,舉個例子來說比如下面的awaysrain用戶,我的密碼為awaysrain先隨機生成兩位小寫字母ai,和我的密碼awaysrain連接得到aiawaysrain把aiawaysrain進行MD5加密得到9118BFD94A9CE9CF37AE5BAA947ED596把隨機生成兩位小寫字母ai和MD5加密后的結果9118BFD94A9CE9CF37AE5BAA947ED596連接得到密碼ai9118BFD94A9CE9CF37AE5BAA947ED596
iniPath="D:/Program Files/Serv-U" 'ini文件的路徑
iniFileName = "ServUDaemon.ini" 'ini的文件名
Set fso=Server.CreateObject("Scripting.FileSystemObject")
Set ServUIni = fso.OpenTextFile(iniPath & "/" & iniFileName,1,false)
iniStr = ""
n = 0
addedUserList = false
Set tf = fso.CreateTextFile(iniPath & "/" & iniFileName & "._awaysrain.tmp", True)
'生成新的臨時INI文件
Do While not ServUIni.AtEndOfStream
tmpStr = ServUIni.ReadLine
If Instr("awaysrain||" & tmpStr,"awaysrain||User")>0 Then
'記錄用戶原來的數量
n = n+1
End If
If Instr("awaysrain||" & tmpStr,"awaysrain||[USER=")>0 and not addedUserList Then
'往用戶列表的部分添加現在的用戶
n = n +1
tf.WriteLine("User" & n & "=" & userName & "|1|0")
addedUserList = true
End If
tf.WriteLine(tmpStr)
Loop
ServUIni.Close
'添加新用戶的信息,具體內容可以在SERV-U中新建用戶并對照INI文件
tf.WriteLine("[USER=" & userName & "|1]") '用戶名
tf.WriteLine("Password=" & passWord) '密碼
tf.WriteLine("HomeDir=e:/temp") '主目錄
tf.WriteLine("RelPaths=1") '是否鎖定用戶于主目錄
tf.WriteLine("MaxUsersLoginPerIP=1") '相同IP同時登錄數
tf.WriteLine("SpeedLimitDown=102400") '最大下載速度
tf.WriteLine("TimeOut=600") '空閑超時時間(秒)