MIYALIAN - 技术
type: channel
link: https://miyalian.com/index.php/category/code/
items: iRedMail释疑--端口开放
items: 小米路由器ssh root密码计算
items: 一键安装Docker
items: LINUX终端设置代理
items: chatgpt提示词工程prompt
items: ubuntu20.04安装xfce并通过xrdp远程访问
items: Alist版本v3头部及内容配置
items: 使用docker多开alist容器

iRedMail释疑--端口开放
type: item
date: 2024-10-11T20:34:00+08:00
description: iredmail搭建过程中默认安装了nftables，配置文件在路径为/etc/nftables.conf，以开放5000端口为例只需修改此文件，在 type filter hook input priority 0;下面加上行 # 允许5000端口 tcp dport 5000 accept并注释掉 # count and drop any other traffic # counter drop两行，之后重启nftables运行命令 nft -f /etc/nftables.conf即可。

小米路由器ssh root密码计算
type: item
date: 2024-10-01T14:00:00+08:00
description: 适用于搭载MT7620、MT7621、MT7628芯片的小米路由器。1. python版将下面的内容保存为sn2pass.py文件import sys import hashlib salt = { 'r1d': 'A2E371B0-B34B-48A5-8C40-A7133F3B5D88', 'others': '6D2DF50A-250F-4A30-A5E6-D44FB0960AA0', } def main(): try: sn = sys.argv[1] except IndexError: sn = input('请输入SN码: ') print(get_pass(sn)) def get_pass(sn: str): # SN码加盐后进行md5加密取前八位字符串返回 return hashlib.md5((sn + get_salt(sn)).encode()).hexdigest()[:8] def get_salt(sn): # 通过判断字符串中是否含有/来获取对应的盐 if '/' in sn: return salt['others'].lower() return salt['r1d'] if __name__ == '__main__': main()使用方法：打开cmd窗口，运行python sn2pass.py SN码或直接运行python sn2pass.py回车后输入SN码2. html版将下面的内容保存为sn2pass.html文件 小米路由器SSH ROOT密码计算器 输入SN: CALC 使用方法：双击sn2pass.html文件，输入sn码后点击CALC键即可生成。

一键安装Docker
type: item
date: 2024-09-25T22:37:00+08:00
description: 环境经本人实测，Ubuntu、Debian、Armbian、Centos均可使用。Docker官方安装脚本curl -fsSL https://get.docker.com | bash -s docker搭配前文linux终端设置代理食用效果更佳。

LINUX终端设置代理
type: item
date: 2024-09-25T22:30:00+08:00
description: 环境Windows10电脑，Ubuntu(in VMware)，Clash Verge1.6.1注：本教程中，Windows与Ubuntu在同一局域网内，Ubuntu虚拟机的网络适配器为桥接模式，Windows的ip地址为192.168.124.9，Ubuntu的ip地址为192.168.124.32，下文中的ip地址按需更改。原理windows10运行clash verge，开放本机的7897端口作为代理端口，境外流量由此端口进出，通过为ubuntu设置使用windows的代理端口，可实现ubuntu的境外网站流量进出自由，加速拉取GitHub、Docker等网站的文件。1.设置临时代理(仅本次会话有效)export http_proxy=http://192.168.124.9:7897 export https_proxy=http://192.168.124.9:78972. 设置永久代理(长期有效，除非手动清除)sudo nano /etc/environment //修改系统环境变量文件添加以下内容http_proxy="http://192.168.124.9:7897" https_proxy="http://192.168.124.9:7897"3.为apt设置代理(加速apt install)sudo nano /etc/apt/apt.conf.d/99proxy添加以下内容Acquire::http::Proxy "http://192.168.124.9:7897"; Acquire::https::Proxy "http://192.168.124.9:7897";扩展在境外服务器运行hysteria2等代理服务，运行订阅链接转换docker，再运行shellcrash，于是可以在任一台可联网服务器设置代理服务使用前文境外服务器的流量代理加速访问任意网站。

