522e917ce63f909f2129eb2b1509c9a3bc92d4e4
[x2gobroker.git] / etc / broker / x2gobroker-sessionprofiles.conf
1 ### X2Go Broker Session Profiles - ADAPT TO YOUR NEEDS ###
2
3 # This whole file reflects a set of examplary X2Go session profiles being
4 # provided via the X2Go Session Broker (backend: iniconf).
5
6 # This whole file could be the broker setup in some university institute that
7 # runs three server pools (pool-A, pool-B and pool-C). Though most univerities
8 # have real IPv4 internet addresses, we use private subnets in the examples
9 # below.
10
11 # The X2Go Session Broker is served into the institutes local intranet, the
12 # broker cannot be reached from the internet directly.
13
14 # The first section [DEFAULTS] provides a set of default profile settings that
15 # are common to all session profiles given in sections below.
16
17 # The other section names can be freely chosen, however, each section name has
18 # to be unique within this file.
19
20 # IMPORTANT: in the session profiles below you will find some lines starting
21 # with acl-... These lines do neither protect the X2Go Session Broker nor
22 # your X2Go Servers. They simply allow for selective session profile provision
23 # based on client address, user name and group memberships.
24 #
25 # For protecting the broker use iptables and ip6tables. For protecting your
26 # X2Go Servers use iptable+ip6tables and a tightened PAM configuration (e.g.
27 # pam_access.so). Securing X2Go Servers means securing the SSH daemon that
28 # runs on the X2Go Server.
29
30
31 [DEFAULT]
32 command=TERMINAL
33 defsndport=true
34 useiconv=false
35 iconvfrom=UTF-8
36 height=600
37 export=
38 quality=9
39 fullscreen=false
40 layout=
41 useexports=true
42 width=800
43 speed=2
44 soundsystem=pulse
45 print=true
46 type=auto
47 sndport=4713
48 xinerama=true
49 variant=
50 usekbd=true
51 fstunnel=true
52 applications=TERMINAL,WWWBROWSER,MAILCLIENT,OFFICE
53 multidisp=false
54 sshproxyport=22
55 sound=true
56 rootless=true
57 iconvto=UTF-8
58 soundtunnel=true
59 dpi=96
60 sshport=22
61 setdpi=0
62 pack=16m-jpeg
63 directrdp=false
64 user=BROKER_USER
65
66 [localhost-kde]
67 name=KDE - localhost
68 host=localhost
69 command=KDE
70
71 [localhost-mate]
72 name=MATE - localhost
73 host=localhost
74 command=MATE
75
76 ### EXAMPLES: Below you find some config examples. Adapt them to your needs or
77 ### simply write your own session profiles and remove the examples below.
78
79 ##
80 ## EXAMPLE: pool-A (staff servers)
81 ##
82 ## The pool-A contains three X2Go Servers (server-A, server-B and server-C).
83
84 ## The staff of our example institute falls into two groups of users:
85 ## gnome-users and kde-users.
86 ## The gnome-users log into server-A or server-B, depending on their client
87 ## subnet (IP configuration of the client).
88 ## The kde-users login to server-C (server-C can be reached from the whole
89 ## intranet).
90 ##
91 ## The client IP based split-up of the GNOME users allows some primitive load
92 ## balancing.
93 ##
94 ## If staff people are members of both groups (kde-users, gnome-users) both
95 ## session profiles will be shown in X2Go Client.
96 ##
97
98 #[pool-A-server-A]
99 #user=
100 #host=server-a.pool-a.domain.local
101 #name=GNOME - pool-A (srv-A)
102 #command=GNOME
103 #rootless=false
104 #acl-groups-allow=gnome-users,admins
105 #acl-groups-deny=ALL
106 #acl-clients-deny=ALL
107 #acl-clients-allow=10.1.0.0/16
108 #acl-any-order=deny-allow
109 #broker-session-autologin=true
110
111 #[pool-A-server-B]
112 #user=
113 #host=server-b.pool-a.domain.local
114 #name=GNOME - pool-A (srv-B)
115 #command=GNOME
116 #rootless=false
117 #acl-groups-allow=gnome-users,admins
118 #acl-groups-deny=ALL
119 #acl-clients-deny=ALL
120 #acl-clients-allow=10.2.0.0/16
121 #acl-any-order=deny-allow
122 #broker-session-autologin=true
123
124 #[pool-A-server-C]
125 #user=
126 #host=server-c.pool-a.domain.local
127 #name=KDE - pool-A (srv-C)
128 #command=KDE
129 #rootless=false
130 #acl-groups-allow=kde-users,admins
131 #acl-groups-deny=ALL
132 #acl-any-order=deny-allow
133 #broker-session-autologin=true
134
135 ##
136 ## EXAMPLE: pool-B (e.g. webserver in the DMZ or on the internet)
137 ##
138 ## The pool-B is a single X2Go Server (server-D) that is
139 ## hosted externally. The server-D has an official internet IP.
140 ##
141 ## The session profile for server-D shall be provided to the
142 ## admins group only.
143 ##
144 ## Furthermore, the session profile for server-D shall only get
145 ## offered to a member of the admins group if the admin is sitting
146 ## in front of one of the admin client machines.
147 ##
148
149 #[pool-B-server-D-LXDE]
150 #user=
151 #host=server-d (server-d.domain.internet)
152 #name=LXDE - srv-D
153 #command=LXDE
154 #rootless=false
155 #acl-groups-allow=admins
156 #acl-groups-deny=ALL
157 ## make sure hostnames in client ACLs are resolvable via libnss!!!
158 #acl-clients-deny=ALL
159 #acl-clients-allow=admin-machine1.domain.local, admin-machine2.domain.local, admin-machine3.domain.local
160 #acl-any-order=deny-allow
161
162 ##
163 ## EXAMPLE: pool-C (REAL LOAD BALANCING!!!)
164 ##
165 ## The pool-C is a server pool for students. Our example institute
166 ## knows 200-300 students and has to offer working places for
167 ## every student.
168 ##
169 ## The resource limits on these servers are pretty strict, so staff members
170 ## normally stay away from these machines, anyway. Only two test account
171 ## get this session profile into their X2Go Clients.
172 ##
173 ## The pool-C contains 6 X2Go Servers that serve all students users together
174 ## as a load balance server farm. The servers' hostnames are s-E1, s-E2, ...
175 ## (as found in /etc/hostname). The hosts, however, are not configured in DNS
176 ## so we give their IPs explicitly (also works for IPv6).
177 ##
178 ## Make sure to install x2gobroker-agent on all these 6 X2Go Servers. Also make
179 ## sure to once run the script x2gobroker-keygen on the broker host and once
180 ## the script x2gobroker-pubkeyauthorizer per X2Go Server.
181 ##
182 ## All 6 X2Go Servers have to be configured to use the PostgreSQL X2Go session
183 ## DB backend.
184 ##
185
186 #[pool-C-XFCE]
187 #user=
188 #host=s-E1 (10.0.2.11),s-E2 (10.0.2.12),s-E3 (10.0.2.13),s-E4 (10.0.2.14),s-E5 (10.0.2.15)
189 #name=XFCE - pool-C
190 #command=XFCE
191 #rootless=false
192 #acl-users-allow=testuser-A,testuser-B
193 #acl-users-deny=ALL
194 #acl-groups-allow=students,admins
195 #acl-groups-deny=ALL
196 #acl-any-order=deny-allow
197 # this server pool has a special broker setup for SSH authorized_keys
198 #broker-session-autologin=true
199 #broker-authorized-keys=/var/lib/x2gobroker/ssh/%u/authorized_keys