学之道 http://85g.net/blog/ 2018-11-21 学之道 84 postgresql permission denied for schema GRANT ALL PRIVILEGES ON SCHEMA xxx TO yyy;

GRANT ALL PRIVILEGES ON ALL TABLES IN SCHEMA xxx TO yyy;

]]>
学之道 2018-03-19 12:03:28
83 linux更改时区 # cat  /etc/sysconfig/clock
ZONE="Asia/Shanghai"

UTC=true            

# rm   -f /etc/localtime 
# ln -sf  /usr/share/zoneinfo/Asia/Shanghai    /etc/localtime              

linux是依据/etc/localtime文件内容知道目前系统的时区信息,这个文件一般是从/usr/share/zoneinfo/面选择适当的时区复制过来就可以使用

重启机器后就可以看到时区更改

]]>
学之道 2018-02-22 11:02:21
82 ssh私钥登陆提示Server refused our key问的解决办法 问题现象:

在开启Selinux的情况下,使用无密码认证的私钥登陆登陆时,会出现如下错误提示:

Server refused our key

在/var/log/audit/audit.log日志文件下,可以看到如下提示:

type=AVC msg=audit(1371453190.650:21382): avc: denied { read } for pid=2048 comm="sshd" name="authorized_keys" dev=dm-2 ino=393229 scontext=unconfined_u:system_r:sshd_t:s0-s0:c0.c1023 tcontext=unconfined_u:object_r:home_root_t:s0 tclass=file

问题原因:

生成的~/.ssh/authorized_keys 文件没有selinux上下文属性,导致无法通过Selinux认证,查看该文件属性如下:

[barlowliu@web1 ~]$ ll -Z .ssh/authorized_keys
-rwxr--r--. barlowliu barlowliu ? .ssh/authorized_keys

很多网友在遇到此问题时,都是采用的关闭selinux方式解决问题,但鉴于selinux带来的安全性加强,在一般情况下,不建议关闭selinux。

办法解决:

# restorecon -R -v /home

该命令的作用了恢复/home 目录下所有文件的默认selinux安全上下文属性。

再次查看~/.ssh/authorized_keys文件的selinux安全上下文属性,发现已经改变:

[barlowliu@web1 ~]$ ll -Z ~/.ssh/authorized_keys
-rwxr--r--. barlowliu barlowliu unconfined_u:object_r:user_home_t:s0 /home/barlowliu/.ssh/authorized_keys

]]>
学之道 2017-10-10 12:10:09
81 cpio使用方法 cpio解压文件 test

先在test当前目录下创建文件夹test_dir

cd test_dir

cpio -i -F ../test

解压完成


cpio压缩文件夹test_dir

cd test_dir

find . | cpio -o -H newc > ../test

压缩完成 

]]>
学之道 2017-06-29 11:06:25
80 查询Postgresql数据库、各表占用磁盘大小 查询各数据库占用磁盘大小:
  1. SELECT d.datname AS Name,  pg_catalog.pg_get_userbyid(d.datdba) AS Owner,  
  2.    CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')  
  3.        THEN pg_catalog.pg_size_pretty(pg_catalog.pg_database_size(d.datname))  
  4.        ELSE 'No Access'  
  5.    END AS SIZE  
  6. FROM pg_catalog.pg_database d  
  7.    ORDER BY  
  8.    CASE WHEN pg_catalog.has_database_privilege(d.datname, 'CONNECT')  
  9.        THEN pg_catalog.pg_database_size(d.datname)  
  10.        ELSE NULL  
  11.    END DESC -- nulls first  
  12.    LIMIT 20  


查询数据库中各表占用磁盘大小:
  1. SELECT  
  2.     table_schema || '.' || table_name AS table_full_name,  
  3.     pg_size_pretty(pg_total_relation_size('"' || table_schema || '"."' || table_name || '"')) AS size  
  4. FROM information_schema.tables  
  5. ORDER BY  
  6.     pg_total_relation_size('"' || table_schema || '"."' || table_name || '"'DESC  

]]>
学之道 2017-06-17 17:06:04
79 wireshark抓取HTTP压缩包和SSL包 wireshark介绍

wireshark是一款跨平台网络协议分析工具,通常用来抓取网络数据包,如http通讯,支持window,linux,mac os x等。

下载最新版本 https://www.wireshark.org/。最新版本是2.0,用QT重写了,在mac os x不需要安装quartz了。

gzip压缩包的抓取

最新版已经支持gzip压缩包的抽取了,如果是旧版本可以导出数据包,会自动解压缩。如下图:

2.0新版本已经可以直接支持gzip解压缩:


抓取SSL数据包

基本的原理就是使用保存ssl 的会话密钥用来解密。

创建一个会话密钥保存的空文件:

touch ~/Documents/sslkeylogout.log

然后在wireshark配置ssl会话密钥文件所在位置:

打开参数配置preference选项:

mac os x 和linux类系统 在终端下执行:

 export SSLKEYLOGFILE=~/Documents/sslkeylogout.log && open /Applications/Google Chrome.app && open /Applications/Wireshark.app

如果是windows系统,添加系统环境变量,保证一个空文件存在 c:sslkeylogout.log 

SSLKEYLOGFILE=c:sslkeylogout.log

直接打开浏览器和wireshark即可,不需要在dos下运行。


在打开的浏览器访问https://www.baidu.com,可以看到sslkeylogout.log有新增内容,如:

CLIENT_RANDOM c92a80cc16d76bfd5dd8f789348721d21f5f40a6eb705d3d4a163b466d05ea1e 2cdfabb383a868c122b8d5f0f384d18404e68f841fb395caea6e0b77f24d96591869e7ba2d5a7efb4f3a8660f7c59ff8
CLIENT_RANDOM 166a923c6f3e2b594d752b70b85abdb844a6bee674d3255c42ac5abcb55fddec b107da066ce55b128622aab940a3ba0e662643d926bede5d8cf8e22ba7157eda0087e3c279c04ca0ee71a22ff02f6998
CLIENT_RANDOM 99ebd6cf44387cf5bf08cc4821b35b6bc946e2b4ec8250543aa85ad3edcae438 86641b5c10e0afb54fc21fc64dc742a87ad6039e03ef80a33a963e9cd09624b64c621c9ede5839db84d161c32c72a804

表明ssl交换密钥保存成功,可以进行下一步,wireshare抓包了,抓包后结果如下图:

可以看到ssl数据包已经自动解析并解压了,非常方便。

总结

wireshark 2.0版本在mac os x下已经比较方便使用了,不需要安装linux兼容软件。结合ssl session key,可以实现https类网站数据的抓取。

结合代理软件,亦可方便实现手机软件的通讯数据包抓取。具体wifi热点设置可参考网上其它文章,如,windows可以用软件connecty,mac os x可以接上网线后在「系统偏好设置」-【共享】里分享成wifi热点方式。

]]>
学之道 2017-05-26 09:05:42