chatgpt提示词工程prompt
type: item
date: 2024-05-19T20:45:19+08:00
description: 充当 Linux 终端我想让你充当 Linux 终端。我将输入命令，您将回复终端应显示的内容。我希望您只在一个唯一的代码块内回复终端输出，而不是其他任何内容。不要写解释。除非我指示您这样做，否则不要键入命令。当我需要用英语告诉你一些事情时，我会把文字放在中括号内[就像这样]。我的第一个命令是 pwd充当英语翻译和改进者我希望你能担任英语翻译、拼写校对和修辞改进的角色。我会用任何语言和你交流，你会识别语言，将其翻译并用更为优美和精炼的英语回答我。请将我简单的词汇和句子替换成更为优美和高雅的表达方式，确保意思不变，但使其更具文学性。请仅回答更正和改进的部分，不要写解释。我的第一句话是“how are you ?”，请翻译它。充当论文润色者（拿摘要部分举例）请你充当一名论文编辑专家，在论文评审的角度去修改论文摘要部分，使其更加流畅，优美。下面是具体要求：能让读者快速获得文章的要点或精髓，让文章引人入胜；能让读者了解全文中的重要信息、分析和论点；帮助读者记住论文的要点字数限制在300字以下请你在摘要中明确指出您的模型和方法的创新点，强调您的贡献。用简洁、明了的语言描述您的方法和结果，以便评审更容易理解论文下文是论文的摘要部分，请你修改它：充当英翻中下面我让你来充当翻译家，你的目标是把任何语言翻译成中文，请翻译时不要带翻译腔，而是要翻译得自然、流畅和地道，使用优美和高雅的表达方式。请翻译下面这句话：“how are you ?”充当英英词典(附中文解释)将英文单词转换为包括中文翻译、英文释义和一个例句的完整解释。请检查所有信息是否准确，并在回答时保持简洁，不需要任何其他反馈。第一个单词是“Hello”充当前端智能思路助手替代：百度、谷歌人工搜索我想让你充当前端开发专家。我将提供一些关于Js、Node等前端代码问题的具体信息，而你的工作就是想出为我解决问题的策略。这可能包括建议代码、代码逻辑思路策略。我的第一个请求是“我需要能够动态监听某个元素节点距离当前电脑设备屏幕的左上角的X和Y轴，通过拖拽移动位置浏览器窗口和改变大小浏览器窗口。”担任面试官示例：Java 后端开发工程师、React 前端开发工程师、全栈开发工程师、iOS 开发工程师、Android开发工程师等。我想让你担任Android开发工程师面试官。我将成为候选人，您将向我询问Android开发工程师职位的面试问题。我希望你只作为面试官回答。不要一次写出所有的问题。我希望你只对我进行采访。问我问题，等待我的回答。不要写解释。像面试官一样一个一个问我，等我回答。我的第一句话是“面试官你好”文字冒险游戏我想让你扮演一个基于文本的冒险游戏。我在这个基于文本的冒险游戏中扮演一个角色。请尽可能具体地描述角色所看到的内容和环境，并在游戏输出的唯一代码块中回复，而不是其他任何区域。我将输入命令来告诉角色该做什么，而你需要回复角色的行动结果以推动游戏的进行。我的第一个命令是'醒来'，请从这里开始故事担任产品经理请确认我的以下请求。请您作为产品经理回复我。我将会提供一个主题，您将帮助我编写一份包括以下章节标题的PRD文档：主题、简介、问题陈述、目标与目的、用户故事、技术要求、收益、KPI指标、开发风险以及结论。我的需求是：做一个赛博朋克的网站首页。做表格请你充当表格生成器。您只会回复我一个包含10行的表格。我会告诉你在单元格中写入什么，你只会以markdown表格形式回复结果，而不是其他任何内容。请注意，您的回答应该是简明扼要的，不需要附带任何额外的解释。你只会回复 markdown 表的作为结果。首先，回复我十二生肖表。充当英语发音帮手请为说汉语的人提供英语发音帮助。我会给你汉语句子，你需回答正确的英语发音。仅回答发音，不需要翻译或解释。请使用汉语谐音注音。首句：“上海的天气怎么样？”充当旅游指南我想让你做一个旅游指南。我会把我的位置写给你，你会推荐一个靠近我的位置的地方。在某些情况下，我还会告诉您我将访问的地方类型。您还会向我推荐靠近我的第一个位置的类似类型的地方。我的第一个建议请求是“我在上海，我只想参观博物馆。”充当中国亲妈请你扮演我妈，用我妈的口气来教育我。骂我，批评我，催我结婚，让我回家。给我讲七大姑八大姨家的孩子都结婚了，为啥就我单身，再给我安排几个相亲对象。截图充当“电影/书籍/任何东西”中的“角色”角色可自行替换我希望你表现得像西游记中的唐三藏。我希望你像唐三藏一样回应和回答。不要写任何解释。必须以唐三藏的语气和知识范围为基础。我的第一句话是“你好”作为广告商我想让你充当广告商。您将创建一个活动来推广您选择的产品或服务。您将选择目标受众，制定关键信息和口号，选择宣传媒体渠道，并决定实现目标所需的任何其他活动。我的第一个建议请求是“我需要帮助针对 18-30 岁的年轻人制作一种新…

