分类 杂七杂八 下的文章

这段时间在捣鼓tars框架,去vultr开了个3.5刀的机器,为什么要用他们家的呢,因为之前冲的50刀没用完😂无奈呀

他家的机器对湖北电信非常不友好,创建必须要装bbr不然丢包够你受的,加大发包量,用的还挺爽的

这两天空闲了下,上线登陆发现有1w+的暴力登陆!!!

wtf!

network-attacks.png

第一次感受到这么泛滥的网络攻击,今天简单介绍一下修改sshd监听端口防范暴力破解

这里我开始就把selinux关掉了,你可以选择关闭selinux,因为会少很多麻烦事,当然也会产生隐形的问题,不过利大于弊

系统版本

  • 发行版: CentOS Linux release 7.5.1804 (Core)
  • 内核: kernel-ml-4.19.6-1.el7.elrepo.x86_64

起步

  1. 检查selinux的开启状态

    $ /usr/sbin/sestatus -v
    # 看到disabled说明是关闭的,直接看第三步
  2. 关闭selinux

    # 临时关闭(推荐)
    $ setenforce 0
    # 永久关闭
    $ vim /etc/selinux/config
    # 修改为SELINUX=disabled,注意这里需要重启生效
  3. 查询端口是否开放
    最近招商银行的保险推销电话太嚣张了,一个星期内每天两次,大家记住10105555,这里鞭尸他们做例子(真正的可用端口一般只有1024-65535,这里用作替代例子)

    $ firewall-cmd --permanent --query-port=10105555/tcp
    no
    # 是no我们就需要自行添加,yes可以直接忽略掉
  4. 添加端口

    $ firewall-cmd --permanent --add-port=10105555/tcp
    success
    # 一般情况肯定打印success,出错了检测firewall服务运行没,或者端口是否已添加
  5. 重载防火墙

    $ firewall-cmd --reload
    success
  6. 再次查询端口是否开放(回到第三步)
  7. 修改ssh端口

    #修改sshd端口, 这里使用`vim`,可以根据个人喜好使用其他的编辑器
    $ vim /etc/ssh/sshd_config
  8. 编辑sshd_config

    #最好先把**22端口**开着,避免另一个端口无法登录的尴尬😅
    Port 22
    Port 自定义端口
    
    #这里我们顺便吧免密码登录打开
    #RSAAuthentication yes #具体不作详细解释,使用的是ssh2版本协议请关掉
    #PubkeyAuthentication yes #默认开启
    AuthorizedKeysFile      .ssh/authorized_keys
  9. 重启一下sshd服务登录试试

    $ systemctl restart sshd
  10. 找一个支持ssh协议的客户端来连接刚刚设置的服务器,如果你有终端按照下面方法连接,输入密码完事

    $ ssh -p 自定义端口 用户名@服务器地址
    用户名@服务器地址's password:

题外话

开启ssh免密码登录

#最好不要输密码,用着会相当麻烦,2048位的大数分解应该没人能普普通通的算出来吧
$ ssh-keygen -t rsa
Generating public/private rsa key pair.
输入要保存的密钥文件 (/Users/flxxyz/.ssh/id_rsa): 
输入密码 (empty for no passphrase):
再次输入相同的密码:

#出现下面界面密钥生成好了
The key's randomart image is:
+---[RSA 2048]----+
|+o+B#Bo.o        |
| =o#BEoo .       |
|  &oX+. +        |
| = *.*   =       |
|.   *   S .      |
|   +             |
|  .              |
|                 |
|                 |
+----[SHA256]-----+

类unix用户复制公钥内容,windows用户可以用git-bashC:\Users\你的用户名\.ssh\id_rsa.pub查找复制内容

$ cat ~/.ssh/id_rsa.pub
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCv14bqlJrTAlKJ3H9C3GnzsJ46jCS9jvDjXu70LU4i6AsbHgrH/sS5xAPGxKXE9BSMIabB9XdpEAWjq/qpX6A7acU2LXFxGpjDo1hxNZObNawiVm0n2CoGgGuoD3N+2ZTra03i6b12YNbS6iMdZc3KX1qtRSXw1A5SygWmB7vnlx2n9umcdEutdcUkBP3BLJLpppM0jDU64vAxhnxxJTojwQKc7pAILLvw0IiIyLY37v4CBOq8GtPejy1yShZUd99c883xd80LewO69utA5oRB0419tfMn/A9kK2bt+b0H5QbI/aS0sXbfdhusOQUq0CuU8V5rbwJz38o8Nseet4TJ flxxyz@macos.home

