本身不是一個編程問題,但對做商業網站開發的人來說很有意思。如何跟蹤客戶的託管/域名/ SSL證書過期日期?
如何跟蹤所有客戶的託管,域名註冊和SSL證書過期日期?
你只是保留電子表格還是有一些有用的軟件爲此?
我已經廣泛搜索,無法找到一個可用的軟件,並且很想寫點什麼。由於需要管理超過100個客戶,並且託管和域名分佈在多個託管公司和註冊服務商,我的臨時手段都失敗了。
本身不是一個編程問題,但對做商業網站開發的人來說很有意思。如何跟蹤客戶的託管/域名/ SSL證書過期日期?
如何跟蹤所有客戶的託管,域名註冊和SSL證書過期日期?
你只是保留電子表格還是有一些有用的軟件爲此?
我已經廣泛搜索,無法找到一個可用的軟件,並且很想寫點什麼。由於需要管理超過100個客戶,並且託管和域名分佈在多個託管公司和註冊服務商,我的臨時手段都失敗了。
您可能會更好地使用您通常用於管理時間/日程表的任何工具,而不是使用某種專用工具。無論是Outlook,Sunbird,Lightning,PDA,手機,紙質日曆等等,只要使用通常用於跟蹤日期的任何工具即可。
[ADDITION]
要細說,你想這一切在同一個地方作爲你的重要日期的其餘部分原因是,它保證了(至少有一點),你要注意該列表。如果您正在使用其他類型的程序,那麼在幾周內就很容易忙碌,並忘記查看您的特殊工具,並最終讓不應過期的某些內容過期。
而數據的日曆視圖是好的,使用日曆程序來存儲它的問題是,它不是由客戶或域名存儲。此外,您還可能需要註冊商或託管公司對相同數據的看法。但是,是的,我曾想到過這個谷歌日曆。 – Quog 2008-12-12 02:27:23
我們怎麼樣把它變成一個編程問題!您可以使用此代碼(C#),但我建議您修改一下(例如,將url放入文件中)並將其投入服務中。
此代碼設置證書驗證回調,HttpWebRequest在遇到證書時將調用它。這讓我們看看證書,通常這是用來驗證證書,但我們要看看到期時間,如果在3個月內,我們會發郵件給自己。計時器設置爲每天運行一次檢查。
using System.Net;
using System.Diagnostics;
using System.Net.Mail;
using System.Threading;
static void Main(string[] args)
{
// List of URL's to check
string[] urls = new string[]{
"https://www.6bit.com/",
"https://www.google.com/"
};
HttpWebRequest req = null;
// Certificate check callback
ServicePointManager.ServerCertificateValidationCallback = (state, cert, certChain, sslerr) =>
{
DateTime expiration = DateTime.Parse(cert.GetExpirationDateString());
if (expiration < DateTime.Now.AddMonths(3))
{
Debug.WriteLine("Cert expiring on " + expiration.ToShortDateString());
MailMessage msg = new MailMessage("[email protected]", "[email protected]", "SSL Certificate Expiring", "The ssl certificate for" + req.RequestUri.ToString() + " will expire on " + expiration.ToShortDateString());
SmtpClient sc = new SmtpClient();
sc.Send(msg);
}
return true;
};
// Request each url once a day so that the validation callback runs for each
Timer t = new Timer(s =>
{
Array.ForEach(urls, url =>
{
try
{
req = (HttpWebRequest)HttpWebRequest.Create(url);
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
resp.Close();
}
catch (Exception ex)
{
Debug.WriteLine("Error checking site: " + ex.ToString());
}
});
}, null, TimeSpan.FromSeconds(0), TimeSpan.FromDays(1)); // Run the timer now and schedule to run once a day
}
至於管理SSL證書,你可以編寫調用OpenSSL的腳本,或者如果你想要的東西準備好讓你可以試試這個:
SSL Certificate Discovery and Monitoring Tool
它會找到和目錄證書您的網絡並在即將到期時發送電子郵件提醒。結果可以導入到名爲Cert Center的基於Web的工具中。
給一個嘗試epazote基本上可以在證書到期之前,在YAML文件中創建網站(服務)的列表,並收到一封電子郵件/警報/ hipchat通知,例如:
services:
google:
url: https://www.google.com
seconds: 60
expect:
status: 302
ssl:
hours: 72
在這種情況下,可以在證書過期72小時前發送電子郵件。
您可以使用像https://IsItWorking.info服務跟蹤域名註冊和SSL證書過期。
您可以設置何時收到通知(例如到期前60天),並且可以通過電子郵件,閒置或推送通知您。
(完全披露:我寫的!)
你有沒有運氣?我有完全相同的問題,是一個擁有很多託管客戶端的Web開發人員。用excel文件跟蹤事情變得困難,當我有十幾個客戶時,這很好,但現在很痛苦。如果您找到了解決方案或者提出瞭解決方案,請更新我們。謝謝! – 2012-12-02 05:14:19