Home | 简体中文 | 繁体中文 | 杂文 | Github | 知乎专栏 | Facebook | Linkedin | Youtube | 打赏(Donations) | About
知乎专栏

第 168 章 即时通信

目录

168.1. Matrix
168.1.1. Synapse
168.2. IRC - Internet Relay Chat
168.2.1. IRC Protcol
168.2.2. IRC Commands
168.2.3. ircd-irc2 - The original IRCNet IRC server daemon
168.2.4. ircd-hybrid
168.2.5. IRC Client
168.2.6. Web IRC
168.3. jabber XMPP
168.3.1. ejabberd - Distributed, fault-tolerant Jabber/XMPP server written in Erlang
168.3.2. tigase
168.3.3. Openfire
168.3.4. DJabberd
168.3.5. freetalk - A console based Jabber client
168.3.6. library
168.4. News Group (innd)
168.4.1. Ubuntu
168.4.2. CentOS
168.4.3. User Authentication
168.4.4. usenet 管理
168.4.5. 通过SSL连接
168.4.6. src.rpm 安装
168.4.7. 常用新闻组

168.1. Matrix

168.1.1. Synapse

168.1.1.1. Docker 安装

https://github.com/matrix-org/synapse/tree/master/docker

			
docker run -it --rm \
    --mount type=volume,src=synapse-data,dst=/data \
    -e SYNAPSE_SERVER_NAME=chat.netkiller.cn \
    -e SYNAPSE_REPORT_STATS=yes \
    matrixdotorg/synapse:latest generate
    
docker run -d --name synapse \
    --mount type=volume,src=synapse-data,dst=/data \
    -p 8008:8008 \
    matrixdotorg/synapse:latest
    
[root@netkiller ~]# docker logs synapse
			
			

创建用户

			
[root@netkiller ~]# docker exec -it synapse register_new_matrix_user http://localhost:8008 -c /data/homeserver.yaml
New user localpart [root]: 
Password: 
Confirm password: 
Make admin [no]: yes
Sending registration request...
Success!

[root@netkiller ~]# docker exec -it synapse register_new_matrix_user http://localhost:8008 -c /data/homeserver.yaml
New user localpart [root]: neo
Password: 
Confirm password: 
Make admin [no]: 
Sending registration request...
Success!

[root@netkiller ~]# docker exec -it synapse register_new_matrix_user http://localhost:8008 -c /data/homeserver.yaml
New user localpart [root]: netkiller
Password: 
Confirm password: 
Make admin [no]: 
Sending registration request...
Success!
			
			

168.1.1.2. 挂载 SSL 证书

使用 Caddy Web 服务器挂载免费 SSL 证书

			
[root@netkiller ~]# cat /etc/caddy/Caddyfile
chat.netkiller.cn:80 {
	respond /.well-known/acme-challenge/h27fzgPCxW9Kmhcd9af3YPwuYFCizmZZ_JLvoCeNSQ4 "h27fzgPCxW9Kmhcd9af3YPwuYFCizmZZ_JLvoCeNSQ4.sD2SO-myCgf0JjzYqkA9LA3nN9Pau98bk_fmlBWmzII" 200
}
chat.netkiller.cn {
	# reverse_proxy 127.0.0.1:8008
	#reverse_proxy /_matrix/*  {
    #		to 127.0.0.1:8008
	#}

	reverse_proxy /_matrix/* http://localhost:8008
	reverse_proxy /_synapse/client/* http://localhost:8008
}