Project

General

Profile

Settingsyml » History » Version 3

Paul Kelly, 01/26/2011 10:32 AM

1 1 Paul Kelly
h1. Settings
2
3
The configuration for the smart-proxy is held in the *config/settings.yml* file.
4
5 3 Paul Kelly
h2. YAML start
6
7 2 Paul Kelly
The first non-comment line of this file must be three dashes.
8
9 1 Paul Kelly
<pre>
10
---
11 2 Paul Kelly
</pre>
12 1 Paul Kelly
13 3 Paul Kelly
h2. SSL configuration
14 1 Paul Kelly
15 3 Paul Kelly
The existence of all the three ssl key entries below enables the use of an SSL connections.
16
17
NOTE that both client certificates need to be signed by the same CA, which must be in the *ssl_ca_file*, in order for this to work
18 1 Paul Kelly
see http://theforeman.org/projects/smart-proxy/wiki/SSL for more information
19 2 Paul Kelly
20 1 Paul Kelly
<pre>
21
:ssl_certificate: ssl/certs/fqdn.pem
22
:ssl_ca_file: ssl/certs/ca.pem
23
:ssl_private_key: ssl/private_keys/fqdn.key
24
</pre>
25 2 Paul Kelly
26
This is the list of hosts from which the smart proxy will accept connections. If this list is empty then every verified SSL connection is allowed to access the API.
27
<pre>
28 1 Paul Kelly
:trusted_hosts:
29
- foreman.prod.domain
30
- foreman.dev.domain
31
</pre>
32
33 3 Paul Kelly
h2. Instance attributes
34
35 2 Paul Kelly
If this entry is present and not false then the smart-proxy will attempt to disconnect itself from the controlling terminal and daemonize itself.
36
<pre>
37 1 Paul Kelly
:daemon: true
38
</pre>
39 2 Paul Kelly
40
The port listened to by the proxy. If this is not present then the default Sinatra port of 4567 is used.
41
42
<pre>
43 1 Paul Kelly
:port: 8443
44
</pre>
45
46 3 Paul Kelly
h2. TFTP section
47
48
Activate the TFTP management module within the smart-proxy instance. 
49
50
The *tftproot* value is directory into which tftp files are copied and served. The tftp daemon will also be expected to chroot to this location. This component is only supported in the Unix environment
51
<pre>
52 1 Paul Kelly
:tftp: true
53
:tftproot: /tmp/tftpboot
54 3 Paul Kelly
</pre>
55 1 Paul Kelly
56 3 Paul Kelly
h2. DNS section
57 1 Paul Kelly
58 3 Paul Kelly
Activate the DNS management module within the smart-proxy instance. 
59
60
The DNS module can manipulate any DNS server that complies with the ISC Dynamic DNS Update standard and can therefore be used to manage both Microsoft and Bind servers.
61
62
The *dns_key* is used to validate the client request. If it is not present then the update operation is performed without peer verification, (not recommended.)
63
The *dns_server* option is used if the smart-proxy is not located on the same physical host as the DNS server. If it is not specified then localhost is presumed.
64
<pre>
65 1 Paul Kelly
:dns: true
66
:dns_key: /home/proxy/keys/Kapi.+157+47848.private
67 3 Paul Kelly
:dns_server: dnsserver.site.domain.com
68
</pre>
69 1 Paul Kelly
70 3 Paul Kelly
h2. DHCP section
71
72
Activate the DHCP management module within the smart-proxy instance. 
73
74 1 Paul Kelly
# Enable DHCP management
75
:dhcp: true
76
# The vendor can be either isc or native_ms
77
:dhcp_vendor: isc
78
# Settings for Ubuntu ISC
79
#:dhcp_config: /etc/dhcp3/dhcpd.conf
80
#:dhcp_leases: /var/lib/dhcp3/dhcpd.leases
81
# Settings for Redhat ISC
82
:dhcp_config: etc/dhcpd.conf
83
:dhcp_leases: etc/dhcpd.leases
84 3 Paul Kelly
85
h2. Puppet Certificate Authority section
86 1 Paul Kelly
87
# enable PuppetCA management
88
#:puppetca: true
89
90
# enable Puppet management
91
#:puppet: true
92
93
# Where our proxy log files are stored
94
# filename or STDOUT
95
:log_file: /tmp/proxy.log
96
# valid options are
97
# Logger::WARN, Logger::DEBUG, Logger::Error, Logger::Fatal, Logger:INFO, LOGGER::UNKNOWN
98
#:log_level: Logger::DEBUG
99
</pre>