您现在的位置:计算机技术学习网 > 技术中心 > WEB编程 > ASP >

ASP + Serv-u 实现FTP的代码

来源:网络 责任编辑:栏目编辑 发表时间:2013-07-01 23:30 点击:

<!--#include file="md5.asp"-->
<%
**************************************************
* 作者:awaysrain(绝对零度) *
* 完成时间:2003-10-10 *
* 测试环境:WIN2000SERVER,SERV-U 4.2-beta版 *
**************************************************
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 FilesServ-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: emp") 主目录
tf.WriteLine("RelPaths=1") 是否锁定用户于主目录
tf.WriteLine("MaxUsersLoginPerIP=1") 相同IP同时登录数
tf.WriteLine("SpeedLimitDown=102400") 最大下载速度
tf.WriteLine("TimeOut=600") 空闲超时时间(秒)
tf.WriteLine("access(小型网站之最爱)1=E:Temp|RLP") 可访问目录,可以不是一个,比如 access(小型网站之最爱)2=E:Temp1|RLP

tf.Close
--------------------备份原来的INI文件--------------------------
Set f1 = fso.GetFile(iniPath & "" & iniFileName)
f1.Copy (iniPath & "" & iniFileName & "._awaysrain.bak")
f1.Delete
--------------------把生成的临时INI文件改为正式的INI--------------------------
Set f1 = fso.GetFile(iniPath & "" & iniFileName & "._awaysrain.tmp")
f1.Copy (iniPath & "" & iniFileName)
f1.Delete

Set fso = nothing
%>

注:以上代码假设ServUDaemon.ini中的格式只有一个域并已经至少有一个用户

测试的ServUDaemon.ini文件结构如下:
==================================
[Domain1]
User1=222|1|0
User2=myfso111|1|0
[USER=222|1]
Password=hwB1ECF70CDAF5DAE2B981AE394EEFCDC0
HomeDir=E:Temp

    相关新闻>>

      发表评论
      请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
      用户名: 验证码:点击我更换图片
      最新评论 更多>>

      推荐热点

      • WAP常见问题问答大全(四)
      • ASP开发必备:WEB打印代码大全
      • ASP调用系统ping命令
      • asp缓存技术
      • ASP教程:第三篇 ASP基础
      • 用ASP+XML打造留言本(4)
      • 关于ASP Recordset 分页出现负数解决方法及建议
      • 用asp怎样编写文档搜索页面(5)
      • ASP处理多关键词查询实例代码
      网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
      Copyright © 2008-2015 计算机技术学习交流网. 版权所有

      豫ICP备11007008号-1