爱大客 - 2017年4月
type: channel
link: https://www.idarc.cn/index.php/2017/04/
description: Every piece of all creatures in this freezing world, are racing for freedom.
items: 修改ssh登录欢迎界面
items: deepin安装opennms
items: deepin的root密码修改
items: Linux下的网络抓包嗅探
items: openwrt 读取系统日志：logread
items: linux更新ntp时间
items: Openwrt统一配置接口UCI（Unified Configuration Interface）
items: linux查看服务的log：journalctl
items: JWT(Javascript Web Token)
items: MQTT订阅topic通配符

修改ssh登录欢迎界面
type: item
date: 2017-04-25T16:37:33+08:00
description: 修改/etc/banner就行了。

deepin安装opennms
type: item
date: 2017-04-24T15:06:35+08:00
description: 装opennms真的是坑多多。。。 需要同时参考下面两个地址： Installation Guide Installation:Debian使用标准的简化快速安装方式会出问题，主要是国内下载太慢。。。首先，apt-get源需要增加一个。在/etc/apt/source.list.d/下增加一个文件，内容是：··· deb http://debian.opennms.org opennms-19 main deb-src http://debian.opennms.org opennms-19 main ···然后更新源sudo apt-get update 这儿不得不说第一个坑，默认的内容（如下）更新会遇到问题，所以一定要注意！！！ ··· deb http://debian.opennms.org stable main deb-src http://debian.opennms.org stable main ···安装sudo apt-get install opennms照做不会错的部分按照 4.2.2. Prepare PostgreSQL 这部分安装，没问题，复制如下： ··· The Debian package installs also PostgreSQL database and is already initialized and added in the runlevel configuration. It is only necessary to start the PostgreSQL database without a restart.Startup PostgreSQL database service postgresql start The next step is creating an opennms database user with password and configure the authentication method.Accounting and database management for OpenNMS su - postgres createuser -P opennms createdb -O opennms opennms exit It is not necessary to change the authentication method in pg_hba.conf, it is by default set to md5 for localhost connections. Set password for Postgres super user su - postgres psql -c "ALTER USER postgres WITH PASSWORD 'YOUR-POSTGRES-PASSWORD';" exit The super user is required to be able to initialize and change the database schema for installation and updates. vi ${OPENNMS_HOME}/etc/opennms-datasources.xml Configuration for database authentication in OpenNMS Set the user name to access the OpenNMS database table Set the password to access the OpenNMS database table Set the postgres user for administrative access to PostgreSQL Set the password for administrative access to PostgreSQL ···初始化后面记得OPENNMS_HOME位置是在/usr/share/opennms/初始化JAVA_HOMEConfiguration of Java environment for OpenNMS ${OPENNMS_HOME}/bin/runjava -s 看起来没问题，不顾我建议还是改一下/usr/default/opennms文件，内容为： ··· JAVA_HOME=/usr/bin ···安装和初始化IPlike确认一下装了没sudo apt-get install iplike 使用脚本初始化sudo /usr/sbin/install_iplike.sh 提示“CREATE FUNCTION”就是装好了。初始化opennms记住！检查一下你装…

deepin的root密码修改
type: item
date: 2017-04-24T14:06:49+08:00
description: deepin安装后默认是创建的deepin用户，怎么进入root和修改root密码？ 其实很简单，用sudo passwd即可，不需要输入旧密码（本来也没有旧密码） 修改其他用户的密码，用sudo passwd username即可。

Linux下的网络抓包嗅探
type: item
date: 2017-04-24T10:39:31+08:00
description: Windows下著名的当然是wireshark，这个在linux下也有，apt-get install wireshark就可以了，不过需要图形界面才能运行，不适合ssh登录。 ssh命令行下的抓包，就是tcpdump，包很小，1M左右，所以在openwrt下也能使用。 使用参考这篇文章12 Tcpdump Commands – A Network Sniffer Tool抓包抓指定网口 -i eth0 抓指定协议tcp ip udp tcp 抓指定目的ip dst 192.168.0.118 抓指定源ip src 192.168.0.118 抓指定ip host 192.168.0.118 抓指定端口 port 80逻辑方式和、或 host 210.27.48.1 and \ (210.27.48.2 or 210.27.48.3 ) 'host 210.27.48.1 and (210.27.48.2 or 210.27.48.3 )' 否 host 210.27.48.1 and ! 210.27.48.2查看抓5个包 -c 5 ASCII形式看包内容 -A 16进制看包内容 -XX 看有哪些硬件端口 -D保存存到文件 -w cap001.pcap 从文件读 -r cap001.pcap

openwrt 读取系统日志：logread
type: item
date: 2017-04-22T17:41:57+08:00
description: openwrt 读取系统日志：logread

linux更新ntp时间
type: item
date: 2017-04-22T17:09:59+08:00
description: sudo apt-get install ntpdate sudo ntpdate cn.pool.ntp.org

Openwrt统一配置接口UCI（Unified Configuration Interface）
type: item
date: 2017-04-22T15:45:03+08:00
description: 可以通过命令上使用Usage: uci [<options>] <command> [<arguments>] Commands: batch export [<config>] import [<config>] changes [<config>] commit [<config>] add <config> <section-type> add_list <config>. . =<string> del_list <config>. . =<string> show [<config>[. [. ]]] get <config>. [. ] set <config>. [. ]=<value> delete <config>[. [[. ][=<id>]]] rename <config>. [. ]=<name> revert <config>[. [. ]] reorder <config>. =<position> Options: -c <path> set the search path for config files (default: /etc/config) -d <str> set the delimiter for list values in uci show -f <file> use <file> as input instead of stdin -m when importing, merge data into an existing package -n name unnamed sections on export (default) -N don't name unnamed sections -p <path> add a search path for config change files -P <path> add a search path for config change files and use as default -q quiet mode (don't print error messages) -s force strict mode (stop on parser errors, default) -S disable strict mode -X do not use extended syntax on 'show'

linux查看服务的log：journalctl
type: item
date: 2017-04-22T11:43:52+08:00
description: 例如查看 lora-app-server服务： journalctl -u lora-app-server -f -n 50

JWT(Javascript Web Token)
type: item
date: 2017-04-22T11:26:15+08:00
description: 用户身份认证总是一件绕不过去又颇费脑子的事情。听说出了JWT认证外，还有SAML、SWT等认证方式。这篇文章讲JWT讲得很好，可以看看。

MQTT订阅topic通配符
type: item
date: 2017-04-22T10:31:25+08:00
description: /斜杠划分不同的级别，如“sport/tennis/player1” #井号通配当前级别以下的所有内容 如“sport/tennis/player1/#”匹配： · “sport/tennis/player1” · “sport/tennis/player1/ranking” · “sport/tennis/player1/score/wimbledon” 如果只是一个#，则匹配所有。+加号匹配单级内容 如 “sport/tennis/+” 匹配 “sport/tennis/player1” 和 “sport/tennis/player2”, 但是不匹配 “sport/tennis/player1/ranking”，也不匹配““sport/tennis”$美元符号在发布时放在主题名称前面，用作系统特定的一些消息发布，并且不能被#、+通配符所匹配到。 $SYS/一般用于发布和服务器系统相关的信息 应用不应使用$开头的名称。