需求
众所周知的原因,使用公用的即时聊天工具并不安全,比如某企鹅家的"wei xin",我们需要一个自己的安全的聊天工具,比如我们需要传递账号以及密码等;
方案1:
使用网页工具将文本加密,然后复制粘贴;之后收到密文后,手动复制粘贴解密;效率比较低;
方案2:
使用端对端的通信工具:telegram,whatsapp等;
方案3:
自己架设一个服务器,然后使用自己的客户端来通信;
比如,我发现了一个好东西,Tinode
服务器下载地址为:Release Bug fixes · tinode/chat · GitHub
架设流程
首先,我们需要一台公网的服务器,
1)设置mysql数据库,
参考之前的帖子,第5节:
OpenGts2.6.7 安装笔记(windows更容易些)_飞鸟真人的博客-CSDN博客
2)准备一个邮箱账号用与发送验证码
我这里使用了一个sina.com的账号,
目前很多邮件服务器,使用stmp服务时候都需要一个授权码来登录并发信,

在服务器配置时候需要;
3)配置服务器
我下载的版本是:
tinode-alldbs.linux-amd64.tar.gz
加压后,需要编辑一下tinode.conf
mysql的设置部分:
"store_config": {
		
		"uid_key": "la6YsO+bNX/+XIkOqc5Svw==",
		"max_results": 1024,
		"use_adapter": "mysql",
		"adapters": {
			"mysql": {
				"User": "root",
				"Passwd": "123456",
				"Net": "tcp",
				"Addr": "127.0.0.1",
				"DBName": "tinode",		
				"Collation": "utf8mb4_unicode_ci",
				"ParseTime": true,
				"max_open_conns": 64,
				"max_idle_conns": 64,
				"conn_max_lifetime": 60,
				"sql_timeout": 10
			}
        }
} 
重要的是地址、用户名、口令,我使用默认的端口,所以没有写;
另外就是邮件服务器的设置:
"email": {
			"add_to_tags": true,
			"required": ["auth"],
			"config": {
				
				"host_url": "http://127.0.0.1:6060/",
				"smtp_server": "smtp.sina.com",
				"smtp_port": "25",
				"sender": "\"Tinode\" <tinode@sina.com>",
				"login": "tinode@sina.com",
				"sender_password": "xxxxxxxxxxxxxxxxxxxxxx",
				"auth_mechanism": "login",
				"smtp_helo_host": "sina.com",
				"insecure_skip_verify": false,
				"languages": ["en", "es", "fr", "ru", "vi", "zh"],
				"validation_templ": "./templ/email-validation-{{.Language}}.templ",
				"reset_secret_templ": "./templ/email-password-reset-{{.Language}}.templ",
				"max_retries": 3,
				"domains": [],
			}
		}, 
这里需要注意的就是用户名,授权码,以及smtp服务器的名字不要写错了!!!
最后,
需要在防火墙上打开6060端口!!!
配置完成后,初始化数据库:
./init-db -config=./tinode.conf -data=./data.json 
如果没有报错,就是OK 了,
启动服务器
./tinode -config=./tinode.conf -static_data=static 
此时可以看到屏幕输出,调试完成后,可以在后台运行
nohup ./tinode -config=./tinode.conf -static_data=static & exit 
或者使用screen 辅助在后台运行。
4)服务器的使用
服务器启动后,通过IP就可以访问了,打开网页客户端,十分贴心
http://ip:6060
如下图

点一下带加号的人头像,注册:

这几项,分别是:
登录用户名,密码,显示的昵称,邮箱,
注意:这里需要使用真实的邮箱,然后通过邮箱接收邮件获取动态验证码完成注册!!!
登录后,就可以愉快的聊天了,比如在IM中或者手机浏览器中打开:

备注:
搜索好友使用需要使用如下格式:
mail:zhangsan@sina.com 
祝大家玩的愉快!
后记,如果需要加密传输,应该打开https方式:
1)首先创建证书
使用openssl制作https的证书_forwardMyLife的博客-CSDN博客_openssl制作https证书
2)更改配置:
"tls": {
		"enabled": true,
		"http_redirect": ":80",
		"strict_max_age": 604800,
		"cert_file": "/root/certs/cert.crt",
		"key_file": "/root/certs/private.key"
	},
 
重启服务,使用
https://127.0.0.1:6060
访问!


















