summary refs log tree commit diff
path: root/calico.1
blob: 1c28365ad013c8ed9e89751b7e0f5213002f8f0b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
.Dd May 19, 2020
.Dt CALICO 1
.Os
.
.Sh NAME
.Nm calico
.Nd dispatches cat
.
.Sh SYNOPSIS
.Nm
.Op Fl H Ar host
.Op Fl P Ar port
.Op Fl t Ar timeout
.Ar directory
.
.Sh DESCRIPTION
The
.Nm
daemon
dispatches incoming TLS connections
to instances of
.Xr pounce 1
by Server Name Indication (SNI).
Instances of
.Xr pounce 1
should be configured with
.Fl U
to bind to UNIX-domain sockets
in the directory passed to
.Nm .
.
.Pp
Note that
.Nm
is not a proxy.
Incoming connections are passed directly
to instances of
.Xr pounce 1 ,
which handle TLS negotiation.
.
.Pp
The arguments are as follows:
.Bl -tag -width Ds
.It Fl H Ar host
Bind to
.Ar host .
The default host is localhost.
.It Fl P Ar port
Bind to
.Ar port .
The default port is 6697.
.It Fl t Ar timeout
Set the timeout in milliseconds
after which a connection will be closed
if it has not sent the ClientHello message.
The default timeout is 1000 milliseconds.
.It Ar directory
The path to the directory containing
.Xr pounce 1
UNIX-domain sockets.
.El
.
.Ss Service Configuration
Add the following to
.Pa /etc/rc.conf
to enable the
.Nm
daemon:
.Bd -literal -offset indent
calico_enable="YES"
.Ed
.
.Pp
The default socket directory is
.Pa /var/run/calico .
It can be changed by setting
.Va calico_path .
The
.Xr pounce 1
service can be configured
to listen in this directory
with the following:
.Bd -literal -offset indent
pounce_flags="-U /var/run/calico"
.Ed
.
.Pp
The
.Nm
and
.Xr pounce 1
services can be started and stopped
independently of each other.
.
.Sh EXAMPLES
Obtain certificates for
and dispatch to two instances of
.Xr pounce 1 :
.Bd -literal -offset indent
certbot certonly -d oftc.example.org
certbot certonly -d freenode.example.org
pounce -U /var/run/calico -H oftc.example.org oftc.conf
pounce -U /var/run/calico -H freenode.example.org freenode.conf
calico -H example.org /var/run/calico
.Ed
.Pp
The two instances can be connected to via
.Li oftc.example.org:6697
and
.Li freenode.example.org:6697 ,
respectively.
.
.Sh SEE ALSO
.Xr pounce 1
.
.Sh STANDARDS
.Bl -item
.It
.Rs
.%R RFC 6066
.%A D. Eastlake 3rd
.%Q Huawei
.%T Transport Layer Security (TLS) Extensions: Extension Definitions
.%I IETF
.%D January 2011
.%U https://tools.ietf.org/html/rfc6066
.Re
.
.It
.Rs
.%R RFC 8446
.%A E. Rescorla
.%T The Transport Layer Security (TLS) Protocol Version 1.3
.%I IETF
.%D August 2018
.%U https://tools.ietf.org/html/rfc8446
.Re
.El
.
.Sh AUTHORS
.An June Bug Aq Mt june@causal.agency
.
.Sh BUGS
Send mail to
.Aq Mt list+pounce@causal.agency
or join
.Li #ascii.town
on
.Li chat.freenode.net .
ss='logmsg'> A cute extra novella. Finally finished this series. 2020-09-12Move /opt/local back, cheat port select to use system manJune McEnroe This is not really how you're supposed to use the select system, I don't think, since the mandoc package actually creates those files, but it does work. This lets me actually use the git installed by MacPorts. 2020-09-12Move /opt/local behind /usr againJune McEnroe The reason I did this with pkgsrc was because I actually don't want the man(1) from mandoc, since it won't follow MANSECT. Same applies to MacPorts. I wish I could disable its man(1) with a variant or whatever. 2020-09-12Enable toc in cgit renderings of man pagesJune McEnroe But keep it disabled for READMEs since they always use non-standard sections and the TOC is just distracting there, I think. Also add the style so its h1 is the same size as the ones inside sections... 2020-09-11Install mandoc on macOSJune McEnroe 2020-09-11Rewrite install script yet againJune McEnroe 2020-09-11Remove NetBSD from install scriptJune McEnroe I never use it. 2020-09-11Use MacPorts rather than pkgsrcJune McEnroe My system is probably such a mess now... 2020-09-11Add debian VM name to sshJune McEnroe 2020-09-11Add influencer tweetJune McEnroe 2020-09-10Add The Kingdom of GodsJune McEnroe Reading has really slowed down :( 2020-09-07Add SunglassesJune McEnroe An IRC find. 2020-09-06Add Between the BreathsJune McEnroe One of those good songs from a soundtrack of a film that probably isn't? The summary sounds a lot more interesting than the title implies, at least. 2020-09-04Open /dev/tty in nudgeJune McEnroe This makes it work even when it's run connected to a pipe, i.e. as the notify command of catgirl... 2020-09-04Add nudgeJune McEnroe 2020-09-03Build fbclock with -lzJune McEnroe I guess this got lost somewhere, long ago... 2020-08-29Add tweets from retweetsJune McEnroe