Category Archives: Uncategorised

wordpress启用全站加密

最近切换到vultr的洛杉矶机房,放弃了之前的cloudflare加速,启用Let’s Encrypt加密。 Let’s Encrypt证书的获取和更新见这里,完整文档见这里。 先讲获取和更新证书。具体的命令见官方文档。我这里只讲官方没讲清楚或需要注意的地方。 1、安装certbot。 2、获取证书。因为是nginx代理,必须webroot插件。webroot使得获取和更新证书无须停掉web服务。使用webroot需要指定一个目录存放webroot的临时文件,且nginx需要配置一个模式为.well-known/acme-challenge的location指定到该目录。 3、保持更新 再配置wordpress和nginx 1、修改wordpress常规配置中的两个地址到https。这点,直接修改数据库也可以做到。 2、启用后台加密。修改wp-config.php文件,添加define(‘FORCE_SSL_ADMIN’, true);定义。 3、最后是最关键的,配置nginx,将http重定向到https,将https转发到wordpress。 下面是我的配置: server { listen 80; server_name blog.wencan.org; return 301 https://$server_name$request_uri; } server { listen 443 ssl; server_name blog.wencan.org; ssl on; ssl_certificate /etc/letsencrypt/live/blog.wencan.org/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/blog.wencan.org/privkey.pem; #charset koi8-r; #access_log … Continue reading

Posted in Uncategorised, Uncategorized | Tagged , | 3 Comments

在Linux Minecraft中输入中文

1、安装zenity、xdotool 2、创建下面的脚本,并赋执行权限 #!/bin/bash -e chars=$(zenity –title 中文输入 –text 中文输入 –width 500 –entry 2>/dev/null) sleep 0.1 xdotool key –delay 150 Escape t sleep 0.2 xdotool type –delay 150 “$chars” xdotool key Return 3、创建快捷键,关联到上面创建的脚本 4、如果能输入英文,而不能输入中文,检查locale,如果LANG值不是en_US.utf8,修改用户语言到English(United States),并重启会话 脚本来自依云’s Blog,只有第四条才是我的。 参考: Linux 下在 Minecraft … Continue reading

Posted in Uncategorised, Uncategorized | Tagged | 2 Comments

为blog配置CloudFlare CDN加速,并为OpenWrt配置ddns

一、配置wordpress域名 在wordpress后台配置两个域名均为https 这里的前提是blog本身已经支持https,不支持https的情况我没法尝试。推荐Redhat的Openshift。 二、配置CloudFlare 1、注册CloudFlare 2、添加根域名 3、确认域名解析信息 4、修改域名的NS服务器到CloudFlare指定的NS服务器 等待DNS服务器修改生效 三、http自动转向https 在CloudFlare后台Page Relues添加规则: 匹配模式为http://domain/* 规则为Always use https 四、下载证书 1、ssh连接OpenWrt路由器 2、opkg install curl 3、mkdir -p /etc/ssl/certs 4、curl http://secure.globalsign.net/cacert/Root-R1.crt -o /etc/ssl/certs/GlobalSign_Root_R1.pem 5、从其它linux系统复制 /etc/ssl/certs/ca-certificates.crt到/etc/ssl/certs目录,作为根证书 五、配置OpenWrt的ddns 1、安装ddns-scripts、ddns-scripts_cloudflare、luci-app-ddns 2、刷新页面,进入Service-Daynamic DNS,删掉myddns_ipv6,编辑myddns_ipv4 3、勾选Enable、IPv4-Address,DDns Service provider选CloudFlare,Hostname/Domain填完全的域名(子域名),Username填注册邮箱地址,Password可以为真实的密码或CloudFlare API token(推荐API Token。API … Continue reading

Posted in Uncategorised, Uncategorized | Tagged | 6 Comments

mongodb用户和权限管理

mongodb官方文档已经对用户和权限管理有详细的描述,本文尝试以另一角度来对其做出说明。 由于没在集群上做过测试,集群部分就不写了。 启用用户验证: mongod添加–auth启动参数 (或) 配置文件中配置 security.authorization: enabled 角色: 一个用户可以有多个角色 read: 读 readWrite: 读写 userAdmin: 用户管理 dbAdmin: 数据库管理 dbOwner: 读写、用户管理、数据库管理 认证源: 每个数据库都可以做为认证源。不同认证源创建的用户可以同名。用户内部的名称为: “$认证源.$用户名”。 认证源内的用户可以拥有针对对其它数据库的角色。 mongo shell中,以当前使用的数据库作为认证源。 通过连接字符串连接时,可能需要通过查询参数指定认证源。 admin数据库: 当前示例的所有用户都保存在admin数据库的system.users集合内。 admin的用户可拥有四个对实例内所有数据库都有效的特殊权限: readAnyDatabase readWriteAnyDatabase userAdminAnyDatabase userAdminAnyDatabase 超级用户: 一个拥有admin的用户管理角色的用户即为超级用户。超级用户可以为自身或其它用户赋予任何角色。 本地例外: 如果实例开启了用户验证,却还没创建管理角色用户,可以通过本地例外机制创建一个。 通过localhost连接到实例,不过验证,在admin数据库中,创建一个管理角色用户。这个新创建的用户,应当是一个超级用户。 一种更理想的方式:关闭用户认证重启实例,想干吗干吗…… … Continue reading

Posted in Uncategorised, Uncategorized | Tagged | Leave a comment