连接到服务器

$ ssh -p 端口 用户名@服务器地址
用户名@服务器地址's password:

进来就在此处不要走动,我去买两个橘子,呸,新建一个文件authorized_keys

$ touch .ssh/authorized_keys

#把刚刚复制的公钥内容写入文件里,保存!
$ vim .ssh/authorized_keys

#这里确保文件的读取权限问题,设置成这样
$ chmod 700 .ssh
$ chmod 600 .ssh/authorized_keys

# 这里重启一下sshd服务(其实我们刚刚在正文重启过了)
$ systemctl restart sshd

来测试一下无密码连接到服务器

$ ssh -i ~/.ssh/id_rsa -p 端口 用户名@服务器地址

没有出现输入密码的提示就是成功了,如果按上面所说的还是无法免密码登录,那就是一些隐藏的“坑”了

疑问

如果之前做过微信jssdk,初看文档会发现没有什么,流程无非就是后端签名,返还给前端

但是仔细想了想,没有配置物品的价值信息呀,在公众号h5页面也只是返还了签名

回头看看请求参数发现了端倪

微信订单id

一开始看示例值我理解的随便一串数字,其中的prepay_id统一下单接口返回结果中的参数

重新开始书写逻辑

在这里我们使用的是h5支付,返回结果为 https://wx.tenpay.com/cgi-bin/mmpayweb-bin/checkmweb?prepay_id=wx151809054027204613d0ca330422xxxxxx&package=287231xxxx

只能采用截取url的方式了,获取到的prepay_idwx151809054027204613d0ca330422xxxxxx

prepay_id发回后端进行签名,返回

{
  "code": 1,
  "msg": "获取微信浏览器支付签名成功",
  "data": {
    "appId": "wx54c4e3c9a7xxxxxx",
    "timeStamp": "1537007685",
    "nonceStr": "5b9ce0458db30",
    "package": "prepay_id=wx151809054027204613d0ca330422xxxxxx",
    "signType": "MD5",
    "paySign": "A819D6551E9E3FE62BE612FA96000000"
  }
}

现在前端就可以愉快的使用WeixinJSBridgeJSSDK


相关链接:

微信内H5调起支付
微信统一下单

出现invalid signature错误的情况真的很迷

  1. 文档最开始说不需要转义,后来我看到错误相关,说需要encodeURIComponent(location.href.split('#')[0])
  2. wx.config()中的nonceStr与后端进行签名时的noncestr不一样
  3. 动态获取url这个地方描述的很迷,没明确说明是需要使用后端提供签名的接口还是,前端发起请求时的url

总之就是,要使用ajax签名,前端需要encodeURIComponent(location.href.split('#')[0])将当前url作为参数,传入后端签名接口,后端如果是php,需要urldecode($_GET['url']),再来获取jsapi_ticket进行签名,返回参数

我的小鱼你睡着了,还认识早晨吗?
昨夜你曾经说,
愿夜幕永不开,
你的香腮边轻轻滑落的,
是你的泪,还是我的泪?
吻别的那个季节,
不是已经哭过了吗?
我的指尖还记忆着,
你慌乱的心跳,温柔的体香里,
那一缕长发飘飘。

我的小鱼你睡醒了吗,还记得夜晚吗?
早晨你曾说过,
愿黎明曙光永不落下,
你的长发边轻轻滑过的,
是他的手,还是我的手?
不是沉睡了吗,
我以为你一尘不变。

我的小鱼你离开了吗,一个人离开
从下着雪的湖面下离开,
你曾说过离别,
为了更好的再见,
我无法忍受离别的画面,
而选择!
而选择,
我的小鱼你会回来吗?
还认识我吗?
你曾经说过,
变化的是时间,不变的是你我,
你身边陪你走过的,
是你自己的心?还是他人的心。
不是已经走远了吗?
我还在看着夕阳,
看着自己被拉长的身影,
我的小鱼你不回来了。

