- 博客(17)
- 资源 (2)
- 收藏
- 关注
原创 linux增加用户并赋予sudo权限
一:创建用户"daiyu"useradd -m daiyu二:为新建的用户设置密码,回车后输入新密码passwd daiyu三:为新建的用户设置sudo权限a) 切换至root账户b) 为sudo文件增加写权限,默认是读权限chmod u+w /etc/sudoersc) 打开文件vim /etc/suduers,在root ALL=(ALL) ALL这
2017-01-30 22:09:34 14517 1
原创 centos7设置ssh安全策略
准备环境:1.两台虚拟机,系统是centos7,IP1:192.168.1.103,IP2:192.168.1.1062.IP1的SSH的默认端口是22,这里修改为22223.只允许IP2通过SSH登录IP1第一步:检查防火墙设置a) 检查防火墙是否开启systemctl status firewalld.serviceb) 如果防火墙开启,
2017-01-30 13:11:28 8492
转载 谈谈密码安全:服务端密码保存
现在有越来越多的网络服务,基本都需要注册才能使用,注册需填写账号和密码。账号基本是邮箱或者手机号,普通人基本上只有一两个邮箱和手机号,而普通人记得的密码也只是一两个。因此很多人会很自然地在不同的网络服务中使用相同的账号和密码。这样就出现安全隐患。一旦某个服务的账号密码被泄露,其它的服务安全就受到牵连。密码安全,应该分两部分讨论:作为账号系统的设计者,如何对用户负责,更安全地保存密码
2017-01-12 10:13:48 4576
转载 设计安全的账号系统的正确姿势
引子最近有个虚拟练习项目,涉及到系统安全保障的设计,于是对安全保障这块做了一些更深入的了解。发现了很多有趣的东西,开阔了眼界。中间查了一些资料,于是我打算重新整理,用更加循序渐进,大家都能懂的方式,说一说如何设计一个安全的系统。著名的安全事件首先来看看最近几年比较著名的拖库撞库后密码泄露的事件:2011年12月,国内最大的程序员社区 CSDN 遭拖库,600万个
2017-01-12 09:47:16 577
原创 redis3.0.7源码阅读(十三)main函数
版本:3.0.7源码:redis.c/* * main函数 */int main(int argc, char **argv) { struct timeval tv; /* We need to initialize our libraries, and the server configuration. */ // 初始化库#ifdef
2017-01-08 21:32:54 1163
原创 redis3.0.7源码阅读(十二)redis事件处理
版本:3.0.71.源码ae.hae.cae_epoll.cae_evport.cae_kqueue.cae_select.c2.数据结构/* * 文件事件结构 *//* File event structure */typedef struct aeFileEvent { // 监听事件类型掩码 int mask;
2017-01-08 21:18:23 530
原创 redis3.0.7源码阅读(十一)redis数据库rdb
版本:3.0.71.源码rdb.hrdb.c2.文件结构大写字母:常量小写字母:变量下图展示了含有两个非空db 0 1的持久化文件的结构3.一些特性3.1 rdb文件会将过期时间同时记录原文出自:End;
2017-01-08 21:13:57 407
原创 redis3.0.7源码阅读(十)redis数据库
版本:3.0.71.源文件redis.hdb.c2.数据结构/** 客户端*/typedef struct redisClient {...// 当时连接使用的数据库redisDb *db;...} redisClient;/** 服务器*/struct redisServer
2017-01-08 20:49:29 443
原创 redis3.0.7源码阅读(九)redis对象
版本:3.0.71.源文件redis.hobject.ct_hash.ct_list.ct_set.ct_string.ct_zset.c2.数据结构redis使用对象来表示数据库中的键和值(k/v),每创建一个键值对时,至少会创建两个对象,分别用于k/v,redis的键(k)总是字符串,值(v)则可以是字符串对象/列表对象/集合对象/有
2017-01-08 20:47:13 415
原创 redis3.0.7源码阅读(七)redis跳跃表
版本:3.0.71.源文件redis.ht_zset.c2.跳跃表数据结构/** 跳跃表节点*//* ZSETs use a specialized version of Skiplists */typedef struct zskiplistNode {// 成员对象robj *obj;// 分值double
2017-01-08 20:42:05 356
原创 redis3.0.7源码阅读(六)redis整数集合
版本:3.0.71.源文件intset.hintset.c2.整数集合数据结构typedef struct intset {// 编码方式uint32_t encoding;// 集合包含的元素数量uint32_t length;// 保存元素的数组int8_t contents[];} intset;
2017-01-08 20:39:17 352
原创 redis3.0.7源码阅读(五)redis字典
版本:3.0.71.源文件dict.hdict.c2.字典数据结构/** 哈希表节点*/typedef struct dictEntry {// 键void *key;// 值union {void *val;uint64_t u64;int64_t s64;double d;} v;// 下一
2017-01-08 20:31:01 382
原创 redis3.0.7源码阅读(四)redis双端链表
版本:3.0.71.源文件adlist.hadlist.c2.双端链表数据结构/** 双端链表节点*/typedef struct listNode {// 前节点struct listNode *prev;// 后节点struct listNode *next;// 节点值void *value;} list
2017-01-08 20:27:44 373
原创 redis3.0.7源码阅读(三)redis动态字符串
版本:3.0.71.源文件sds.hsds.c2.动态字符串数据结构/** 类型别名*/typedef char *sds;/** 保存字符串对象的结构*/struct sdshdr {//buf已用长度unsigned int len;//buf剩余长度unsigned int free;
2017-01-08 20:25:16 453
原创 redis3.0.7源码阅读(二)源码文件归类
版本:3.0.7目录:src#1.数据结构sds.h #SDS数据结构实现sds.c #SDS数据结构实现adlist.h #双端链表实现adlist.c #双端链表实现dict.h #字典实现dict.c #字典实现#2.内存编码数据结构inset.h #整数集合实现inset.c #整数集合实现zi
2017-01-08 20:21:57 421
原创 redis3.0.7源码阅读(一)源码文件
版本:redis 3.0.7目录:src.gitignore #adlist.h #双端链表实现adlist.c #双端链表实现ae.h #事件处理器ae.c #事件处理器ae_epoll.c #事件处理器ae_evport.c #事件处理器ae_kqueue.c #事件处理器ae_select.c #事件处理器anet.h #异步网络框
2017-01-08 20:19:47 559
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人