Changeset 823 in code for trunk/doc/suika-config.5


Ignore:
Timestamp:
Sep 15, 2023, 4:20:11 AM (21 months ago)
Author:
yakumo.izuru
Message:

Use asciidoctor for generating manpages.
Rename suikactl to suikadb.

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

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/doc/suika-config.5

    r817 r823  
    1 .Dd $Mdocdate$
    2 .Dt SUIKA-CONFIG 5
    3 .Os
    4 .Sh NAME
    5 .Nm suika-config
    6 .Nd Configuration file for suika IRC bouncer
    7 .Sh DESCRIPTION
     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
    834The config file has one directive per line
    9 
     35.sp
    1036Example:
    11 
     37.sp
    1238listen ircs://
    13 .Pp
    1439tls cert.pem key.pem
    15 .Pp
    1640hostname example.org
    17 
     41.sp
    1842The following directives are supported:
    19 
    20 .Bl -tag -width 7n -compact
    21 .It listen <uri>
    22 Listening URI (default: ":6697")
    23 
     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
    2456The following URIs are supported:
    25 .Bl -tag -width 11n -compact
    26 .It ircs://[host]:[port]
    27 listens with TLS over TCP
    28 .It irc+insecure://[host]:[port]
    29 listens with plain-text over TCP
    30 .It unix:///<path>
    31 listens on a Unix domain socket
    32 .It wss://[host]:[port]
    33 listens for WebSocket connections over
    34 TLS
    35 .It ws+insecure://[host]:[port]
    36 listens for plain-text WebSocket
    37 connections
    38 .It ident://[host]:[port]
    39 listens for plain-text ident
    40 connections
    41 .It http+prometheus://[host]:[port]
    42 listens for plain-text HTTP
    43 connections and serves Prometheus
    44 metrics (host must be "localhost")
    45 .It http+pprof://[host]:[port]
    46 listens for plain-text HTTP
    47 connections and serves pprof
    48 runtime profiling data
    49 (host must be "localhost").
    50 For more information, see:
    51 <https://pkg.go.dev/net/http/pprof>.
    52 .El
    53 
    54 If the scheme is omitted, "ircs" is assumed.
    55 If multiple "listen" directives are specified,
    56 suika will listen on each of them.
    57 
    58 .It hostname <name>
     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.\}
     102unix+admin:///<path>
     103Listens on a Unix domain socket for use with suikactl(1)
     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.\}
     114wss://host:port
     115Listens for WebSocket connections over TLS
     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.\}
     126ws+insecure://host:port
     127Listens for plain\-text WebSocket 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.\}
     138ident://host:port
     139Listens for plain\-text ident connections
     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+prometheus://host:port
     151Listens for plain\-text HTTP connections and serves Prometheus metrics (host must be "localhost")
     152.RE
     153.sp
     154.RS 4
     155.ie n \{\
     156\h'-04'\(bu\h'+03'\c
     157.\}
     158.el \{\
     159.  sp -1
     160.  IP \(bu 2.3
     161.\}
     162http+pprof://host:port
     163Listens for plain\-text HTTP connections and serves pprof runtime profiling data (host must be "localhost")
     164For more information, see: \c
     165.URL "https://pkg.go.dev/net/http/pprof" "" "."
     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.\}
     176hostname <name>
    59177Server hostname
    60 
    61 .It title <title>
    62 Server title. This will be sent as
    63 the ISUPPORT NETWORK value when
    64 clients don't select a specific
    65 network.
    66 
    67 .It tls <cert> <key>
    68 Enable TLS support. The certificate
    69 and key files must be PEM-encoded.
    70 
    71 .It db <driver> <source>
    72 Set the database location for user,
    73 network and channel storage. By
    74 default, a sqlite3 database is
    75 opened in ./suika.db.
    76 
     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.\}
     188title <title>
     189Server title. This will be sent as the ISUPPORT NETWORK value when clients don\(cqt select a specific network.
     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.\}
     200tls <cert> <key>
     201Enable TLS support. The certificate and key files must be PEM\-encoded.
     202.RE
     203.sp
     204.RS 4
     205.ie n \{\
     206\h'-04'\(bu\h'+03'\c
     207.\}
     208.el \{\
     209.  sp -1
     210.  IP \(bu 2.3
     211.\}
     212db <driver> <source>
     213Set the database location for user, network and channel storage.
     214By default, a sqlite3 database is opened in ./suika.db.
     215.RE
     216.sp
    77217Supported drivers:
    78 
    79 .Bl tag -width 7n -compact
    80 .It sqlite3
    81 expects source to be a path to
    82 the SQLite file
    83 .It postgres
    84 expects source to be a space-
    85 separated list of key=value
    86 parameters, e.g. db postgres
    87 host=/run/postgresql
    88 dbname=suika. Note that
    89 sslmode defaults to require.
    90 For more information on
    91 connection strings, see:
    92 <https://pkg.go.dev/github.com/lib/pq#hdr-Connection_String_Parameters>
    93 .El
    94 
    95 .It log fs <path>
    96 Path to the bouncer logs directory, or empty to
    97 disable logging. By default, logging is disabled.
    98 
    99 .It http-origin <patterns>
    100 List of allowed HTTP origins for WebSocket listeners.
    101 The parameters are interpreted as shell patterns, see *glob*(7).
    102 
    103 By default, only the request host is authorized.
    104 Use this directive to enable cross-origin WebSockets.
    105 
    106 .It accept-proxy-ip <cidr..>
    107 Allow the specified IPs to act as a proxy. Proxys have the ability to
    108 overwrite the remote and local connection addresses (via the PROXY protocol,
    109 the Forwarded HTTP header field defined in RFC 7239 or the X-Forwarded-\*
    110 HTTP header fields). The special name "localhost" accepts the loopback
    111 addresses 127.0.0.0/8 and ::1/128.
    112 
     218* sqlite3: expects source to be a path to the SQLite file
     219* postgres: expects source to be a space\- separated list of key=value parameters, e.g. db postgres host=/run/postgresql dbname=suika.
     220Note that sslmode defaults to require.
     221For more information on connection strings, see: \c
     222.URL "https://pkg.go.dev/github.com/lib/pq#hdr\-Connection_String_Parameters" "" ""
     223.sp
     224.RS 4
     225.ie n \{\
     226\h'-04'\(bu\h'+03'\c
     227.\}
     228.el \{\
     229.  sp -1
     230.  IP \(bu 2.3
     231.\}
     232log fs <path>
     233Path to the bouncer logs directory, or empty to disable logging.
     234By default, logging is disabled.
     235.RE
     236.sp
     237.RS 4
     238.ie n \{\
     239\h'-04'\(bu\h'+03'\c
     240.\}
     241.el \{\
     242.  sp -1
     243.  IP \(bu 2.3
     244.\}
     245http\-origin <patterns>
     246List of allowed HTTP origins for WebSocket listeners. The parameters are interpreted as shell patterns, see glob(3)
     247By default, only the request host is authorized. Use this directive to enable cross\-origin WebSockets.
     248.RE
     249.sp
     250.RS 4
     251.ie n \{\
     252\h'-04'\(bu\h'+03'\c
     253.\}
     254.el \{\
     255.  sp -1
     256.  IP \(bu 2.3
     257.\}
     258accept\-proxy\-ip <cidr..>
     259Allow the specified IPs to act as a proxy.
     260Proxies 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).
     261The special name "localhost" accepts the loopback addresses 127.0.0.0/8 and ::1/128.
    113262By default, all IPs are rejected.
    114 
    115 .It max-user-networks <limit>
     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.\}
     273max\-user\-networks <limit>
    116274Maximum number of networks per user. By default, there is no limit.
    117 
    118 .It motd <path>
    119 Path to the MOTD file. The bouncer MOTD is sent to clients which aren't
    120 bound to a specific network. By default, no MOTD is sent.
    121 
    122 .It multi-upstream-mode <true|false>
    123 Globally enable or disable multi-upstream mode.
    124 By default, multi-upstream mode is enabled.
    125 
    126 .It upstream-user-ip <cidr...>
    127 Enable per-user IP addresses.
    128 One IPv4 range and/or one IPv6 range can be
    129 specified in CIDR notation.
    130 One IP address per range will be assigned to
    131 each user and will be used as the source address when connecting to an
    132 upstream network.
    133 
    134 This can be useful to avoid having the whole bouncer banned from an upstream
    135 network because of one malicious user.
    136 .El
    137 .Sh SEE ALSO
    138 .Xr suika 1
    139 .Xr suika-bouncerserv 7
    140 .Sh AUTHORS
    141 .An Simon Ser and contributors Aq https://emersion.fr
    142 .An Izuru Yakumo Aq Mt yakumo.izuru@chaotic.ninja
     275.RE
     276.sp
     277.RS 4
     278.ie n \{\
     279\h'-04'\(bu\h'+03'\c
     280.\}
     281.el \{\
     282.  sp -1
     283.  IP \(bu 2.3
     284.\}
     285motd <path>
     286Path to the MOTD file.
     287The bouncer MOTD is sent to clients which aren\(cqt bound to a specific network.
     288By default, no MOTD is sent.
     289.RE
     290.sp
     291.RS 4
     292.ie n \{\
     293\h'-04'\(bu\h'+03'\c
     294.\}
     295.el \{\
     296.  sp -1
     297.  IP \(bu 2.3
     298.\}
     299multi\-upstream\-mode <true|false>
     300Globally enable or disable multi\-upstream mode.
     301By default, multi\-upstream mode is enabled.
     302.RE
     303.sp
     304.RS 4
     305.ie n \{\
     306\h'-04'\(bu\h'+03'\c
     307.\}
     308.el \{\
     309.  sp -1
     310.  IP \(bu 2.3
     311.\}
     312upstream\-user\-ip <cidr...>
     313Enable per\-user IP addresses.
     314One IPv4 range and/or one IPv6 range can be specified in CIDR notation.
     315One IP address per range will be assigned to each user and will be used as the source address when connecting to an upstream network.
     316This can be useful to avoid having the whole bouncer banned from an upstream network because of one malicious user.
     317.RE
     318.SH "SEE ALSO"
     319.sp
     320suika(1)
     321suikadb(1)
     322suika\-znc\-import(1)
     323suika\-bouncerserv(7)
     324.SH "AUTHOR"
     325.sp
     326Simon Ser and contributors / Izuru Yakumo
Note: See TracChangeset for help on using the changeset viewer.