我认不出你了,
我曾说过的也记不清了,
变化的是时间,更是你我。
我在守着黎明,
等待黎明的曙光。
我的小鱼,
我是不是也该走了,
我认识早晨
还记得你曾说,
愿夜幕永不开启,
你的香腮边轻轻滑落的,
是我的泪,
在那个季节已经哭过了。
我的指尖还记得,
你慌乱的心跳,温柔的体香,
那一缕长发飘飘。

我的小鱼,
你走的路在哪,
我已经出发了。

--《魁拔Ⅲ战神崛起》

远天的战歌,欢迎回来,亲爱的魁拔!

官方活动: https://mourl.cc/uDGKyH

貌似联璧金融要倒了,去年上的k3车,还有1000多没出来。

希望不是618卖7亿多,带着小姨子跑路了。。。

2018.06.26 150块还在提现中,不抱太大希望了...
2018.07.20 APP还能打开...

已经不行了哟

前几天的沙龙bug,相信很多人都去蹭了,然鹅我就在旁边静静的看着你们翻车

今天我告诉你们领首页新出的活动,云数据库mysql入门机型买3年,点进页面里购买时长最多只有6个月(感觉不够呀)

查看了下订单提交信息,成功购买了3年
购买成功

将下面代码复制,保存为html文件,打开页面点击链接跳转,即可购买

<a id="get-mysql" href="#">点我领取</a>
<form action="https://buy.cloud.tencent.com/order/check" method="post" style="display:none">
    <textarea name="itemDetails">{"raw_goodsData":[{"type":"cdb","goodsCategoryId":"100016","regionId":4,"projectId":0,"zoneId":200001,"goodsDetail":{"pid":12074,"timeSpan":36,"timeUnit":"m","subType":"CUSTOM","payType":0,"mem":256,"disk":50,"cdbMem":256,"cdbVolume":50,"vpcId":0,"subnetId":0,"zoneId":200001,"type":"cdb","cdbInstanceType":"CUSTOM","mysqlVersion":"5.6","devClass":"Z3","action":"applyCdb","curDeadline":"0000-00-00","instanceRole":"master","projectId":0,"goodsNum":1,"payMode":1,"saleByZone":1,"productInfo":[{"name":"实例类型","value":"主实例"},{"name":"计费模式","value":"包年包月"},{"name":"配置类型","value":"高IO版"},{"name":"配置","value":"256MB内存,50GB存储空间,MySQL5.6"},{"name":"地域","value":"华东地区(上海)"},{"name":"可用区","value":"上海一区"},{"name":"所属网络","value":"基础网络"},{"name":"项目","value":"默认项目"},{"name":"数据复制方式","value":"异步复制"}],"protectMode":0,"deployMode":0,"slaveZone":0,"backupZone":0,"originate":""},"goodsNum":1,"payMode":1}]}</textarea>
</form>
<script src="https://cdn.bootcss.com/jquery/3.3.1/jquery.min.js"></script>
<script>
    $('#get-mysql').click(function () {
        $('form').submit()
    })
</script>

真的是哇的一声哭出来了(´;ω;`)

在自己的git站上花Q了一下某内容审查系统,居然真的被ban掉了!!!

我迅速检查机器ip,没有被连坐,真是太好了( ´_ゝ`)

但是我买的十年短号域就这样被ban了我不甘心呀(╯‵□′)╯︵┴─┴

谷歌大法了一下,解决方法大概就4种,如果大佬还知道有什么抢救办法也可以告诉呀 (´▽`ʃ♡ƪ)"

解决方法

  1. 把域名切换至国内dns解析
  2. 去备案(备...备nmlgb的案)
  3. 换域名(走开)
  4. 找个大厂IP给域名做A记录,接下来听天由命

第一种解决不生效,pass

第二种和第三种不予采用,pass

抱着希望只能使用第四种方案,听天由命了

时间线

  • 2018.3.2 开始被墙
  • 2018.3.3 持续中...
  • 2018.3.4 持续中...
  • 2018.3.5 持续中...
  • 2018.3.6 出现好转
  • 2018.3.7 已经有4个节点解析到企鹅爸爸的IP了_(:3 」∠ )_
  • 2018.3.8 (,,゚Д゚)开心,已经有13个节点回来了
  • 2018.3.9 (´ー`)变成9个了,期待的第4天
  • 2018.3.10 凉了半截
  • 2018.3.11 (´ー`)一首凉凉送给我