ubuntu20.04安装xfce并通过xrdp远程访问
type: item
date: 2024-03-25T17:25:08+08:00
description: 一、安装桌面环境Ubuntu 服务器通常使用命令行进行管理，并且默认没有安装桌面环境。如果你正在运行 Ubuntu 桌面版，忽略这一步。在 Ubuntu 源仓库有很多桌面环境供你选择。一个选择是安装 Gnome，它是 Ubuntu 20.04 的默认桌面环境。另外一个选项就是安装 xfce。它是快速，稳定，并且轻量的桌面环境，使得它成为远程服务器的理想桌面。运行下面任何一个命令去安装你选择的桌面环境：安装 Xfce（推荐的轻量级桌面环境，安装该环境即可）sudo apt update sudo apt install xubuntu-desktop安装 Gnome（桌面版的Ubuntu已包含该环境，远程服务器可以不安装本环境）sudo apt update sudo apt install ubuntu-desktop取决于你的系统，下载和安装 GUI 软件包，将会花费一些时间。在早期版本的Ubuntu上，可能需要单独安装并配置Xfce组件，Ubuntu 20.04的软件包中集成了必要的组件，通过上述命令可完成安装。二、安装XRDP软件通过以下命令安装并启用xrdp远程桌面组件。sudo apt-get update sudo systemctl start xrdp sudo systemctl enable xrdp sudo systemctl status xrdp三、配置Xfce及用户配置 Xfce的session（重点，本步骤强制xrdp使用Xfce桌面）不启用则无法使用Xfceecho xfce4-session >~/.xsession sudo systemctl restart xrdp添加xrdp用户到ssl-cert组（如果远程桌面访问不了，可能需要将当前用户也添加到该组）sudo adduser xrdp ssl-cert sudo systemctl restart xrdp四、其他配置和说明配置ufw防火墙。如果你的Linux系统启用了ufw防火墙。需要允许xrdp通过防火墙端口。xrdp默认使用3389端口，这和windows远程桌面是一样的。以下两种命令均可以开放3389端口，后一种端口限制了可以访问的ip范围，在确定客户机ip的情况下这种方式更安全一些。sudo ufw allow 3389 sudo ufw allow from 192.168.33.0/24 to any port 3389修改xrdp配置文件。xrdp的配置文件在/etc/xrdp目录中，一般来说不需要对该文件进行修改。关于配置文件，可以参考Linux的说明文件，xrdp.ini五、远程登录和远程登录windows主机一样，在windows命令界面输入mstsc，输入linux主机的ip地址或域名即可远程登录。

Alist版本v3头部及内容配置
type: item
date: 2024-02-25T17:14:00+08:00
description: 可以通过 CSS 隐藏页面底部的由 AList 驱动和管理。在自定义头部输入框添加以下内容： /* 隐藏页面底部的由 AList 驱动和管理 */ .footer .hope-stack { display: none; } 仍然可以通过 http://ip:5244/@manage 进入 AList 管理页面。自定义背景图片在自定义头部输入框添加以下内容： ```隐藏右侧操作按钮在自定义头部输入框添加以下内容： 自定义头部设置 看板娘加载指定模型 自定义内容网页鼠标点击特效 - 核心价值观关键字

使用docker多开alist容器
type: item
date: 2024-02-14T22:30:00+08:00
description: 1.首先安装dockercurl -fsSL https://get.docker.com | bash -s docker2.然后启动docker并设置开机自启动systemctl start docker && systemctl enable docker2.1.查看docker运行情况systemctl status docker看到是绿色的active (running)即表示docker已运行3.然后拉取alist镜像并运行一个名叫alist1的docker容器docker run -d --restart=unless-stopped -v /etc/alist1:/opt/alist/data -p 10001:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist1" xhofe/alist:latest3.1解释：/etc/alist1是容器alist1在主机即vps内的的映射目录，不同的容器应映射不同的目录，可按需更改为/etc/alist2，/etc/alist3等等10001:5244表示把alist容器的5244端口映射到公网ip的10001端口，在这里10001可按需更改，如10002，10003等等name="alist1"表示这个docker容器的名称为alist1，也可按需更改，如alist2，alist3等等3.2运行多个alist容器，只需按3.1的内容更改即可如增加一个名叫alist2的docker容器docker run -d --restart=unless-stopped -v /etc/alist2:/opt/alist/data -p 10002:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist2" xhofe/alist:latest增加一个名叫alist3的docker容器docker run -d --restart=unless-stopped -v /etc/alist3:/opt/alist/data -p 10003:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist3" xhofe/alist:latest增加一个名叫alist3的docker容器docker run -d --restart=unless-stopped -v /etc/alist3:/opt/alist/data -p 10003:5244 -e PUID=0 -e PGID=0 -e UMASK=022 --name="alist3" xhofe/alist:latest4.创建好容器后需要更改alist的管理密码docker exec -it alist1 bash解释：进入名称为alist1的容器内执行命令，若进入名为alist2的容器则只需改为docker exec -it alist2 bash5.设置管理员admin的密码为password./alist admin set password6.退出alist1容器同时按住Ctrl和D键