首页
文章导航
导航
壁纸
留言板
更多
直播
友链
统计
关于
Search
1
经典老电影10部
1 阅读
2
【白嫖攻略】在cloudflare搭建域名邮箱并转发
1 阅读
3
春天来了清新图片
1 阅读
4
Caddy新一代轻量web服务器 配置简单 自动HTTPS 反向代理建站
1 阅读
5
免费二级域名,包括可托管到cf的二级域名
1 阅读
默认
日常
学习
技术
登录
Search
标签搜索
cloudflare
白嫖
安装
脚本
CF
壁纸
图片
docker
Linux
Caddy
代码
哪吒
节点
域名
桌面壁纸
手机壁纸
NAT
LXC
邮箱
优选
ws01
累计撰写
115
篇文章
累计收到
43
条评论
首页
栏目
默认
日常
学习
技术
页面
文章导航
导航
壁纸
留言板
直播
友链
统计
关于
搜索到
2
篇与
的结果
2025-08-05
Serv00/HostUNO 域名邮箱教程 | 设置全域邮箱(Catch-All) | 提高发件可信度
Serv00/HostUNO 域名邮箱教程 | 设置全域邮箱(Catch-All) | 提高发件可信度 | 第三方工具收发邮件搭建过程 参考视频 一、登录Serv00管理后台,语言设置为中文,方便查看1、点击左侧 邮箱 进入设置2、进入 添加新的电子邮件地址 ,填写 电子邮箱和密码 ,如xxx@你的新域名,如果添加你的edu域名更好,这样完成后就有一个edu邮箱了。3、回到你的域名管理地方, 添加 MX 记录 ,优先事项填入 10 ,内容填入你的 serv00邮件收发地址 【收发地址在你注册邮件中有,类似于mail2.serv00.com】4、【 可不填写,填写后所有这个域名后缀的邮件都转发到这个邮箱 】进入,添加新别名,Domena (Catch-all)电子邮件地址(目标)选择你上一步添加的邮箱,Adres e-mail (docelowy)高级设置中别名类型选择Catch-all5、登录 serv00邮箱后台 ,就可以收发邮件了,而且是任意邮箱前缀@你的新域名,都发送到同一邮箱以上设置已经可以收发邮件了,但是,可能被其它邮箱标记为垃圾邮件或直接拒收,这就必须进行第二步设置,提高该邮箱的可信度 {dotted startColor="#ff6c6c" endColor="#1989fa"/}二、进一步设置1,点击 serv00 左侧的 网站 ,进入 添加新网站 ,把你的域名填写进去2、点击左侧 dns区域,选择刚才添加的域名进入编辑,在你的域名管理地方填入 TXT的值 【类似于 v=spf1 mx a include:mail2.serv00.com -all ,注意不是这个值,域名不同可能值不同】,保证你的域名管理中要 有 MX 和 TXT 两条记录 ,其它记录不填不影响邮箱,填完后,就可以把第1步中填写的域名删除了添加完这一步后,邮件就不会被拒收了,但可能还会进入垃圾邮件,所以还要再进行下一步3、回到左侧的 邮箱 ,在域名列表中,点击域名的 DKIM ,再把该域名的 DNS记录和内容填入你的域名 ,至此你的域名邮箱设置完毕,并且可以收发。
2025年08月05日
1 阅读
0 评论
0 点赞
2024-08-12
serv00注册等系列教程,服务器清理,ssh连接不上问题轻松解决,非挂代理
serv00系列教程,服务器清理,ssh连接不上问题轻松解决,非挂代理一、FTP、ssh 无法连接1、修改链接地址,sXXX.serv00.com 换成 webXXX.serv00.comssh服务器清理pkill -kill -u ${username} chmod -R 755 ~/* chmod -R 755 ~/.* rm -rf ~/.* rm -rf ~/*sN.serv00.com 18(或其IP)+端口22(或80或443)webN.serv00.com 12(或其IP)+端口22cacheN.serv00.com 8(或其IP)+端口22panelN.serv00.com 5 +端口22panelN.serv00.net +端口22USER.serv00.net +端口22其中大写的 N 是邮件中给定的服务器号2、ip被blockip解锁地址:https://www.serv00.com/ip_unban二、注册1、serv00注册对ip要求较高,邮箱也有可能收不到邮件和在垃圾箱中,所以正常注册不上就只能 换ip,换邮箱 。2、推荐下面方法:打开ProxySite-免费网络代理,在代理中注册,地址随意,最好选波兰ProxySite-免费网络代理 serv00注册输入:https://www.serv00.com/offer/create_new_accountct8注册输入【代理地址必须选择🇵🇱波兰】:https://www.ct8.pl/offer/create_new_account可选临时邮箱 ,最好是自己的邮箱,信息填完后serv00最下面一栏填写:freect8最下面一栏填写:MyDevil.net三、cloudflare保活1、登录 cloudflare ,创建 Workers 或 Pages 项目2、复制以下代码到 Workers 并部署addEventListener('fetch', event => { event.respondWith(handleRequest(event.request)) }) addEventListener('scheduled', event => { event.waitUntil(handleScheduled(event.scheduledTime)) }) async function handleRequest(request) { return new Response('Worker is running') } async function handleScheduled(scheduledTime) { const accounts = JSON.parse(ACCOUNTS_JSON) const results = await loginAccounts(accounts) await sendSummary(results) } async function loginAccounts(accounts) { const results = [] for (const account of accounts) { const result = await loginAccount(account) results.push({ ...account, ...result }) await delay(Math.floor(Math.random() * 8000) + 1000) } return results } function generateRandomUserAgent() { const browsers = ['Chrome', 'Firefox', 'Safari', 'Edge', 'Opera']; const browser = browsers[Math.floor(Math.random() * browsers.length)]; const version = Math.floor(Math.random() * 100) + 1; const os = ['Windows NT 10.0', 'Macintosh', 'X11']; const selectedOS = os[Math.floor(Math.random() * os.length)]; const osVersion = selectedOS === 'X11' ? 'Linux x86_64' : selectedOS === 'Macintosh' ? 'Intel Mac OS X 10_15_7' : 'Win64; x64'; return `Mozilla/5.0 (${selectedOS}; ${osVersion}) AppleWebKit/537.36 (KHTML, like Gecko) ${browser}/${version}.0.0.0 Safari/537.36`; } async function loginAccount(account) { const { username, password, panelnum, type } = account let url = type === 'ct8' ? 'https://panel.ct8.pl/login/?next=/' : `https://panel${panelnum}.serv00.com/login/?next=/` const userAgent = generateRandomUserAgent(); try { const response = await fetch(url, { method: 'GET', headers: { 'User-Agent': userAgent, }, }) const pageContent = await response.text() const csrfMatch = pageContent.match(/name="csrfmiddlewaretoken" value="([^"]*)"/) const csrfToken = csrfMatch ? csrfMatch[1] : null if (!csrfToken) { throw new Error('CSRF token not found') } const initialCookies = response.headers.get('set-cookie') || '' const formData = new URLSearchParams({ 'username': username, 'password': password, 'csrfmiddlewaretoken': csrfToken, 'next': '/' }) const loginResponse = await fetch(url, { method: 'POST', headers: { 'Content-Type': 'application/x-www-form-urlencoded', 'Referer': url, 'User-Agent': userAgent, 'Cookie': initialCookies, }, body: formData.toString(), redirect: 'manual' }) console.log(`Login response status: ${loginResponse.status}`) console.log(`Login response headers: ${JSON.stringify(Object.fromEntries(loginResponse.headers))}`) const loginResponseBody = await loginResponse.text() console.log(`Login response body: ${loginResponseBody.substring(0, 200)}...`) if (loginResponse.status === 302 && loginResponse.headers.get('location') === '/') { const loginCookies = loginResponse.headers.get('set-cookie') || '' const allCookies = combineCookies(initialCookies, loginCookies) const dashboardResponse = await fetch(url.replace('/login/', '/'), { headers: { 'Cookie': allCookies, 'User-Agent': userAgent, } }) const dashboardContent = await dashboardResponse.text() console.log(`Dashboard content: ${dashboardContent.substring(0, 200)}...`) if (dashboardContent.includes('href="/logout/"') || dashboardContent.includes('href="/wyloguj/"')) { const nowUtc = formatToISO(new Date()) const nowBeijing = formatToISO(new Date(Date.now() + 8 * 60 * 60 * 1000)) const message = `账号 ${username} (${type}) 于北京时间 ${nowBeijing}(UTC时间 ${nowUtc})登录成功!` console.log(message) await sendTelegramMessage(message) return { success: true, message } } else { const message = `账号 ${username} (${type}) 登录后未找到登出链接,可能登录失败。` console.error(message) await sendTelegramMessage(message) return { success: false, message } } } else if (loginResponseBody.includes('Nieprawidłowy login lub hasło')) { const message = `账号 ${username} (${type}) 登录失败:用户名或密码错误。` console.error(message) await sendTelegramMessage(message) return { success: false, message } } else { const message = `账号 ${username} (${type}) 登录失败,未知原因。请检查账号和密码是否正确。` console.error(message) await sendTelegramMessage(message) return { success: false, message } } } catch (error) { const message = `账号 ${username} (${type}) 登录时出现错误: ${error.message}` console.error(message) await sendTelegramMessage(message) return { success: false, message } } } function combineCookies(cookies1, cookies2) { const cookieMap = new Map() const parseCookies = (cookieString) => { cookieString.split(',').forEach(cookie => { const [fullCookie] = cookie.trim().split(';') const [name, value] = fullCookie.split('=') if (name && value) { cookieMap.set(name.trim(), value.trim()) } }) } parseCookies(cookies1) parseCookies(cookies2) return Array.from(cookieMap.entries()).map(([name, value]) => `${name}=${value}`).join('; ') } async function sendSummary(results) { const successfulLogins = results.filter(r => r.success) const failedLogins = results.filter(r => !r.success) let summaryMessage = '登录结果统计:\n' summaryMessage += `成功登录的账号:${successfulLogins.length}\n` summaryMessage += `登录失败的账号:${failedLogins.length}\n` if (failedLogins.length > 0) { summaryMessage += '\n登录失败的账号列表:\n' failedLogins.forEach(({ username, type, message }) => { summaryMessage += `- ${username} (${type}): ${message}\n` }) } console.log(summaryMessage) await sendTelegramMessage(summaryMessage) } async function sendTelegramMessage(message) { const telegramConfig = JSON.parse(TELEGRAM_JSON) const { telegramBotToken, telegramBotUserId } = telegramConfig const url = `https://api.telegram.org/bot${telegramBotToken}/sendMessage` try { await fetch(url, { method: 'POST', headers: { 'Content-Type': 'application/json' }, body: JSON.stringify({ chat_id: telegramBotUserId, text: message }) }) } catch (error) { console.error('Error sending Telegram message:', error) } } function formatToISO(date) { return date.toISOString().replace('T', ' ').replace('Z', '').replace(/\.\d{3}Z/, '') } function delay(ms) { return new Promise(resolve => setTimeout(resolve, ms)) }3、设置变量,都在Workers 或 Pages设置中变量1变量名称:ACCOUNTS_JSON其中“帐号1服务器”为,如:你的帐号在s2.serv00.com,则填写:2,帐号可随意增加和减少,最后一个大括号后没逗号。[ { "username": "serv00帐号1", "password": "serv00帐号1密码", "panelnum": "帐号1服务器", "type": "serv00" }, { "username": "serv00帐号2", "password": "serv00帐号2密码", "panelnum": "帐号1服务器", "type": "serv00" }, { "username": "serv00帐号3", "password": "serv00帐号3密码", "panelnum": "帐号1服务器", "type": "serv00" } ]变量2变量名称:ACCOUNTS_JSON设置TG通知,不用不设置{ "telegramBotToken": "TG Token:如72492745590000:AAGCNhe663WD3z_PxTaUvSAYlKFBJ5Q3A2YQQQQ", "telegramBotUserId": "59515042110000" }变量3设置“触发事件”,如以下设置是:每月12号11时4分触发启动,可修改为任意时间11 4 12 * *
2024年08月12日
0 阅读
2 评论
0 点赞