source: code/trunk/doc/suika-config.5

Last change on this file was 824, checked in by yakumo.izuru, 21 months ago

Remove spurious part from the docs

Signed-off-by: Izuru Yakumo <yakumo.izuru@…>

File size: 5.5 KB
RevLine 
[823]1'\" t
2.\" Title: suika-config
3.\" Author: Simon Ser and contributors / Izuru Yakumo
4.\" Generator: Asciidoctor 2.0.20
5.\" Date: 2023-09-15
6.\" Manual: Suika IRC Bouncer
7.\" Source: SUIKA-CONFIG
8.\" Language: English
9.\"
10.TH "SUIKA\-CONFIG" "5" "2023-09-15" "SUIKA\-CONFIG" "Suika IRC Bouncer"
11.ie \n(.g .ds Aq \(aq
12.el .ds Aq '
13.ss \n[.ss] 0
14.nh
15.ad l
16.de URL
17\fI\\$2\fP <\\$1>\\$3
18..
19.als MTO URL
20.if \n[.g] \{\
21. mso www.tmac
22. am URL
23. ad l
24. .
25. am MTO
26. ad l
27. .
28. LINKSTYLE blue R < >
29.\}
30.SH "NAME"
31suika-config \- Configuration file for suika(1)
32.SH "DESCRIPTION"
33.sp
[817]34The config file has one directive per line
[823]35.sp
[817]36Example:
[823]37.sp
[817]38listen ircs://
39tls cert.pem key.pem
40hostname example.org
[823]41.sp
[817]42The following directives are supported:
[823]43.sp
44.RS 4
45.ie n \{\
46\h'-04'\(bu\h'+03'\c
47.\}
48.el \{\
49. sp -1
50. IP \(bu 2.3
51.\}
52listen <uri>
53Listening URI (default ":6697")
54.RE
55.sp
[817]56The following URIs are supported:
[823]57.sp
58.RS 4
59.ie n \{\
60\h'-04'\(bu\h'+03'\c
61.\}
62.el \{\
63. sp -1
64. IP \(bu 2.3
65.\}
66ircs://host:port
67Listens with TLS over TCP
68.RE
69.sp
70.RS 4
71.ie n \{\
72\h'-04'\(bu\h'+03'\c
73.\}
74.el \{\
75. sp -1
76. IP \(bu 2.3
77.\}
78irc+insecure://host:port
79Listens with plain\-text over TCP
80.RE
81.sp
82.RS 4
83.ie n \{\
84\h'-04'\(bu\h'+03'\c
85.\}
86.el \{\
87. sp -1
88. IP \(bu 2.3
89.\}
90unix:///<path>
91Listens on a Unix domain socket
92.RE
93.sp
94.RS 4
95.ie n \{\
96\h'-04'\(bu\h'+03'\c
97.\}
98.el \{\
99. sp -1
100. IP \(bu 2.3
101.\}
102wss://host:port
103Listens for WebSocket connections over TLS
104.RE
105.sp
106.RS 4
107.ie n \{\
108\h'-04'\(bu\h'+03'\c
109.\}
110.el \{\
111. sp -1
112. IP \(bu 2.3
113.\}
114ws+insecure://host:port
115Listens for plain\-text WebSocket connections
116.RE
117.sp
118.RS 4
119.ie n \{\
120\h'-04'\(bu\h'+03'\c
121.\}
122.el \{\
123. sp -1
124. IP \(bu 2.3
125.\}
126ident://host:port
127Listens for plain\-text ident connections
128.RE
129.sp
130.RS 4
131.ie n \{\
132\h'-04'\(bu\h'+03'\c
133.\}
134.el \{\
135. sp -1
136. IP \(bu 2.3
137.\}
138http+prometheus://host:port
139Listens for plain\-text HTTP connections and serves Prometheus metrics (host must be "localhost")
140.RE
141.sp
142.RS 4
143.ie n \{\
144\h'-04'\(bu\h'+03'\c
145.\}
146.el \{\
147. sp -1
148. IP \(bu 2.3
149.\}
150http+pprof://host:port
151Listens for plain\-text HTTP connections and serves pprof runtime profiling data (host must be "localhost")
152For more information, see: \c
153.URL "https://pkg.go.dev/net/http/pprof" "" "."
154.RE
155.sp
156.RS 4
157.ie n \{\
158\h'-04'\(bu\h'+03'\c
159.\}
160.el \{\
161. sp -1
162. IP \(bu 2.3
163.\}
164hostname <name>
[817]165Server hostname
[823]166.RE
167.sp
168.RS 4
169.ie n \{\
170\h'-04'\(bu\h'+03'\c
171.\}
172.el \{\
173. sp -1
174. IP \(bu 2.3
175.\}
176title <title>
177Server title. This will be sent as the ISUPPORT NETWORK value when clients don\(cqt select a specific network.
178.RE
179.sp
180.RS 4
181.ie n \{\
182\h'-04'\(bu\h'+03'\c
183.\}
184.el \{\
185. sp -1
186. IP \(bu 2.3
187.\}
188tls <cert> <key>
189Enable TLS support. The certificate and key files must be PEM\-encoded.
190.RE
191.sp
192.RS 4
193.ie n \{\
194\h'-04'\(bu\h'+03'\c
195.\}
196.el \{\
197. sp -1
198. IP \(bu 2.3
199.\}
200db <driver> <source>
201Set the database location for user, network and channel storage.
202By default, a sqlite3 database is opened in ./suika.db.
203.RE
204.sp
[817]205Supported drivers:
[823]206* sqlite3: expects source to be a path to the SQLite file
207* postgres: expects source to be a space\- separated list of key=value parameters, e.g. db postgres host=/run/postgresql dbname=suika.
208Note that sslmode defaults to require.
209For more information on connection strings, see: \c
210.URL "https://pkg.go.dev/github.com/lib/pq#hdr\-Connection_String_Parameters" "" ""
211.sp
212.RS 4
213.ie n \{\
214\h'-04'\(bu\h'+03'\c
215.\}
216.el \{\
217. sp -1
218. IP \(bu 2.3
219.\}
220log fs <path>
221Path to the bouncer logs directory, or empty to disable logging.
222By default, logging is disabled.
223.RE
224.sp
225.RS 4
226.ie n \{\
227\h'-04'\(bu\h'+03'\c
228.\}
229.el \{\
230. sp -1
231. IP \(bu 2.3
232.\}
233http\-origin <patterns>
234List of allowed HTTP origins for WebSocket listeners. The parameters are interpreted as shell patterns, see glob(3)
235By default, only the request host is authorized. Use this directive to enable cross\-origin WebSockets.
236.RE
237.sp
238.RS 4
239.ie n \{\
240\h'-04'\(bu\h'+03'\c
241.\}
242.el \{\
243. sp -1
244. IP \(bu 2.3
245.\}
246accept\-proxy\-ip <cidr..>
247Allow the specified IPs to act as a proxy.
248Proxies have the ability to overwrite the remote and local connection addresses (via the PROXY protocol, the Forwarded HTTP header field defined in RFC 7239 or the X\-Forwarded\- HTTP header fields).
249The special name "localhost" accepts the loopback addresses 127.0.0.0/8 and ::1/128.
[817]250By default, all IPs are rejected.
[823]251.RE
252.sp
253.RS 4
254.ie n \{\
255\h'-04'\(bu\h'+03'\c
256.\}
257.el \{\
258. sp -1
259. IP \(bu 2.3
260.\}
261max\-user\-networks <limit>
[817]262Maximum number of networks per user. By default, there is no limit.
[823]263.RE
264.sp
265.RS 4
266.ie n \{\
267\h'-04'\(bu\h'+03'\c
268.\}
269.el \{\
270. sp -1
271. IP \(bu 2.3
272.\}
273motd <path>
274Path to the MOTD file.
275The bouncer MOTD is sent to clients which aren\(cqt bound to a specific network.
276By default, no MOTD is sent.
277.RE
278.sp
279.RS 4
280.ie n \{\
281\h'-04'\(bu\h'+03'\c
282.\}
283.el \{\
284. sp -1
285. IP \(bu 2.3
286.\}
287multi\-upstream\-mode <true|false>
288Globally enable or disable multi\-upstream mode.
289By default, multi\-upstream mode is enabled.
290.RE
291.sp
292.RS 4
293.ie n \{\
294\h'-04'\(bu\h'+03'\c
295.\}
296.el \{\
297. sp -1
298. IP \(bu 2.3
299.\}
300upstream\-user\-ip <cidr...>
301Enable per\-user IP addresses.
302One IPv4 range and/or one IPv6 range can be specified in CIDR notation.
303One IP address per range will be assigned to each user and will be used as the source address when connecting to an upstream network.
304This can be useful to avoid having the whole bouncer banned from an upstream network because of one malicious user.
305.RE
306.SH "SEE ALSO"
307.sp
308suika(1)
309suikadb(1)
310suika\-znc\-import(1)
311suika\-bouncerserv(7)
312.SH "AUTHOR"
313.sp
314Simon Ser and contributors / Izuru Yakumo
Note: See TracBrowser for help on using the repository browser.