简介
Parkomat.io
,是一个Linux
下创建DNS
+Web
+WebDav
的脚本。当您有很多域名并且通过典型的托管面板进行管理变得太复杂时,Parkomat
很有用。下面是创建WebDav
服务器过程,DNS
和web
为同样配置文件。
特征
DNS
服务器带有全部功能- 具有
SSL
支持的Web
服务器(可以在一个IP
上运行许多证书) WebDav
可轻松上传文件到网页
Github地址:https://github.com/parkomat/parkomat
安装
本安装在Centos 7
下测试成功。
1、安装Go 1.8.3
下载并安装Go
wget https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz --no-check-certificate
tar zxvf go1.8.3.linux-amd64.tar.gz
mv go /usr/local/
添加环境变量
vi /etc/profile
添加如下内容:
export PATH=$PATH:/usr/local/go/bin
export GOROOT=/usr/local/go
使配置生效:
source /etc/profile
查看Go
是否安装成功
go version
2、安装parkomat
go get github.com/parkomat/parkomat
配置文件config.toml
(/your/parkomat/directory
,其中your
为放置文件的根目录)(127.0.0.1
改为自己的服务器IP)
# if you set it to true, Parkomat will serve any domain pointing at it
catch_all = true
[[domains]]
name = "example.domain"
[[domains]]
name = "parkomat.io"
# supports per domain zone settings
[domains.zone]
A = "192.168.0.1"
MX = """
1 better.mail.server
"""
TXT = """
hello world
"""
# each domain will use following zone settings
[zone]
# for both .domain and www.domain
A = "127.0.0.1"
MX = '''
1 test1.mail.server
10 test2.mail.server
'''
[web]
ip = "127.0.0.1"
port = 80
path = "./www"
# make sure that path exists
# for example issue mkdir -p /var/log/parkomat
access_log = "/var/log/parkomat/access.log"
[webdav]
enabled = true
username = "hello"
password = "world"
# your share will be under http://example.domain/dav/
mount = "/dav/"
[dns]
ip = "127.0.0.1"
port = 53
# details of dns servers for NS record
[[dns.servers]]
name = "ns1.parkomat.co"
ip = "127.0.0.1"
[[dns.servers]]
name = "ns2.parkomat.co"
ip = "127.0.0.1"
./web
目录
.
├── default
│ └── public_html
│ └── index.html
├── parkomat.io
| ├── parkomat.io.crt
| ├── parkomat.io.key
| └── public_html
| └── index.html
└── config.toml
要添加新域名,只需创建具有该域名的新目录。如果你想使用SSL
,只需复制domain.crt
和domain.key
文件复制到该域目录(注意不要将它们上传到public_html
目录)。您需要重新启动parkomat
。
原创文章,作者:南猫,如若转载,请注明出处:https://southcat.net/1721/
不妨点个广告再走嘛
相关推荐
-
一款开源免费且快速,高效和安全的跨平台备份程序:Restic使用教程
说明:Restic是使用Golang写的一款开源免费且快速,高效和安全的跨平台备份程序,貌似和以前发的Duplicati差不多,可以存储在本地,云存储服务或远程文件服务器上,并且使用加密技术来你的数据安全性和完整性,同样支持增量备份,可随时备份和恢复备份。并支持3种主要的操作系统Linux,macOS,Windows及一些较小的操作系统FreeBSD,OpenBSD等。 支持的存储: 本地存储 SFTP REST Server Amazon S3 Minio Server OpenStack Swift Backblaze B2 Microsoft Azure Blob Storage Google Cloud Storage 通过rclone挂载的存储(比如Google Drive、OneDrive等) 安装 Github地址:https://github.com/restic/restic Restic可以直接通过系统软件包安装,不过版本好像都有点旧,这里就选择最新的二进制方式安装。 二进制下载地址→传送门,先根据自己的架构选择对应的最新版本,这里只说Linux系统,Windows系统直接下载解压就行了。 使用命令: #32位下载 wget https://github.com/restic/restic/releases/download/v0.9.4/restic_0.9.4_linux_386.bz2 #64位下载 wget https://github.com/restic/restic/releases/download/v0.9.4/restic_0.9.4_linux_amd64.bz2 #解压并删除压缩包 bzip2 -d restic*.bz2 && rm -rf restic*.bz2 #授权 chmod +x restic* #移动二进制文件 mv restic* /usr/local/bin/restic #查看版本 restic version 之后可以直接使用restic self-update命令升级二进制文件。 配置存储库 安装好了Restic后,还需要配置下存储方式,也就是你想备份到服务器本地,还是其它远程服务上。以下配置过程中都会要你输入密码,别忘了,不然就找不回来了。 这里只说常用的本地、sftp、rclone备份方式,其它的远程库配置可以看下官方文档→传送门。 1、备份到本地 #备份到本地/moerats文件夹 restic init --repo /moerats 2、SFTP方式该方法适合将文件备份到另一台VPS服务器。首先我们需要在要备份的服务器上生成个公钥再复制给另一台远程服务器,这样就可以实现免密码登录了。 提示:以下将需要备份的服务器称为A,备份到远程文件服务器B。 先使用SSH客户端登录服务器A,使用命令: cd ~ ssh-keygen -t rsa 这里会要你命名密匙名称(这里建议使用默认名称),然后连续按几次Enter,这时候会在/root/.ssh文件夹生成2个ssh密钥,然后我们查看公钥id_rsa.pub。 cat ~/.ssh/id_rsa.pub 复制好公钥。 再使用SSH登录服务器B,使用命令: #复制服务器A中的id_rsa.pub值 echo 'xxxxxxx' >> ~/.ssh/authorized_keys 如果提示No such file or directory错误信息,先使用mkdir ~/.ssh命令,再重新使用上面的命令。然后免密登录就配置完成了。 然后在服务器A上使用命令: #root为服务器B的用户名,1.1.1.1为服务器ip,端口默认为22,/moerats为服务器B上的存储文件夹,如果不存在则会自动创建...
-
WordPress设置登陆用户和未登陆用户显示不同菜单
说明:一般来说网站头部有一个导航菜单,有时候由于某些因素我们需要给登陆和未登陆用户分别显示不同的菜单项,这里说下方法。1、创建两个菜单先进入WordPress后台-外观-菜单中,创建两个菜单,菜单名称分别设置成:已登陆和未登录,并给这两个菜单分配不同的菜单项。 2、确定菜单位置名称开始下一步前,我们需要知道菜单位置名称,也就是theme_location参数的值,用文本编辑器打开当前主题目录中的header.php,搜索wp_nav_menu一般都能找到这个值,代码一般长这样: // theme_location后面的 top 就是我们要找的值 wp_nav_menu( array( 'theme_location' => 'top', 'menu_id' => 'top-menu') ); 3、添加执行代码最后,在当前主题的functions.php添加以下代码即可: function ludou_nav_menu_args($args = '') { // 下面的top改成第2步获取到的菜单位置名称 if ($args['theme_location'] == 'top') { if (is_user_logged_in()) { $args['menu'] = '已登陆'; } else { $args['menu'] = '未登录'; } } return $args; } add_filter('wp_nav_menu_args', 'ludou_nav_menu_args');
-
分享个免费观看各大视频网站VIP资源的网站
说明:很多人遇到一些喜欢的电视剧或者电影的时候,发现要会员才能看,可是就为了这一个电视开会员就没必要了,所以这里就分享了这个办法,可以免费观看各大视频网站VIP资源。 疯狂解析-vip视频在线解析地址:http://vip.ifkdy.com
-
一个可以同时监控多个VPS服务器信息的面板:psdash安装教程
简介 psdash是一个可以监控所有VPS服务器的CPU、内存、硬盘、网络、SWAP的面板。本教程是基于psdash的基础上添加httpbasicauth(也就是打开页面弹出提示框,要输入用户名密码),可自定义模板。 截图 功能 psdash的所有功能支持多节点/集群部署,所有数据每3秒自动更新,无需手动刷新页面。 总览页:支持查看 cpu, disks, network, users, memory, swap , network 进程:进程列表,并展示每个进程详情,包括打开的文件数、打开的连接数、内存占用、子进程、资源限制 硬盘:所有硬盘和分区 网络:所有网络接口和使用的流量,以及当前的网络连接 日志:展现自定义的日志文件详情,并支持搜索文件内容 安装 Github地址:https://github.com/wenguonideshou/psdash_HTTPBasicAuth。 1、主节点和agent节点都执行下面的命令(安装psdash) #Debian/Ubuntu apt-get install build-essential python-dev -y apt-get install python-setuptools -y git clone https://github.com/Jahaja/psdash.git cd psdash pip install -U setuptools python setup.py install #RHEL (Fedora, CentOS) yum groupinstall "Development Tools" -y yum install python-devel -y yum install python-setuptools -y git clone https://github.com/Jahaja/psdash.git cd psdash pip install -U setuptools python setup.py install 2、主节点执行 pip install flask-httpauth git clone https://github.com/wenguonideshou/psdash_HTTPBasicAuth.git cd psdash_HTTPBasicAuth python run.py -l '/var/log/**/*.log' 3、agent节点执行 psdash -a --register-as xxx -l...
-
Windows一键傻瓜式免编译Monero矿机,并用CPU挖矿Monero
说明:现在好多不少人在用服务器挖矿门罗币Monero,至于能不能回本,还是个未知数,不过可以补贴下买服务器的成本倒是可以的,现在就发个Windows上很方便的挖Monero教程,本教程由hostloc大佬shc提供,我们可以用来在自己的电脑上试试,至于电费能不能挖回来,那就需要试试了。也许还能小赚一笔。这都说不准。 简介 Windows下面挖掘Monero是一件非常简单的事情,并不像Linux下面还需要复杂地编译,Windows里面可以直接运行编译好的矿机程序。 需要注意的是,Windows系统中CPU使用没有优化得像Linux那样好,因此同样的CPU, 在Windows下挖矿的性能会显著低于在Linux操作系统。相反地,显卡驱动在Windows下的优化通常比在Linux下的优化好,因此显卡挖矿在Windows下要比在Linux的性能高一些。 教程 下面介绍一下怎样在Windows下面挖矿。 首先,我们需要注册一个钱包。几乎所有的虚拟币交易所都支持Monero的交易,我们在任何一家交易所注册一个账号后就可以获得一个Monero钱包地址。如果你不知道哪里可以注册账号,可以到这个链接上注册https://hitbtc.com。注册好后在后台获得Monero钱包地址。 然后我们要选择一个矿池。Monero矿池有很多,官网http://moneropools.com/中列举了很多个矿池,可以选择想加入的矿池。我这里选择的是xmr.nanopool.org。 再然后我们下载矿机软件:https://github.com/nanopool/Wolf-XMR-Miner/releases/download/v0.4/wolf-xmr-miner-v0.4.zip 下载解压后打开压缩包。找到文件xmr-cpu.conf, 编辑该文件。 { "Algorithms": [ { "name": "CryptoNight", "devices": [ { "index": -1, "threads": 4, "rawintensity": 8, "worksize": 8 } ], "pools": [ { "url": "stratum+tcp://xmr-us-east1.nanopool.org:14444", "user": "4637eui9eqtCBybcVPve35w0es3FAnff7aPZH9ximGJiepquoe1zYyxjXqrT3anyZ22j7DEE74Gk19fjisH2nNiC3bvywmx.f4ce782u0db7ji92u20a7b545392810acdd39fj16b247b279163a9e238jb5011.worker_01/hello@example.com", "pass": "x" } ] } ] } 在User那里填写你的钱包地址、矿工号、Payment ID以及邮箱,然后将threads这条改成你要用来挖矿的核数。注意,这里要填物理核数,比如你4核8线程的CPU, 最多只能填4,如果填超过4的话挖矿性能会骤降。 保存之后,运行压缩包里的start_CPU.bat就开始挖矿啦。 可以在命令提示符中看到实时的算力统计。如果有什么其他问题,欢迎去大佬博客留言哈!
-
一款强大好用的图床程序:chevereto安装教程
说明:chevereto是目前最好的图床之一了。功能也非常强大。其免费版和收费版的区别,在于收费版多了硬盘扩展,社交分享功能和技术支持。硬盘扩展指的是你可以通过sftp等方式把上传的文件储存在其他服务器上。所以个人觉得,这个免费版已经足够使用了。而且chevereto的安装也非常简单,并且支持中文。网上很多教程都写得不是很清楚,这里就发个详细安装教程吧。官网:https://chevereto.com/DEMO:https://demo.chevereto.com/ 截图 安装 环境要求:Apache/Nginx、PHP 5.5+、MySQL 5.0+ 1、搭建web环境我们可以用lnmp、lamp一键包或者宝塔之类的面板来搭建web环境。lnmp安装方法可参考:lnmp1.4安装教程。宝塔安装方法可看:宝塔面板安装教程。 2、上传chevereto程序搭建好web环境后,添加网站并解析,再上传chevereto程序到网站目录,chevereto下载地址:https://github.com/Chevereto/Chevereto-Free。这里以lnmp为例,执行命令: cd /home/wwwroot/www.yourdomain.com wget https://www.southcat.net/usr/down/Chevereto_v1.0.8.tar.gz tar zfvx Chevereto_v1.0.8.tar.gz chmod -R 775 ./* 修改网站配置文件/usr/local/nginx/conf/vhost/xx.com.conf,在server中添加以下代码。 location / { try_files $uri $uri/ /index.php?$query_string; } 然后重启Nginx,使用命令: /etc/init.d/nginx restart #或者 lnmp restart 最后就可以打开你的网站按要求填入数据库信息进行安装了。 注意:经测试,使用v1.0.7程序的打开网站后可能会出现Chevereto can’t create the app/settings.php file. You must manually create this file该错误,这时在app目录新建settings.php文件并给予可写入权限即可,也可使用命令,以lnmp为例: cd /home/wwwroot/xx.com/app touch settings.php chmod -R 777 settings.php
-
Aria2+Aria2Ng+OneIndex一键安装脚本,下载后自动上传至OneDrive
说明:博主之前发了很多网盘离线教程了,包括一些脚本,查看:Aria2+Rclone+DirectoryLister+Aria2Ng一键安装脚本,差不多都是配合Google Drive网盘的,不过OneDrive的也有,但都不是很理想,现在感觉OneIndex挺不错的,配合OneDrive可以实现观看/下载不走VPS流量的离线BT网盘,这里就整了个一键脚本,将以往需要的2个域名变成了1个,且下载文件自动上传到OneIndex/OneDrive指定文件夹,并删除本地文件,使其不占VPS空间,添加并自动更新Trackers服务器,有兴趣的可以玩玩。 截图 更新 【2018.12.30】 修复重定向次数过多的问题,现已修复(这个抱歉,忘记在脚本里注释部分$,导致出了点小问题)。 【2018.12.22】 替换伪静态规则,调整缓存刷新时间 【2018.12.21】 修复一点小问题,并增加定时刷新缓存和token,优化定时任务步骤,最后不再显示定时任务编辑界面。 安装 系统要求:脚本只适用于Debian 8、9,且无网站环境,会自动签发Let's Encrypt SSL证书,请提前将域名解析至VPS服务器。 运行命令: wget https://www.southcat.net/usr/shell/Aria2_OneIndex.sh && bash Aria2_OneIndex.sh 按要求输入以下选项: 请输入你的OneIndex域名信息(如:oneindex.southcat.net): 请输入你的Aria2密钥: 请输入你OneIndex/OneDrive中的一个文件夹(格式:RATS,此后所有文件都会上传到该文件夹): 输入好了后直到安装完成,如果Nginx安装失败,检查下系统是否自带Apache2,然后卸载掉就行了。Aria2Ng访问地址:http://IP:8080,OneIndex后台地址:https://xx.com/?/admin,默认密码:oneindex。 提示:这里好几个同学反映进不去后台,博主看了下原因,顺便再说下,安装好了后,需要先访问自己的域名,然后绑定OneDrive账号了才能访问后台,不然是进不去后台的! 绑定OneDrive后建议先访问后台,如果前台出现HTTP ERROR 500的情况,可以重新下载源码后再绑定账号,使用命令: #将domain.com改成你的域名再运行以下命令 cd /home/wwwroot/domain.com rm -rf ./* git clone https://github.com/donwa/oneindex.git mv oneindex/* ./ chmod -R 777 config/ cache/ 相关文件 OneIndex及域名根目录:/home/wwwroot/xx.com Aria2Ng根目录:/home/wwwroot/aria2ng 域名证书目录:/home/wwwroot/ssl Aria2配置文件夹:/root/.aria2 Aria2下载目录:/root/Download 相关提示 如果想使用手动安装的,参考:使用Aria2+Aria2Ng+OneIndex+OneDrive建立不限流量/离线BT下载/在线观看网盘。关于OneIndex更详细的介绍和使用方法,包括OneDrive 5T网盘的获取可以查看:OneIndex一键安装脚本 for Debian。由于OneIndex自身原因,上传可能存在些BUG,会导致有的文件上传失败,不过博主测试了下,大多数都可以上传,不怎么影响使用。最后如果你是免费申请的OneDrive 5T网盘或者花的几块钱买的,建议别放重要资料,玩玩就行了。 关于上传
-
Windows系统使用Win32-loader工具转换成Debian 9系统
说明:前面说了很多VPS服务器从Linux系统自由转换Win或其他系统教程,查看:Linux VPS纯净版Debian/Ubuntu/CentOS/Windows系统一键脚本,现在再发个VPS从Win系统转换成Linux系统的方法,虽然很多主机商都自带Linux系统,但学一下手动转换Linux也无妨。 方法 要求:内存建议1G,需要有VNC,且提前记录好你Win服务器的网络信息(IP地址/子网掩码/网关地址/DNS服务器)。 1、安装Win32-loader远程登录你的VPS服务器,打开下载地址:Win32-loader,下载并安装win32-loader.exe,期间选择Normal模式- Begin install on this computer,安装完成后点击Close关闭窗口,最后重启即可。 2、安装Debian 9系统这时候进入到VNC界面,然后到达开机启动菜单,选择Debian GNU/Linux并进入,选择语言en_US.UTF8、键盘American English后开始获取网络信息。 注意:部分服务器,网关不提供DHCP能力,所以你可能需要在接下来的步骤,输入重启前准备好的网络信息! 如果DHCP成功,自动进入下一步,无需进行任何操作;如果失败,则需要你跟着教程继续手工填写网络信息。然后会依次要你输入服务器IP-子网掩码-网关地址-DNS服务器,如果输入正确会进入到下一步的安装界面。 接下来会依次要求输入你的主机名、域名(留空)、镜像源。 这里镜像源以China为例,然后手动选择一个你想要的镜像源。 然后会要求你输入用户名和root密码。再进入安装向导,进入到磁盘分区,选择Guided - use entire disk,之后再选择All files in one partition,最后一步选择Yes点击Continue直到分区完成。 接下来开始安装Debian 9系统,勾选Yes然后Continue。 开始一系列配置后,会问你是否参加软件包流行度测试,勾选No然后Continue。 运行tasksel来快速选择要安装的软件包,勾选Debian desktop environment、print server、SSH Server,然后Continue。 接下来询问你是否要安装GRUB到MBR,勾选Yes然后Continue。最后基本都是默认,自己看着办,然后等待安装完成。 3、使用SSH登录安装好了后,是没权限登录SSH客户端的,这时候我们进入VNC,登录进去使用命令: #切换root权限 su - #编辑SSH配置文件 nano /etc/ssh/sshd_config 将#PermitRootLogin prohibit-password,修改为PermitRootLogin yes,再使用Ctrl+X、Y、Enter保存退出。最后使用service sshd restart使配置生效,然后就可以使用SSH登录服务器了。 如果想要其他系统,就使用文章开通的那个教程进行安装即可。
-
Socat一键安装脚本,可转发TCP和UDP流量
说明:一般用海外服务器的都会遇到线路爆炸,网络不好的情况,导致我们用55R等软件的效果很差,这时候就可以用端口转发来改善这种情况,常见的转发有rinetd、Haproxy、iptables、socat,前面2种只能转发TCP,后面TCP/UDP都可以转发,如果用来玩游戏的话就需要转发UDP了,博主就写了个Socat一键安装脚本,这里分享下。 安装 系统要求:支持CentOS 6+ 、Debian 7+、Ubuntu 14+。脚本说明:脚本默认开启UDP、TCP转发,带开机自启功能,且一次只能转发单个端口,如果想转发多个端口请重复运行本脚本。提示:该脚本在Vultr各个系统均测试通过,包括最新的Ubuntu 18.04,如果有其它问题可以留言。 使用root运行以下命令: wget https://www.southcat.net/usr/shell/socat.sh && bash socat.sh 按要求输入以下信息: #如果你要用本地服务器的3333端口转发IP为1.1.1.1服务器的6666端口,那就依次填入指定参数。 请输入本地端口:3333 请输入远程端口:6666 请输入远程IP:1.1.1.1
-
Nginx环境强制http 301跳转https的方法
说明:现在越来越多的人开始为网站启用ssl证书了,安装了ssl后我们都需要让http强制跳转https,并确定网站唯一性,这里介绍了几种方法。 方法 提示:以军哥的lnmp一键安装包为例,Nginx配置文件修改地址为/usr/local/nginx/conf/vhost/xx.com.conf。方法一: if ($scheme = http ) { return 301 https://$host$request_uri; } 方法二: server_name southcat.net ; rewrite ^(.*) https://southcat.net$1 permanent; 方法三: if ($server_port = 80 ) { return 301 https://$host$request_uri; } 方法四: server_name southcat.net ; return 301 https://$server_name$request_uri;