ASP+MS SQL在線更改Serv-u的密碼
發(fā)表時間:2023-05-31 來源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]針對一些虛擬主機管理軟件 的確應(yīng)該去深入了解 :)下面是以Serv-U 6.0和Sql Server 2000相結(jié)合的演示。 建表Sql 語句:CREATE TABLE [groupaccount...
針對一些虛擬主機管理軟件 的確應(yīng)該去深入了解 :)
下面是以Serv-U 6.0和Sql Server 2000相結(jié)合的演示。
建表Sql 語句:
CREATE TABLE [groupaccounts] (
[id] int IDENTITY (1,1) PRIMARY KEY,
[Index] int Default 0,
[Name] nVarChar(50) default '''''''',
[Notes] nVarChar(255) default ''''''''
)
CREATE INDEX [Name] on [groupaccounts]([Name] )
CREATE TABLE [groupdiraccess] (
[id] int IDENTITY PRIMARY KEY,
[Access] nVarChar(255) default '''''''',
[Index] int Default 0,
[Name] nVarChar(50) default ''''''''
)
CREATE INDEX [Name] on [groupdiraccess]([Name] )
CREATE TABLE [groupipaccess] (
[id] int IDENTITY PRIMARY KEY,
[Access] nVarChar(255) default '''''''',
[Index] int Default 0,
[Name] nVarChar(50) default ''''''''
)
CREATE INDEX [Name] on [groupipaccess]([Name] )
CREATE TABLE [useraccounts] (
[id] int IDENTITY PRIMARY KEY,
[Access] nVarChar(255) default '''''''',
[AlwaysLogin] int Default 0,
[ChangePass] int Default 0,
[Disable] int Default 0,
[Expirationtype] int Default 0,
[Expiration] datetime Default ''''1980-1-1'''',
[Groups] nVarChar(50) default '''''''',
[HideHidden] int Default 0,
[HomeDir] nVarChar(100) default '''''''',
[idleTimeOut] int Default 0,
[LogMesfile] nVarChar(100) default '''''''',
[MaxIp] int Default -1,
[MaxSpeedDown] decimal Default 0,
[MaxSpeedUp] decimal Default 0,
[MaxUsers] int Default -1,
[Name] nVarChar(50) default '''''''',
[Needsecure] int Default 0,
[Notes] nVarChar(255) default '''''''',
[PassType] int Default 0,
[Password] nVarChar(50) default '''''''',
[Privilege] int Default 0,
[QuotaCurrent] decimal Default 0,
[QuotaEnable] int Default 0,
[QuotaMax] decimal Default 0,
[RatioCredit] decimal Default 0,
[RatioDown] int Default 0,
[RatioType] int Default 0,
[RatioUP] int Default 0,
[RelPaths] int Default 0,
[SessionTimeOut] int Default 0,
[SkeyValues] nVarChar(50) default ''''''''
)
CREATE INDEX [Name] on [useraccounts]([Name] )
CREATE TABLE [userdiraccess] (
[id] int IDENTITY PRIMARY KEY,
[Access] nVarChar(255) default '''''''',
[Index] int Default 0,
[Name] nVarChar(50) default ''''''''
)
CREATE INDEX [Name] on [userdiraccess]([Name] )
CREATE TABLE [useripaccess] (
[id] int IDENTITY PRIMARY KEY,
[Access] nVarChar(255) default '''''''',
[Index] int Default 0,
[Name] nVarChar(50) default ''''''''
)
CREATE INDEX [Name] on [useripaccess]([Name] )
ServUDaemon.ini中的ODBC信息:
ODBCSource=Serv-U
ODBCTables=useraccounts groupaccounts userdiraccess groupdiraccess useripaccess groupipaccess
ODBCColumns=Name Password SkeyValues HomeDir LogMesfile Access Disable Needsecure RelPaths HideHidden AlwaysLogin ChangePass QuotaEnable MaxIp MaxSpeedUp MaxSpeedDown MaxUsers idleTimeOut SessionTimeOut RatioUP RatioDown RatioCredit QuotaCurrent QuotaMax Expiration Privilege PassType RatioType Groups Notes Index
加密算法為隨機碼與MD5 32 位加密, 例如:
兩個隨機字母:ab
用戶輸入密碼:123456
生成的密碼為:ab + MD5(ab123456)
提示:代碼僅實現(xiàn)更改密碼的功能, 并不一定完全符合或達到您的需求。
<!--#include file=''''conn.asp''''-->
<!--#include file=''''include/md5.asp''''-->
<%
dim act,UserName,OldPassword,NewPassword,reNewPassword
act = Request.form("act")
if act = "update" then
UserName = Request.form("UserName")
OldPassword = Request.form("OldPassword")
NewPassword = Request.form("NewPassword")
reNewPassword = Request.form("reNewPassword")
UserName = Replace(UserName,"''''","''''")
if len(UserName)<1 or len(OldPassword)<1 or len(NewPassword)<1 or len(reNewPassword)<1 then
alert("表單沒有填寫完整")
end if
if trim(NewPassword)<>trim(reNewPassword) then
alert("密碼與確認密碼不一樣")
end if
Sql0 = "select top 1 name,[password] from [useraccounts] where name = ''''"& UserName &"''''"
set rs0 = conn.execute(Sql0)
if rs0.eof and rs0.bof then
alert("用戶名不存在")
else
dbname = rs0("name")
dbpassword = rs0("password")
end if
cdbpassword = left(dbpassword,2) & md5(left(dbpassword,2) & OldPassword)
if trim(cdbpassword) <> trim(dbpassword) then
alert("密碼錯誤")
else
rndstr = MyRandc(2) ''''兩位隨機字母
newdbpassword = rndstr & md5(rndstr & NewPassword)
sql2 = "update [useraccounts] set [password] = ''''"& newdbpassword &"'''' where name=''''"& UserName &"''''"
conn.execute(sql2)
alert("密碼已經(jīng)更改, 可能要幾鐘后才能生效")
end if
end if
function alert(x)
response.write "<script language=''''JavaScript''''>alert(''''"& replace(x,"""","\""") &"'''');history.go(-1);</script>"
conn.close
set conn = nothing
response.end
end function
function MyRandc(n)''''生成隨機字符, n為字符的個數(shù)
thechr = ""
for i=1 to n
Randomize timer
zNum = cint(25*Rnd)
if zNum mod 2 = 0 then
zNum = zNum + 97
else
zNum = zNum + 65
end if
thechr = thechr & chr(zNum)
next
MyRandc = thechr
end function
%>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<META NAME="Author" CONTENT="海娃(51windows)">
<META NAME="Keywords" CONTENT="windows.net/" target=_blank>http://www.51windows.Net">
<title>更改FTP (Serv-U) 密碼 - 51windows.net</title>
</head>
<body>
<form method="POST" action="" name="form" autocomplete="off">
<input type="hidden" name="act" value="update">
<div align="center">
<center>
<table border="0" width="480" cellpadding="2" cellspacing="1" class="table" style="border: 1 solid #336699;font-size:14px;">
<tr>
<td width="100%" align="center" colspan="2" class="title" style="background:#336699;color:#FFFFFF;">更改FTP (Serv-U) 密碼</td>
</tr>
<tr>
<td width="30%" align="left"> 用戶名[√]:
u無垠育I\h網(wǎng)D供i5d[I
e8A^qO]6`_vH
</td>
<td width="70%"><input class="input" type="text" maxlength=20 name="UserName" size="25" value="" /> (FTP登陸用戶名)</td>
</tr>
<tr>
<td width="30%" align="left"> 舊密碼[√]:
MSu)A#wEigy\@zK
</td>
<td width="70%"><input class="input" type="password" maxlength=20 name="OldPassword" size="25" value="" /> (必須輸入舊密碼)</td>
</tr>
<tr>
<td width="30%" align="left"> 新密碼[√]:
業(yè)2網(wǎng)z?中t]業(yè)s網(wǎng):
</td>
<td width="70%"><input class="input" type="password" name="NewPassword" size="25" value="" /> (輸入新密碼)</td>
</tr>
<tr>
<td width="30%" align="left"> 確 認[√]:</td>
<td width="70%"><input class="input" type="password" name="reNewPassword" size="25" value="" /> (再次輸入新密碼)</td>
</tr>
<tr>
<td width="100%" height="30" align="center" colspan="2"><input style="font-size:14px;" type="submit" size="10" value="確 定" class=button></td>
</tr>
</table>
</center>
</div>
</html>
<%
set rs = nothing
conn.close
set conn = nothing
%>
上面是電腦上網(wǎng)安全的一些基礎(chǔ)常識,學(xué)習(xí)了安全知識,幾乎可以讓你免費電腦中毒的煩擾。