Jsonz bug-log

后续更新会放在 github.com/jsonz1993/blog

0%

服务端入门汇总

这里只有简单的服务端入门东西没啥好看…


mac 查看端口占用

lsof -i:port
netstat -ant | grep 'port'


redis 安装

由于项目上后台用到redis,如果开发下大家用同一个容易被人改数据,造成奇葩的事情,所以本地搭了一个自己玩。

记录一下本地brew安装redis的过程

按着官网说明下载安装 https://redis.io/download

mac下建议直接用brew管理

  1. brew install redis
  2. 可以用 brew list redis查看redis安装的位置
  3. brew 安装的软件,配置一般都在/usr/local/etc,可以直接进去修改配置

安装完之后,直接根据提示 brew services start xxxx(redis) 或者改完配置要重启reids brew services restart xxx(redis)。这些都是 brew 的常规操作了

配置的话,我这边根据项目没什么需要改的,端口直接用默认端口,就设了个密码,本来本地跑想直接把密码写在 conf 文件,想想这样显得太不专业了,建议直接用commit设置

命令行跑redis-cli 然后输入 CONFIG SET requirepass $YOUR_PASSWORD
如果这时候输出 ok 则设置成功 可以用 AUTH $YOUR_PASSWORD 来校验。

一切ok之后,键入 exit 退出 redis-cli,结束。


SSH 配置

本文只是单纯分享下怎么配置 免密登录服务器以及github clone,和网上99%没差异,只是整理一下后面如果又需要的话可以看

只适用于mac,linux应该也适用

基本配置

  1. 创建.ssh目录 mkdir -p ~/.ssh
  2. 创建秘钥 ssh-keygen -t rsa -b 4096 -C "your_email@example.com" 输完直接敲回车即可
  3. 此时你的 ~/.ssh就会多了几个文件 id_rsa与id_rsa.pub分别是公钥和私钥
  4. 私钥自己留着,公钥如果你想要免密登录哪台服务器就拷贝到那台服务器的authorized_keys里面

如果你的机器本来就有 id_rsa 与 id_rsa.pub 则可以直接跳过1,2,3步。

如果你有私钥的话,你可能需要有一个 .ssh/config 文件用来存储你的秘钥配置,关于这块后面有用到我再来补充

关于第四步拷贝到远程机器的authorized_keys里面,可以直接使用命令ssh-copy-id user@host或者ssh user@host 'mkdir -p .ssh && cat >> .ssh/authorized_keys' < ~/.ssh/id_rsa.pub

github配置

至于github其实也是一样的,只是他的 authorized_keys 是用设置来配置,具体在个人 setting/ssh里面

简单原理

最后SSH的原理简单可以这么理解
我生成了一个私钥和一个公钥,私钥存放在本地,公钥放到远程机器上
当我链接远程机器的时候,机器就会发一串随机字符串给我,我用私钥加密只会再发回去。
远程主机再用存放在 authorized_keys 的公钥去解密,如果成功且匹配,意味着这个用户是可信任的。

相关参考 or 收藏链接

SSH原理与运用(一):远程登录
github关于ssh
服务器登录相关

服务器基础教程 这是个好教程,基本上都是一些入门级的东西 对新手很友好


nginx && ssl

Centos7系统

  • 安装 yum install nginx
  • 启动直接 命令行键入nginx就好
  • 要查看是否启动可以看最简单直接查看有没有Nginx进程。 ps -ef | grep nginx
  • 常用的命令,测试配置文件 nginx -tnginx -s [signal]

配置基本看这几篇就够用了 8分钟带你深入浅出搞懂Nginx, nginx 这一篇就够了

ssl 推荐直接用 certbot 简单易用好操作

centos的可以直接进这个网址,傻瓜式才做即可 https://certbot.eff.org/lets-encrypt/centos6-nginx