跳转到内容

luoxi

管理员
  • 内容数

    218
  • 注册日期

  • 最后上线

  • 得奖次数

    30

luoxi最近的得奖日 5月30日

luoxi的努力得到会员的称赞!

论坛声誉

53 Excellent

4位 关注者

最新游客

642次 查看数
  1. 因步骤略繁琐,为了让各位有看下去的动力,先上两首歌,你阔以边听边折腾,这样不会感觉到枯燥。。 需要用到两个开源的项目,分别是: https://github.com/AlphaReign/www-php # 前端(WEB服务) https://github.com/AlphaReign/scraper # 爬虫(后端) 你还需要准备一台配置较高的海外VPS或者独立服务器(VPS至少4GB内存,CPU也不能太渣) 以下步骤在Debian10上操作,先安装一些需要用到的软件: apt -y update apt -y install build-essential curl git unzip python-certbot-nginx nginx mariadb-server 因前端需要PHP7.0,而Debian10的官方存储库内只有7.3,故这里添加sury的源来安装PHP7.0: apt -y install apt-transport-https ca-certificates lsb-release wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg echo "deb https://packages.sury.org/php/ $(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list apt -y update 安装需要用到的PHP7.0软件包: apt -y install php7.0-common php7.0-cli php7.0-cgi php7.0-fpm \ php7.0-mysql php7.0-sqlite3 php7.0-curl php7.0-mbstring 安装composer: curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/bin/composer 安装nodejs/pm2/yarn: curl -sL https://deb.nodesource.com/setup_10.x | bash - apt -y install nodejs npm i -g pm2 npm i -g yarn 安装java/es: apt -y install gnupg default-jre wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | apt-key add - echo "deb https://artifacts.elastic.co/packages/7.x/apt stable main" | tee -a /etc/apt/sources.list.d/elastic-7.x.list apt -y update apt -y install elasticsearch 初始化MySQL/登录MySQL: mysql_secure_installation mysql -u root -p 创建一个名为dht的用户/数据库: CREATE DATABASE dht CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; CREATE USER 'dht'@'localhost' IDENTIFIED BY '设置你的数据库用户密码'; GRANT ALL PRIVILEGES ON dht.* TO 'dht'@'localhost' WITH GRANT OPTION; FLUSH PRIVILEGES; quit 将之前安装的软件设置开机自启: systemctl enable nginx systemctl enable mariadb systemctl enable php7.0-fpm systemctl enable elasticsearch 拉取前端源码/安装依赖/修改数据库配置: cd /opt git clone https://github.com/AlphaReign/www-php.git cd www-php composer install nano index.php 找到如下位置修改数据库连接配置: define('DBNAME', 'dht'); define('DBUSER', 'dht'); define('DBPASS', '你的数据库用户密码'); 拉取后端源码/安装依赖/修改数据库配置: cd /opt git clone https://github.com/AlphaReign/scraper.git cd scraper yarn yarn migrate nano config/index.js 找到如下位置修改数据库连接配置: client: 'mysql', connection: { database: 'dht', host: '127.0.0.1', password: '你的数据库用户密码', user: 'dht', 启动后端服务: pm2 start ecosystem.config.js 新建nginx站点配置文件: nano /etc/nginx/conf.d/dht.conf 写入如下配置: server { listen 80; server_name dht.233.fi; # 换成你的域名 index index.html index.htm index.php; root /opt/www-php; client_max_body_size 128g; location / { try_files $uri $uri/ /index.php; } location ~ \.php$ { fastcgi_pass unix:/run/php/php7.0-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } } 重载或者重启nginx: systemctl reload nginx systemctl restart nginx 现在打开你的网站应该会看到一条这样的信息:Doing some maintenance 稍等片刻,一旦有数据入库刷新网页后应该可以看到登录/注册页面: 注册一个账号进去就可以搜索资源了,爬虫是实时入库的,在左上角可以看到当前数据库内一共有多少种子: 毕竟es加身,搜索结果很精准,搜索速度也很快: 这个爬虫的效率也很不错,一分钟几百个种子,挂它几个月,维护一个自己的种子库还不是美滋滋~ 唯一的缺点可能就是对硬件配置要求较高,如果没有闲置机器的话可能要花比较多的钱去买VPS就是了。。 查看完整帖子
  2. 说明:最近博主对文档程序小有需求,找了很久发现都是单页,而且还不支持移动端,不是很理想,所以萌JJ大雕就专门花了半天时间,给博主写了一个,该文档程序基于graphql、nuxtjs、mongodb、keystonejs的实时在线文档编辑系统,可用作各种在线文档编辑和展示,支持markdown语法,对移动端特别友好,这里就开源分享出来,给对文档有需求的人。 截图 安装Gitee地址:https://gitee.com/quazero/topdocs 所需环境:NodeJS、MongoDB。 1、安装NodeJS #Debian/Ubuntu系统 curl -sL https://deb.nodesource.com/setup_10.x | bash - apt install -y git nodejs #CentOS系统 curl -sL https://rpm.nodesource.com/setup_10.x | bash - yum install nodejs git -y 2、安装Mongodb #CentOS 6系统,将下面命令一起复制进SSH客户端运行 cat <<EOF > /etc/yum.repos.d/mongodb.repo [mongodb-org-4.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/6/mongodb-org/4.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc EOF yum -y install mongodb-org #CentOS 7系统,将下面命令一起复制进SSH客户端运行 cat <<EOF > /etc/yum.repos.d/mongodb.repo [mongodb-org-4.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc EOF yum -y install mongodb-org #Debian 8系统 apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4 echo "deb http://repo.mongodb.org/apt/debian jessie/mongodb-org/4.0 main" | tee /etc/apt/sources.list.d/mongodb-org-4.0.list apt update -y apt install -y mongodb-org #Debian 9系统 curl https://www.mongodb.org/static/pgp/server-4.0.asc | apt-key add - echo "deb http://repo.mongodb.org/apt/debian stretch/mongodb-org/4.0 main" | tee /etc/apt/sources.list.d/mongodb-org-4.0.list apt-get update -y apt-get install -y mongodb-org #Debian 10系统 curl https://www.mongodb.org/static/pgp/server-4.2.asc | apt-key add - echo "deb http://repo.mongodb.org/apt/debian buster/mongodb-org/4.2 main" | tee /etc/apt/sources.list.d/mongodb-org-4.2.list apt update -y apt install -y mongodb-org #Ubuntu 16.04系统 apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4 echo "deb https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/4.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.0.list apt update -y apt install -y mongodb-org #Ubuntu 18.04、18.10、19.04系统 apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 9DA31620334BD75D9DCB49F368818C72E52529D4 echo "deb https://repo.mongodb.org/apt/ubuntu bionic/mongodb-org/4.0 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-4.0.list apt update -y apt install -y mongodb-org 如果导入公匙时出现gnupg, gnupg2 and gnupg1 do not seem to be installed错误,使用apt install -y gnupg2,然后重新导入即可。 启动Mongodb并设置开机自启: #CentOS 6系统 service mongod start chkconfig mongod on #CentOS 7、Debian、Ubuntu系统 systemctl start mongod systemctl enable mongod 3、新建数据库 #数据库用户名和密码均为topdocs,将下面命令一起复制进SSH客户端运行 cat <<EOF > createdb use topdocs db.createUser( { user: "topdocs", pwd: "topdocs", roles: [ { role: "readWrite", db: "topdocs" } ] } ) EOF mongo<createdb && rm -rf createdb 4、安装TopDocs #拉取源码 git clone https://gitee.com/quazero/topdocs /opt/topdocs cd /opt/topdocs #安装yarn和依赖 npm i -g yarn yarn #编辑index.js vi index.js修改以下代码: endpoint: 'http://127.0.0.1:3000/admin/api', #如果我后面使用docs.moerats.com域名反代本地地址127.0.0.1:3000,那么修改为: endpoint: 'http://docs.moerats.com/admin/api', 或 endpoint: 'https://docs.moerats.com/admin/api', #如果我后面直接使用ip地址1.2.3.4访问,那么修改为: endpoint: 'http://1.2.3.4:3000/admin/api',vi编辑步骤:使用i进入编辑状态,编辑完成使用esc退出编辑状态,再输入:wq,然后Enter确定退出。 开始打包并运行: yarn build yarn start #后台运行 nohup yarn start& 这里访问地址为index.js中修改域名或http://服务器ip:3000。 对于IP访问的,如果CentOS系统打不开的话,可能还需要开启3000端口,使用命令: #CentOS 6 iptables -I INPUT -p tcp --dport 3000 -j ACCEPT service iptables save service iptables restart #CentOS 7 firewall-cmd --zone=public --add-port=3000/tcp --permanent firewall-cmd --reload 像阿里云等服务器,还需要去安全组那里开放下端口。 绑定域名如果你在上面编辑index.js的时候填的域名,那么就需要绑定下域名,反代下http://127.0.0.1:3000即可,反之,使用的ip就不用。 这里依旧使用Caddy,如果你安装过Nginx或者Apache,就自行搜索反代教程了。 安装Caddy: wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh #备用地址 wget -N --no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh 配置Caddy: #以下全部内容是一个整体,请修改域名后一起复制到SSH运行! #http访问,该配置不会自动签发SSL echo "docs.moerats.com { gzip proxy / 127.0.0.1:3000 { websocket header_upstream Host {host} header_upstream X-Real-IP {remote} header_upstream X-Forwarded-For {remote} header_upstream X-Forwarded-Port {server_port} header_upstream X-Forwarded-Proto {scheme} } }" > /usr/local/caddy/Caddyfile #https访问,该配置会自动签发SSL,请提前解析域名到VPS服务器 echo "docs.moerats.com { gzip tls admin@moerats.com proxy / 127.0.0.1:3000 { websocket header_upstream Host {host} header_upstream X-Real-IP {remote} header_upstream X-Forwarded-For {remote} header_upstream X-Forwarded-Port {server_port} header_upstream X-Forwarded-Proto {scheme} } }" > /usr/local/caddy/Caddyfile tls参数会自动帮你签发ssl证书,如果你要使用自己的ssl,改为tls /root/xx.crt /root/xx.key即可。后面为ssl证书路径。 启动Caddy: /etc/init.d/caddy start 就可以打开域名进行访问了。 开机自启这里新建一个简单的Systemd配置文件,只适用于CentOS 7、Debian 8+、Ubuntu 16+等。 #新建systemd配置文件,将以下代码一起复制到SSH运行 cat > /etc/systemd/system/topdocs.service <<EOF [Unit] Description=topdocs After=network.target [Service] Type=simple WorkingDirectory=/opt/topdocs ExecStart=$(command -v yarn) start Restart=on-failure [Install] WantedBy=multi-user.target EOF如果你使用的宝塔,还需要做下软连接,不然启动可能会失败,反之不需要,使用命令: ln -sf $(which node) /usr/bin/node 开始启动并设置开机自启: systemctl start topdocs systemctl enable topdocs 使用教程后台地址/admin,账号为admin@admin.com,密码为adminadmin,自己进后台修改。 设置中index中是首页的展示内容,需要注意的是: -logo-/logo.png-logo- -title-跨世代文档编辑系统-title- -subtitle-实时动态markdown文档编辑系统,基于graqhql、mongodb、keystonejs、nuxtjs开发的移动优先的服务端渲染文档系统。-subtitle- -button-查看文档$https://gitee.com/quazero/topdocs-button- ===header=== header下面就是完全的markdown语法的编写区域,编辑完成之后,首页可查看变化。参数大致意思: -logo-之间的是LOGO图片,可链接也可路径。 -title-之间的是首页展示大标题。 -subtitle-之间的是首页展示的项目介绍。 -button-是首页展示按钮需要的内容。其中<按钮名>$<链接>,链接可链接也可路径,按需更改。 ===header===下面的就是正常的markdown语句,自己根据需要编写。最后如果要上传图片或者文件的话,需要从后台左侧Images处上传并获取地址。 View the full article
  3. 此软件大致的工作流程是: 你从某PT站下载一些种子然后添加种子到这个软件内。软件会根据你的设置向Tracker服务器谎报进度和伪造上传速度。 目前这个软件支持伪装的客户端列表: 开始部署前还是说句废话:能不用就不用吧,有BAN号风险233。 安装java/下载程序/解压: apt -y update apt -y install default-jre supervisor mkdir -p /opt/joal&& cd /opt/joal wget https://github.com/anthonyraymond/joal/releases/download/2.1.19/joal.tar.gz tar -xzvf joal.tar.gz 先在前台运行一次看看能不能跑起来: java -jar ./jack-of-all-trades-2.1.19.jar \ --joal-conf="/opt/joal" \ --spring.main.web-environment=true \ --server.port=50001 \ --joal.ui.path.prefix="imlala" \ --joal.ui.secret-token="lala.im" 如果你什么都不改动,直接就是按照上面的命令启动的话,那么WEB面板的地址就是(换成你自己的服务器IP): http://209.50.62.229:50001/imlala/ui/ 能访问到的话那么Ctrl+C退出来,用supervisor守护进程以及放到后台运行: nano /etc/supervisor/conf.d/joal.conf 写入如下配置: [program:joal] priority=1 directory=/opt/joal command=/usr/bin/java -jar jack-of-all-trades-2.1.19.jar --joal-conf="/opt/joal" --spring.main.web-environment=true --server.port=50001 --joal.ui.path.prefix="imlala" --joal.ui.secret-token="lala.im" autostart=true autorestart=true redirect_stderr=true stdout_logfile=/var/log/supervisor/joal.log 更新supervisor配置/查看运行状态显示RUNNING就OK了: supervisorctl update supervisorctl status joal 初次访问到WEB面板是无法使用的,你需要点击左上角的CHANGE CONNECTION…来配置连接参数: 然后在这里可以设置伪装的客户端和上传速度等等: 你也可以直接通过修改这个配置文件来设置参数: nano /opt/joal/config.json 需要注意的是更改之后要重启才能生效: supervisorctl restart joal 最后我测试了一下是可以正常用的: 查看完整帖子
  4. 如果你经常使用adguardhome会发现这货虽然使用起来很方便,但是过滤广告的效果非常不理想,规则里面明明有的域名但有时候它就是屏蔽不了,很玄学的一件事情。。 本文介绍一款船新的方式,广告过滤的效果比单adguardhome要好的多。目前这是我自用的一套方案,具体用到的各个软件用途说明如下: 1.在国外的VPS上用Unbound搭建一个DoT,用于防DNS污染。 2.在国外的VPS上用Pihole搭建一个去广告的普通DNS,用于Unbound的上游。 3.本地搭建Overture,用于Unbound的下游,同时处理国内/国外的域名/IP分DNS解析。 以下步骤在Debian10上操作,安装需要用到的工具: apt -y update apt -y dist-upgrade apt -y install curl certbot ca-certificates unbound knot-dnsutils 使用certbot签一个ssl证书(签之前先把你的域名解析到这台VPS): certbot certonly --standalone --agree-tos --no-eff-email --email xxxxx@qq.com -d dns.233.fi 将申请好的证书复制到unbound的目录: cp /etc/letsencrypt/live/dns.233.fi/privkey.pem /etc/unbound/dns.233.fi-privkey.pem cp /etc/letsencrypt/live/dns.233.fi/fullchain.pem /etc/unbound/dns.233.fi-fullchain.pem 新建一个unbound的配置文件: nano /etc/unbound/unbound.conf.d/dns-over-tls.conf 写入: server: username: unbound access-control: 0.0.0.0/0 allow interface: 0.0.0.0@853 interface: ::0@853 tls-port: 853 tls-service-key: "/etc/unbound/dns.233.fi-privkey.pem" tls-service-pem: "/etc/unbound/dns.233.fi-fullchain.pem" incoming-num-tcp: 1000 forward-zone: name: "." forward-addr: 152.44.44.19 注:forward-addr后面的IP改为你VPS的公网IP,也就是把待会搭建好的Pihole当作unbound的上游DNS。 重启unbound/设置开机自启: systemctl restart unbound systemctl enable unbound 由于Pihole的手动安装过程略蛋疼,并且容易出错,这里直接上Docker: curl -sSL https://get.docker.com/ | sh systemctl start docker systemctl enable docker 安装docker-compose: curl -L "https://github.com/docker/compose/releases/download/1.25.0/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose 新建一个docker-compose配置文件: mkdir -p /opt/pi-hole && cd /opt/pi-hole && nano docker-compose.yml 写入如下配置: version: "3" services: pihole: container_name: pihole image: pihole/pihole:latest ports: - "53:53/tcp" - "53:53/udp" - "67:67/udp" - "80:80/tcp" - "443:443/tcp" environment: TZ: 'Asia/Shanghai' volumes: - './etc-pihole/:/etc/pihole/' - './etc-dnsmasq.d/:/etc/dnsmasq.d/' dns: - 127.0.0.1 - 1.1.1.1 cap_add: - NET_ADMIN restart: unless-stopped 然后直接up起来: docker-compose up -d 没问题的话查看Pihole的WEB管理员密码: docker logs pihole | grep random 修改管理员密码: docker exec -it pihole pihole -a -p 现在测试一下看看Unbound和Pihole能不能正常工作: kdig +tls @dns.233.fi lala.im 如下有正常解析记录说明是OK的: 接下来在你的本地配置Overture: apt -y update apt -y install unzip supervisor mkdir -p /opt/overture && cd /opt/overture wget https://github.com/shawn1m/overture/releases/download/v1.6-rc6/overture-linux-amd64.zip unzip overture-linux-amd64.zip cp overture-linux-amd64 overture 下载国内IP/GFWLIST: wget https://cokebar.github.io/gfwlist2dnsmasq/gfwlist_domain.txt wget https://raw.githubusercontent.com/17mon/china_ip_list/master/china_ip_list.txt 编辑Overture的配置文件: nano config.json 修改为如下配置: { "BindAddress": ":53", "DebugHTTPAddress": "127.0.0.1:5555", "PrimaryDNS": [ { "Name": "DNSPod", "Address": "119.29.29.29:53", "Protocol": "udp", "SOCKS5Address": "", "Timeout": 6, "EDNSClientSubnet": { "Policy": "disable", "ExternalIP": "", "NoCookie": true } } ], "AlternativeDNS": [ { "Name": "Pi-hole", "Address": "dns.233.fi:853", "Protocol": "tcp-tls", "SOCKS5Address": "", "Timeout": 6, "EDNSClientSubnet": { "Policy": "disable", "ExternalIP": "", "NoCookie": true } } ], "OnlyPrimaryDNS": false, "IPv6UseAlternativeDNS": false, "WhenPrimaryDNSAnswerNoneUse": "PrimaryDNS", "IPNetworkFile": { "Primary": "./china_ip_list.txt", "Alternative": "" }, "DomainFile": { "Primary": "", "Alternative": "./gfwlist_domain.txt", "Matcher": "regex-list" }, "HostsFile": "./hosts_sample", "MinimumTTL": 0, "DomainTTLFile" : "./domain_ttl_sample", "CacheSize" : 0, "RejectQType": [255] } 新建supervisor配置文件: nano /etc/supervisor/conf.d/overture.conf 写入如下配置: [program:overture] priority=1 directory=/opt/overture command=/opt/overture/overture -c /opt/overture/config.json autostart=true autorestart=true redirect_stderr=true stdout_logfile=/var/log/supervisor/overture.log 更新supervisor配置,查看运行状态,回显RUNNING说明正常: supervisorctl update supervisorctl status overture 现在修改路由器的DHCP将网关设置为这台部署Overture的机器IP即可使用这样一个去广告/防DNS污染的服务啦~ 一些补充说明: 1.由于在本地有Overture分DNS解析,所以只有在GFWLIST内的域名才会由我们自建的DoT负责解析,理所当然的过滤广告也只会过滤掉这部分网站的广告,如果要想全部过滤就得把Overture的部分功能阉割掉,但阉割掉的代价是国内域名的解析速度会变慢,当然这个可以加钱解决,你有钱买台线路好的机器就可以不用分DNS解析了。 2.除了在本地可以用以外,你还可以把自己的梯子鸡,诸如V2Ray/SS这类代理工具使用的DNS也更改为Pihole的DNS,同样能达到过滤广告的效果。 3.Unbound/Pihole的DNS服务都暴露在公网,如果只想自己独享,切记不要分享出VPSIP,或者用防火墙做一下限制,避免滥用。 4.Pihole也可以部署在本地,然后在Pihole内设置上游DoH,也是一种可行的办法,但缺点是国内解析速度偏慢,方法可以参考: https://docs.pi-hole.net/guides/dns-over-https/ 查看完整帖子
  5. CoreDNS常规用途是用于k8s内的DNS和服务发现,但因为这个东西有很多插件又是go开发的,所以完全可以单独拿来出使用。 CoreDNS的配置语法也非常简单是类Caddy的,这里我把它部署在本地局域网的一台Debian9内,实现无污染的DNS和广告过滤。当然它也支持Windows等其他平台,你直接装在电脑内使用也是可以的。总而言之CoreDNS是一款扩展性很强的工具。 安装supervisor: apt -y update apt -y install supervisor 下载/解压coredns: mkdir -p /opt/coredns && cd /opt/coredns wget https://github.com/coredns/coredns/releases/download/v1.6.5/coredns_1.6.5_linux_amd64.tgz tar -xzvf coredns_1.6.5_linux_amd64.tgz 下载hosts文件,用于屏蔽广告域名(不需要屏蔽广告的话可以省略这些步骤) wget https://github.com/StevenBlack/hosts/archive/2.5.28.tar.gz tar -xzvf 2.5.28.tar.gz cp hosts-2.5.28/hosts ./adblock.hosts 新建一个CoreDNS的配置文件: nano Corefile 写入如下配置: . { hosts adblock.hosts { fallthrough } forward . tls://1.1.1.1 tls://1.0.0.1 { tls_servername cloudflare-dns.com health_check 5s } cache 30 log } 注: 1.hosts配置块指定hosts文件,不在hosts文件内的域名全部移交给下一个配置块解析。 2.forward配置块用于DNS转发,将请求转发到支持DoT的DNS上防DNS污染。 配置好了之后新建一个supervisor的配置文件: nano /etc/supervisor/conf.d/coredns.conf 写入: [program:coredns] priority=1 directory=/opt/coredns command=/opt/coredns/coredns -conf Corefile autostart=true autorestart=true redirect_stderr=true stdout_logfile=/var/log/supervisor/coredns.log 更新supervisor配置然后查看coredns的运行状态,回显RUNNING就OK了: supervisorctl update supervisorctl status coredns 简单测试一下是否能够正常工作: 未完待续。。因为我发现支持hosts这种格式的广告屏蔽规则不是很多,屏蔽的不彻底。。 查看完整帖子
  6. 期待已久的qb4.2终于发布了!从4.2版本起正式支持libtorrent-rasterbar1.2。 对于刷子来说最有用的一个更新是可以在WEBUI上调整一些libtorrent-rasterbar的参数了,尤其是硬盘缓存/做种模式等等。这些可设置项根据自己的机器硬件配置适当调整就和deluge的ltconfig插件一样,上一张预览图: 编译qbittorrent4.2建议直接上Debian10,旧系统包括Debian9在内因为官方存储库内的QT库版本过低(至少要5.9)将导致编译失败。 开始之前,我先把自己打包好的deb发出来,你不想编译的话可以直接在Debian10上使用我打包好的deb安装,省时省力: wget https://lala.im/static/script/libtorrent-rasterbar_1.2.2_amd64.deb wget https://lala.im/static/script/qbittorrent-nox_4.2.0_amd64.deb dpkg -i libtorrent-rasterbar_1.2.2_amd64.deb dpkg -i qbittorrent-nox_4.2.0_amd64.deb apt -f install 这样就安装好了,你可以在终端内使用下面的命令启动qb: qbittorrent-nox 放到后台运行参考文末的systemd配置,这里不多叙述。 下面是编译和打包过程,安装依赖: apt -y update apt -y install build-essential zlib1g-dev pkg-config automake \ libtool libboost-dev libboost-system-dev libboost-chrono-dev \ libboost-random-dev libssl-dev libgeoip-dev qtbase5-dev \ qttools5-dev-tools libqt5svg5-dev 如果要打包的话这里我选择用fpm,所以额外安装fpm,不打包的话可以略过: apt -y install ruby ruby-dev rubygems build-essential gem install fpm 下载libtorrent-rasterbar源码: wget https://github.com/arvidn/libtorrent/releases/download/libtorrent-1_2_2/libtorrent-rasterbar-1.2.2.tar.gz tar -xzvf libtorrent-rasterbar-1.2.2.tar.gz cd libtorrent-rasterbar-1.2.2/ ./configure --enable-encryption --disable-debug CXXFLAGS="-std=c++14" make -j$(nproc) 不打包直接安装的话执行: make install ldconfig -v 打包的话在make后不要执行make install,换成下面的命令,将libtorrent-rasterbar安装到临时目录: mkdir -p /tmp/libtorrent-rasterbar make install DESTDIR=/tmp/libtorrent-rasterbar 之后使用fpm创建deb: fpm -s dir -t deb \ -C /tmp/libtorrent-rasterbar \ -m "imlala " \ --url "http://www.lala.im" \ --description "Development files for libtorrent-rasterbar" \ --vendor "imlala" \ -n libtorrent-rasterbar \ -v 1.2.2 \ -p libtorrent-rasterbar_1.2.2_amd64.deb \ usr/local 接下来编译qb: cd wget https://github.com/qbittorrent/qBittorrent/archive/release-4.2.0.tar.gz tar -xzvf release-4.2.0.tar.gz cd qBittorrent-release-4.2.0/ ./configure --prefix=/usr --disable-gui CXXFLAGS="-std=c++14" make -j$(nproc) 同理,不打包直接安装的话执行: make install ldconfig -v 打包的话在make后不要执行make install,换成下面的命令,将qbittorrent-nox安装到临时目录: mkdir -p /tmp/qbittorrent-nox make install INSTALL_ROOT=/tmp/qbittorrent-nox 之后使用fpm创建deb: fpm -s dir -t deb \ -C /tmp/qbittorrent-nox \ -m "imlala " \ --url "https://www.lala.im" \ --description "bittorrent client based on libtorrent-rasterbar (without X support)" \ --vendor "imlala" \ -n qbittorrent-nox \ -v 4.2.0 \ -p qbittorrent-nox_4.2.0_amd64.deb \ -d "libtorrent-rasterbar >= 1.2.2" \ -d "zlib1g-dev >= 1:1.2.0" \ -d "libstdc++6 >= 5.2" \ -d "libqt5xml5 >= 5.2.0" \ -d "libqt5network5 >= 5.9.0~beta" \ -d "libqt5core5a >= 5.11.0~rc1" \ -d "libboost-system1.67.0" \ usr/ systemd配置: nano /etc/systemd/system/qbittorrent-nox.service 写入: [Unit] Description=qBittorrent Daemon Service After=network.target [Service] User=root ExecStart=/usr/bin/qbittorrent-nox ExecStop=/usr/bin/killall -w qbittorrent-nox [Install] WantedBy=multi-user.target 管理: systemctl start qbittorrent-nox.service systemctl enable qbittorrent-nox.service 查看完整帖子
  7. 按他们官网描述的是,这个内核是经过各种优化后的产品。。。具体都优化了些什么鬼,可以看他们官网:xanmod.org 我想说的是这个内核很追新,上游kernel.org有发布新版这个很快就会更新(目前XanMod已是5.4.2版本)所以想第一时间就体验到新版内核的可以尝试使用下这个。 按他们官网说的是这个内核几乎支持所有最近版本的Debian/Ubuntu,我拿Debian10试了试还可以,BBR是直接开启的,还有一个什么CAKE Network Queue Management,好像挺高大上的样子。。。 添加源: echo 'deb http://deb.xanmod.org releases main' | tee /etc/apt/sources.list.d/xanmod-kernel.list && wget -qO - https://dl.xanmod.org/gpg.key | apt-key add - 安装: apt -y update && apt -y install linux-xanmod 在systemd(> = 217)的系统中使用CAKE队列规则: echo 'net.core.default_qdisc = cake' | tee /etc/sysctl.d/90-override.conf 之后重启: reboot 查看CAKE是否生效: sysctl net.core.default_qdisc 查看可用的拥塞控制算法: sysctl net.ipv4.tcp_available_congestion_control 查看当前的拥塞控制算法,应该是回显BBR,也就是说BBR是直接开启的,不需要去自己改sysctl.conf: sysctl net.ipv4.tcp_congestion_control OK,下面说下如果不想用了,怎么换回之前的内核。。 首先看一下GRUB菜单的启动顺序: grep menu /boot/grub/grub.cfg 让我把Xshell的窗口拉大点,拉大了才能看的仔细233: 我估计有很多人以前想从一个新内核换回旧内核的时候都遇到过要自己看grub启动顺序的问题,很多人都看不懂。其实很简单就拿上图的情况来说,在没有子菜单的情况下,从0开始数menuentry就完事了。 而从Debian10起,新安装的内核可能都会加入到子菜单中,即上图的submenu。在有子菜单的情况下,启动顺序就是上图红字标注的。 1>0即表示1是子菜单的启动位置,进入到子菜单后有多个内核的话还是从0开始开始数menuentry,所以在子菜单内的第一个内核启动顺序就是1>0。 除此之外你可能还发现每个相同版本的内核还会有一个recovery mode(救援模式),如果在没有VNC或者其他控制台的情况下,切记别选这种模式来启动机器。(有VNC的话还是香啊,直接图形化就能选了,奈何不是什么环境都能给你随时准备个VNC的) OJBK,找准启动顺序后,编辑如下配置文件: nano /etc/default/grub 现在例如要在下次重启后使用4.19的内核,那么就更改为: GRUB_DEFAULT="1>4" 如图所示: 最后更新grub配置即可: update-grub 查看完整帖子
  8. luoxi

    Welcome to Pages

    Welcome to Pages! Pages extends your site with custom content management designed especially for communities. Create brand new sections of your community using features like blocks, databases and articles, pulling in data from other areas of your community. Create custom pages in your community using our drag'n'drop, WYSIWYG editor. Build blocks that pull in all kinds of data from throughout your community to create dynamic pages, or use one of the ready-made widgets we include with the Invision Community. View our Pages documentation
  9. luoxi

    Welcome!

    Welcome to your new Invision Community! Congratulations on your purchase of our software and setting up your community. Please take some time and read through the Getting Started Guide and Administrator Documentation. The Getting Started Guide will walk you through some of the necessary steps to setting up an IP.Board and starting your community. The Administrator Documentation takes you through the details of the capabilities of IP.Board. You can remove this message, topic, forum or even category at any time. Go to the documentation now...
  10. 说明:博主很久前分享过使用Shell写的OneDrive网盘上传工具→传送门,不过由于使用的是旧API,而微软使旧API强制过时,也就是强制不让用了,不让授权了,导致全部人无法使用,所以在外搬砖多日的萌咖大佬重新出山,使用Golang基于新的API写了个效率更高的上传工具,同时也修复了各种Shell版本遗留下来的小问题,该版本特点就是授权简单,无需依赖,单文件。同样的也可以配合Aria2一起自动上传,这里就再分享下,方便下有需求的人。 更新【2019.11.29】 新增多线程上传、MacOS客户端。 修复了一个致命bug,建议之前装过的更新下程序。 功能支持上传文件和文件夹到指定目录,并保持上传前的目录结构。支持命令参数使用,方便外部程序调用。支持自定义上传分块大小。支持多线程上传(多文件同时上传)。支持根据文件大小动态调整重试次数,对抗不好的网络环境。使用Github地址:https://github.com/MoeClub/OneList/tree/master/OneDriveUploader 这里只说Linux的用法,且目前只支持64位系统,32位没啥人用,所以不打算支持了。 Windows、MacOS系统下载地址→传送门,直接将程序下载到本地后,按照下面方法进行授权、初始化,然后就可以使用命令上传了。 1、授权认证 点击右侧URL登录并授权,授权地址→传送门。 授权后会获取一个localhost开头打不开的链接,这里只需要记住code,也就是链接中code=和&中间的参数。 2、安装OneDriveUploader wget https://raw.githubusercontent.com/MoeClub/OneList/master/OneDriveUploader/amd64/linux/OneDriveUploader -P /usr/local/bin/ chmod +x /usr/local/bin/OneDriveUploader 3、初始化配置 #将moerats替换成你上面获取的code参数 code="moerats" OneDriveUploader -a "${code}"如果提示Init config file: /path/to/file/auth.json类似信息,则初始化成功。 这里可能会小概率因为code问题,生成auth.json失败,所以可以使用ls命令查看当前目录有该文件没,没有的话,重新获取code,再初始化即可。 4、使用命令 Usage of OneDriveUploader: -a string // 初始化授权 Setup and Init auth.json. -b string // 自定义上传分块大小, 可以提高网络吞吐量, 受限于磁盘性能和网络速度. Set block size. [Unit: M; 5<=b<=60;] (default "10") -c string // 配置文件路径 Config file. (default "auth.json") -n string // 上传单个文件时,在网盘中重命名 Rename file on upload to remote. -r string // 上传到网盘中的某个目录, 默认: 根目录 Upload to reomte path. -s string // 要上传的文件或文件夹 Upload item. -t string // 线程数, 同时上传文件的个数. 默认: 2 Set thread num. (default "2") 5、命令示例 #将当前目录下的mm00.jpg文件上传到OneDrive网盘根目录 OneDriveUploader -c /path/to/file/auth.json -s "mm00.jpg" #将当前目录下的mm00.jpg文件上传到OneDrive网盘根目录,并改名为mm01.jpg OneDriveUploader -c /path/to/file/auth.json -s "mm00.jpg" -n "mm01.jpg" #将当前目录下的Download文件夹上传到OneDrive网盘根目录 OneDriveUploader -c /path/to/file/auth.json -s "Download" #将当前目录下的Download文件夹上传到OneDrive网盘Test目录中 OneDriveUploader -c /path/to/file/auth.json -s "Download" -r "Test" #将同目录下的Download文件夹上传到OneDriv网盘Test目录中,使用10线程 OneDriveUploader -c /path/to/file/auth.json -t 10 -s "Download" -r "Test" #将同目录下的Download文件夹上传到OneDrive网盘Test目录中,使用15线程,并设置分块大小为20M OneDriveUploader -c /path/to/file/auth.json -t 15 -b 20 -s "Download" -r "Test"/path/to/file/auth.json为初始化时,生成的auth.json绝对路径地址,本文默认/root/auth.json,自行调整。 Aria2自动上传同样的这里也会提供个配套的Aria2自动上传脚本,上传配置方法参考→传送门。 上传脚本代码如下: #!/bin/bash GID="$1"; FileNum="$2"; File="$3"; MaxSize="15728640"; Thread="3"; #默认3线程,自行修改,服务器配置不好的话,不建议太多 Block="20"; #默认分块20m,自行修改 RemoteDIR=""; #上传到Onedrive的路径,默认为根目录,如果要上传到MOERATS目录,""里面请填成MOERATS LocalDIR="/www/download/"; #Aria2下载目录,记得最后面加上/ Uploader="/usr/local/bin/OneDriveUploader"; #上传的程序完整路径,默认为本文安装的目录 Config="/root/auth.json"; #初始化生成的配置auth.json绝对路径,参考第3步骤生成的路径 if [[ -z $(echo "$FileNum" |grep -o '[0-9]*' |head -n1) ]]; then FileNum='0'; fi if [[ "$FileNum" -le '0' ]]; then exit 0; fi if [[ "$#" != '3' ]]; then exit 0; fi function LoadFile(){ if [[ ! -e "${Uploader}" ]]; then return; fi IFS_BAK=$IFS IFS=$'\n' tmpFile="$(echo "${File/#$LocalDIR}" |cut -f1 -d'/')" FileLoad="${LocalDIR}${tmpFile}" if [[ ! -e "${FileLoad}" ]]; then return; fi ItemSize=$(du -s "${FileLoad}" |cut -f1 |grep -o '[0-9]*' |head -n1) if [[ -z "$ItemSize" ]]; then return; fi if [[ "$ItemSize" -ge "$MaxSize" ]]; then echo -ne "\033[33m${FileLoad} \033[0mtoo large to spik.\n"; return; fi ${Uploader} -c "${Config}" -t "${Thread}" -b "${Block}" -s "${FileLoad}" -r "${RemoteDIR}" if [[ $? == '0' ]]; then rm -rf "${FileLoad}"; fi IFS=$IFS_BAK } LoadFile; Windows使用这里就随便补充下Windows使用,先下载程序文件,下载地址→传送门。 比如我将exe文件放到D盘,然后使用Win+R,输入CMD运行,调出窗口后,使用命令: #进入D盘 cd /d D:\ #初始化,moerats为授权code,获取方法看上面 OneDriveUploader.exe -a "moerats"然后上传命令和上面一样,只需要把OneDriveUploader改成OneDriveUploader.exe即可。 最后经测试,该版本的上传已经完全能应对各种稀奇古怪的字符问题,如果有问题可以回复下,贴上报错代码,方便修复。 View the full article
  11. 说明:BYR-Navi是一个开源、轻量使用Fomantic UI Web框架构建的网站导航程序,样式也非常美观,而且支持从N个站点直接搜索,我们既可以部署在自己的服务器上,又可以部署在GitHub Pages,后者无需服务器,这里水个稍微完整点的教程,有需求的可以搭建个玩玩。 截图 安装演示地址:https://byr-navi.com Github地址:https://github.com/BYR-Navi/BYR-Navi 1、安装Ruby #导入密钥 gpg --keyserver hkp://keys.gnupg.net --recv-keys 409B6B1796C275462A1703113804BB82D39DC0E3 7D2BAF1CF37B13E2069D6956105BD0E739499BDB #安装稳定版 curl -sSL https://get.rvm.io | bash -s stable #载入RVM环境 source /etc/profile.d/rvm.sh #安装Ruby 2.6.3 rvm install ruby 2.6.3 #设置为默认版本 rvm use 2.6.3 --default导入期间出现使用No dirmngr报错的话,使用apt install dirmngr,然后重新导入即可。 2、安装Jekyll gem install jekyll 3、安装BYR-Navi #拉取源码 git clone https://github.com/BYR-Navi/BYR-Navi #安装依赖 cd BYR-Navi bundle i如果第一步提示-bash: git: command not found,可以先使用命令: #CentOS yum -y install git #Debian、Ubuntu apt install git -y然后修改配置文件_config.yml,对照原信息,自行修改导航标题,关键词等描述,更深层次的修改可参考官方文档→传送门。 再进入_data文件夹,新增/修改大致导航网站链接,可参考上面的演示地址修改,最后还一个就是统计配置文件analytics.yml,这个需要我们额外安装Matomo,安装和配置可以提前看文章后面。 都修改完成后,启动: #运行端口为8989,自行修改 bundle exec jekyll serve -H 0.0.0.0 -P 8989 --detach此时就可以使用ip:8989访问程序了。 如果CentOS系统打不开的话,可能还需要开启8989端口,使用命令: #CentOS 6 iptables -I INPUT -p tcp --dport 8989 -j ACCEPT service iptables save service iptables restart #CentOS 7 firewall-cmd --zone=public --add-port=8989/tcp --permanent firewall-cmd --reload 像阿里云等服务器,还需要去安全组那里开放下端口。 这里除了可以使用命令行启动,也可以直接将生成的_site文件夹丢到网站根目录访问。 如果要修改导航相关页面的信息显示的话,也可以在_site文件夹中修改。 安装Matomo官方网站:https://matomo.org 这个安装教程博主很久前水过,不过是手动的,有点复杂,这里就直接找了个配置比较简单的Docker镜像进行安装。 Docker地址:https://github.com/crazy-max/docker-matomo 1、安装Docker #CentOS 6 rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm yum update -y yum -y install docker-io service docker start chkconfig docker on #CentOS 7、Debian、Ubuntu curl -sSL https://get.docker.com/ | sh systemctl start docker systemctl enable docker 2、拉取镜像 #拉取Matomo镜像 docker run --restart=always -d --name matomo \ -p 8000:8000 \ -v ~/matomo/data:/data \ crazymax/matomo #拉取Mysql镜像,记得修改数据库信息,如果你服务器已经安装过Mysql数据库,可以跳过该步骤 docker run --restart=always --name mysqlmatomo -d \ -p 3306:3306 \ -e MYSQL_ROOT_PASSWORD=matomo123 \ -e MYSQL_DATABASE=matomo \ -e MYSQL_USER=matomo \ -e MYSQL_PASSWORD=matomo123 \ -v ~/matomo/mysql:/var/lib/mysql \ mysql:5.6 安装完成后打开ip:8080即可访问。如果访问不了的话,可以查看上面的教程,开放端口即可。 然后这里需要注意的是Database Server需要填上你的ip地址,而且数据库端口,比如3306需要防火墙放行,不然会连接不上。 安装到最后一步的时候,如果你填的ip地址,那么可能进入不了,可以编辑/root/matomo/data/config/config.ini.php ,修改trusted_hosts[]参数为你的访问地址。 最后配置该导航的话,需要修改配置文件_data/analytics.yml,大致参数如下: #url为matomo站点,domain为导航站,site_id为matomo站点统计站id,token为matomo站点的token matomo: url: http://matomo.moerats.com/ domains: - "http://byr.moerats.com" site_id: 2 token: 297bd600834c2a5a70293c47a 参数获取大致路径如下: 1、site_id 在后台添加一个网站统计,就可以直接看到网站id 2、token 该参数可以在Settings里获取API Authentication Token 最后可能会出现跨域问题,导致配置统计后不生效,可以在通用设置中设置跨域资源共享(CROS)白名单域名,将导航站点添加进去即可。 部署到GitHub Pages这里部署到GitHub Pages的好处就是不需要服务器,但国内访问的话,有点影响体验,这个就自行选择了。 首先你肯定需要一个Github账号,没有的可以去注册一个,地址:https://github.com,有了账号就继续看。 1、配置Git SSH密钥 由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSH key,在操作之前,需要先在服务器上生成SSH key。 我们先去根目录下使用命令: cd ~ ssh-keygen -t rsa 这里会要你命名密匙名称(这里建议使用默认名称),然后连续按几次Enter,这时候会在/root/.ssh文件夹生成2个ssh密钥,然后我们查看公钥id_rsa.pub。 cat ~/.ssh/id_rsa.pub 查看后,再复制下公钥,然后打开Github官网,进入https://github.com/settings/ssh/new,Title随便填,然后Key填入刚刚复制的密匙,最后点击Add SSH Key添加即可。 2、建立仓库 我们需要先访问https://github.com/new,新建一个仓库用来存放BYR-Navi站点文件,名称填你的用户名.github.io,仓库别加密,不然到时候就访问不到了。 3、推送到Github #进入源码的_site文件夹 cd /root/BYR-Navi/_site #初始化你的github仓库 git init #关联到远程github仓库,后面为仓库SSH地址,新建仓库后会返回给你该地址 git remote add origin git@github.com:iiiiiii1/iiiiiii1.github.io.git #把目录下所有文件更改状况提交到暂存区,包括增,删,改。 git add -A #提交更改的说明,说明随意了,这里为push git commit -m "push" #开始推送到Github git push -u origin master推送的时候可能会提示The authenticity of host 'github.com' can't be established.信息,直进yes即可。 然后推送完就可以看到仓库的推送文件了。 接下来访问https://你的用户名.github.io就可以进入导航网站了。 4、绑定域名 有的可能不习惯用github的域名,这里可以绑定自己的域名。 先解析域名的CNAME记录到你的https://你的用户名.github.io域名。如果你想用Https访问,可以使用CloudFlare解析域名,并开启CDN强制Http转Https。 然后访问你的博客Git项目地址,点击Create new file新建文件,命名CNAME,内容写上你的域名,不要http等。 这时候就可以通过自己的域名访问导航站了,最后该程序定制啥的很灵活,想深度修改的话可以看下官方文档→传送门。 View the full article
  12. 我大概几个月前编译过一个旧版本的,最近又更新了,不过还是预览版,没有正式发布。 上次那个版本的kernel已经飙到5.2了,这次的更是直接到5.4了,要是正式版放出来我估摸着怎么着也得上5.0。。 上次是随便撸了个脚本没把编译步骤写出来,这次想到如果大家都在自己的机器上编译的话,就可以用自己机器旧内核的配置,这样炸的概率会小很多,当然编译kernel对机器硬件配置要求较高,一般的VPS就别费劲了,浪费时间。。 另外这次的版本编译起来有几个坑。。第一次编译几分钟报了个错,解决了再来跑一遍竟然后面又报个缺少rsync。。我寻思你要rsync干啥?? 以下步骤在Debian10上测试通过。 apt -y install build-essential libncurses-dev libssl-dev libelf-dev bison bc flex rsync git screen 编译要花很长时间,建议开个screen守护一下: screen -S kernel 下载源码: git clone -b v2alpha https://github.com/google/bbr.git cd bbr 使用当前机器的旧内核配置,并自动帮你把新内核上的新功能选项以默认值进行配置: make olddefconfig 打开图形化菜单: make menuconfig 选择Networking support: 选择Networking options: 选择TCP: advanced…: 然后在里面你可以看到BBR2的新选项,这里有两种编译方式,M是构建为模块,*是直接构建到内核: 如果这里选为*的话,你可以在下面的Default TCP…内把默认的拥塞控制协议直接设置为BBR2: 这样安装好这个内核后就不需要去动sysctl.conf了,默认就开启BBR2。 当然你用模块也可以,就是需要自己加载模块罢了。设置好了后SAVE一下退出这个界面即可。 下面是我踩过的坑,解决办法,手动编辑.config: nano .config 把里面的这一行注释掉或者留空里面的值: CONFIG_SYSTEM_TRUSTED_KEYS="debian/certs/debian-uefi-certs.pem" 为节省编译时间,关闭DEBUG: CONFIG_DEBUG_INFO=n 做好上面这些后,现在就可以开始编译了: make deb-pkg LOCALVERSION=-imlala -j$(nproc) 编译时间视你的机器性能而定,看看片锻炼下身体,回来应该就编译好了,在上级目录有可用的deb包,使用dpkg安装然后重启: cd .. dpkg -i linux-image-5.4.0-rc6-imlala_5.4.0-rc6-imlala-1_amd64.deb dpkg -i linux-headers-5.4.0-rc6-imlala_5.4.0-rc6-imlala-1_amd64.deb reboot 直接编译到内核的使用下面的方法查看BBR2算法是否已经生效: sysctl net.ipv4.tcp_congestion_control 正常的话会回显: net.ipv4.tcp_congestion_control = bbr2 编译为模块的需要自己手动加载模块再配置sysctl.conf使其生效: modprobe tcp_bbr2 echo "tcp_bbr2" >> /etc/modules echo "net.ipv4.tcp_congestion_control = bbr2" >> /etc/sysctl.conf sysctl -p 查看完整帖子
  13. Dragonite是JAVA开发的,所以需要服务端和客户端都安装JAVA环境。 Windows在这里下载JAVA安装包就能安装了: https://www.java.com/zh_CN/download/windows-64bit.jsp 下面是Debian10配置Dragonite加速Shadowsocks的简易方法,首先安装需要用到的工具: apt -y update apt -y install default-jre apt -y install shadowsocks-libev supervisor wget nano unzip 编辑ss配置文件: nano /etc/shadowsocks-libev/config.json 使用下面的配置: { "server":"0.0.0.0", "mode":"tcp_and_udp", "server_port":20001, "local_port":1080, "password":"shadowsocks密码", "timeout":60, "method":"chacha20-ietf-poly1305" } 重启ss: systemctl restart shadowsocks-libev systemctl enable shadowsocks-libev 下载dragonite: cd /opt wget https://github.com/dragonite-network/dragonite-java/releases/download/fwd-0.4.0-prx-0.4.0/dragonite-forwarder-0.4.0.zip unzip dragonite-forwarder-0.4.0.zip cd dragonite-forwarder-0.4.0/bin 放在前台测试运行一下,看能不能正常工作: ./dragonite-forwarder -s -f 20001 可以话的退出来新建一个supervisor的配置文件: nano /etc/supervisor/conf.d/dragonite.conf 写入下面的配置: [program:dragonite] priority=1 directory=/opt/dragonite-forwarder-0.4.0/bin command=/opt/dragonite-forwarder-0.4.0/bin/dragonite-forwarder -s -f 20001 autostart=true autorestart=true redirect_stderr=true stdout_logfile=/var/log/supervisor/dragonite.log 更新supervisor配置/设置开机自启: supervisorctl update systemctl enable supervisor 客户端这边开一个powershell,进入到程序的bin目录下: cd C:\Users\LALA\Desktop\dragonite-forwarder-0.4.0\bin 使用下面的命令运行程序: .\dragonite-forwarder -a 服务器公网IP -f 20001 -d 100 -u 30 其中-d是指你的本地宽带下行速率,-u是上行速率,单位是Mbps。 最后在ss内添加一个节点: 查看完整帖子
  14. 用v2ray内置的mKCP加速游戏的话,配置要简单很多,但效果没有kcptun+udp2raw好。也算是一种可行的方法吧,想偷懒的话可以试试这个方法。。 安装v2ray: apt -y update apt -y install curl bash 生成一个uuid复制下来: cat /proc/sys/kernel/random/uuid 编辑v2ray配置文件: nano /etc/v2ray/config.json 写入如下配置: { "inbounds": [ { "port": 50000, "protocol": "vmess", "settings": { "clients": [ { "id": "你的UUID", "alterId": 64 } ] }, "streamSettings": { "network":"kcp", "kcpSettings": { "mtu": 1350, "tti": 20, "uplinkCapacity": 30, "downlinkCapacity": 100, "congestion": true, "header": { "type": "utp" } } } } ], "outbounds": [ { "protocol": "freedom", "settings": {} } ] } 关于这个mKCP里面涉及到的一些可配置参数,可以参考这里: https://www.v2ray.com/chapter_02/transport/mkcp.html 测试配置是否正常: /usr/bin/v2ray/v2ray -config /etc/v2ray/config.json -test 正常的话重启下v2ray即可完成服务端的配置: systemctl restart v2ray systemctl status v2ray 客户端在v2rayN上添加一个节点: 接着右键将你添加的这个节点设置为活动服务器: 再点击参数设置,找到基础设置,按下图配置: 最后在SSTap上添加一个socks5代理,按下图配置: 查看完整帖子
  15. 说明:Shiori是一个用Go语言编写的简单书签管理器,样式直接模仿的Pocket,有着基本书签管理功能,即添加,编辑,删除和搜索。支持导入和导出成Netscape书签文件,也可以从Pocket导入书签。可以通过命令行操作,也自带简单而漂亮的Web界面,适合那些不想使用命令行的,也可以内页浏览书签首页,用起来还行,这里就分享下。 截图 安装Github地址:https://github.com/go-shiori/shiori 1、安装Docker #CentOS 6 rpm -iUvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm yum update -y yum -y install docker-io service docker start chkconfig docker on #CentOS 7、Debian、Ubuntu curl -sSL https://get.docker.com/ | sh systemctl start docker systemctl enable docker 2、拉取镜像 docker run -d --name shiori --restart=always -p 8080:8080 -v ~/shiori:/srv/shiori radhifadlillah/shiori 安装好了后,访问地址:http://ip:8080,初始管理员用户名和密码为shiori和gopher。 如果CentOS系统打不开的话,可能还需要开启8080端口,使用命令: #CentOS 6 iptables -I INPUT -p tcp --dport 8080 -j ACCEPT service iptables save service iptables restart #CentOS 7 firewall-cmd --zone=public --add-port=8080/tcp --permanent firewall-cmd --reload 像阿里云等服务器,还需要去安全组那里开放下端口。 最后你想绑定域名,那么就进行第3步,直接ip访问就不用绑定了。 3、绑定域名 安装Caddy: wget -N --no-check-certificate https://raw.githubusercontent.com/ToyoDAdoubiBackup/doubi/master/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh #备用地址 wget -N --no-check-certificate https://www.moerats.com/usr/shell/Caddy/caddy_install.sh && chmod +x caddy_install.sh && bash caddy_install.sh 配置Caddy: #以下全部内容是一个整体,请修改域名后一起复制到SSH运行! #http访问,该配置不会自动签发SSL echo "www.moerats.com { gzip proxy / 127.0.0.1:8080 { header_upstream Host {host} header_upstream X-Real-IP {remote} header_upstream X-Forwarded-For {remote} header_upstream X-Forwarded-Port {server_port} header_upstream X-Forwarded-Proto {scheme} } }" > /usr/local/caddy/Caddyfile #https访问,该配置会自动签发SSL,请提前解析域名到VPS服务器 echo "www.moerats.com { gzip tls admin@moerats.com proxy / 127.0.0.1:8080 { header_upstream Host {host} header_upstream X-Real-IP {remote} header_upstream X-Forwarded-For {remote} header_upstream X-Forwarded-Port {server_port} header_upstream X-Forwarded-Proto {scheme} } }" > /usr/local/caddy/Caddyfile tls参数会自动帮你签发ssl证书,如果你要使用自己的ssl,改为tls /root/xx.crt /root/xx.key即可,后面为ssl证书路径。 启动Caddy: /etc/init.d/caddy start 就可以打开域名进行访问了。 最后由于没有修改管理员默认账号和用户名的地方,可以直接去设置处添加一个用户,那么该用户默认会成为管理员,此前的管理员会被停用。 View the full article
×
×
  • 创建新的...