deprec 1.9.3 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (188) hide show
  1. data/CHANGELOG +280 -0
  2. data/COPYING +19 -0
  3. data/LICENSE +339 -0
  4. data/README +152 -0
  5. data/THANKS +17 -0
  6. data/bin/depify +128 -0
  7. data/docs/EXAMPLE-installing_tracks.txt +41 -0
  8. data/docs/README.nagios +22 -0
  9. data/docs/README.rails +17 -0
  10. data/docs/config_gen_explained.txt +39 -0
  11. data/docs/{README.quickstart → deprec-1.x/deprec-1.x.quickstart} +4 -1
  12. data/docs/{building_edge_capistrano.txt → deprec-1.x/notes.txt} +6 -3
  13. data/docs/old/deprec_banner.gif +0 -0
  14. data/docs/windows_linux.txt +350 -0
  15. data/docs/xen/traffic_monitoring_with_vnstat.txt +95 -0
  16. data/docs/xen/xen-tools-notes.txt +31 -0
  17. data/docs/xen/xen_on_hardy.txt +39 -0
  18. data/lib/deprec.rb +8 -1
  19. data/lib/deprec/capistrano_extensions.rb +442 -0
  20. data/lib/deprec/recipes.rb +50 -233
  21. data/lib/deprec/recipes/aoe.rb +79 -0
  22. data/lib/deprec/recipes/app/mongrel.rb +213 -0
  23. data/lib/deprec/recipes/app/passenger.rb +197 -0
  24. data/lib/deprec/recipes/apt_mirror.rb +99 -0
  25. data/lib/deprec/recipes/ar_sendmail.rb +67 -0
  26. data/lib/deprec/recipes/canonical.rb +68 -0
  27. data/lib/deprec/recipes/db/mysql.rb +144 -0
  28. data/lib/deprec/recipes/db/postgresql.rb +104 -0
  29. data/lib/deprec/recipes/db/sqlite.rb +37 -0
  30. data/lib/deprec/recipes/ddclient.rb +51 -0
  31. data/lib/deprec/recipes/deprec.rb +199 -0
  32. data/lib/deprec/recipes/deprecated.rb +71 -0
  33. data/lib/deprec/recipes/example.rb +115 -0
  34. data/lib/deprec/recipes/git.rb +97 -0
  35. data/lib/deprec/recipes/gitosis.rb +48 -0
  36. data/lib/deprec/recipes/heartbeat.rb +138 -0
  37. data/lib/deprec/recipes/logrotate.rb +54 -0
  38. data/lib/deprec/recipes/lvm.rb +20 -0
  39. data/lib/deprec/recipes/memcache.rb +6 -2
  40. data/lib/deprec/recipes/monit.rb +143 -0
  41. data/lib/deprec/recipes/nagios.rb +305 -0
  42. data/lib/deprec/recipes/network.rb +93 -0
  43. data/lib/deprec/recipes/ntp.rb +103 -0
  44. data/lib/deprec/recipes/php.rb +58 -0
  45. data/lib/deprec/recipes/postfix.rb +115 -0
  46. data/lib/deprec/recipes/rails.rb +300 -55
  47. data/lib/deprec/recipes/ruby/mri.rb +55 -0
  48. data/lib/deprec/recipes/ruby/ree.rb +41 -0
  49. data/lib/deprec/recipes/sphinx.rb +86 -0
  50. data/lib/deprec/recipes/ssh.rb +85 -18
  51. data/lib/deprec/recipes/ssl.rb +55 -0
  52. data/lib/deprec/recipes/starling.rb +119 -0
  53. data/lib/deprec/recipes/svn.rb +163 -183
  54. data/lib/deprec/recipes/trac.rb +239 -62
  55. data/lib/deprec/recipes/ubuntu.rb +18 -100
  56. data/lib/deprec/recipes/users.rb +90 -0
  57. data/lib/deprec/recipes/utils.rb +58 -0
  58. data/lib/deprec/recipes/vnstat.rb +85 -0
  59. data/lib/deprec/recipes/web/apache.rb +119 -0
  60. data/lib/deprec/recipes/web/nginx.rb +172 -0
  61. data/lib/deprec/recipes/wordpress.rb +96 -0
  62. data/lib/deprec/recipes/wpmu.rb +103 -0
  63. data/lib/deprec/recipes/xen.rb +267 -0
  64. data/lib/deprec/recipes/xentools.rb +75 -0
  65. data/lib/deprec/templates/aoe/aoe-init +55 -0
  66. data/lib/deprec/templates/aoe/fence_aoemask +351 -0
  67. data/lib/deprec/templates/apache/namevirtualhosts.conf +5 -0
  68. data/lib/deprec/templates/apt/sources.list +18 -0
  69. data/lib/deprec/templates/apt_mirror/apt-mirror-cron +4 -0
  70. data/lib/deprec/templates/apt_mirror/mirror.list +33 -0
  71. data/lib/deprec/templates/ar_sendmail/logrotate.conf.erb +9 -0
  72. data/lib/deprec/templates/ar_sendmail/monit.conf.erb +5 -0
  73. data/lib/deprec/templates/ddclient/ddclient.conf.erb +11 -0
  74. data/lib/deprec/templates/ddclient/ddclient.erb +15 -0
  75. data/lib/deprec/templates/deprec/caprc.erb +14 -0
  76. data/lib/deprec/templates/heartbeat/authkeys.erb +2 -0
  77. data/lib/deprec/templates/heartbeat/ha.cf.erb +15 -0
  78. data/lib/deprec/templates/heartbeat/haresources.erb +1 -0
  79. data/lib/deprec/templates/logrotate/logrotate.conf.erb +32 -0
  80. data/lib/deprec/templates/mongrel/apache_vhost.erb +148 -0
  81. data/lib/deprec/templates/mongrel/logrotate.conf.erb +11 -0
  82. data/lib/deprec/{third_party/mongrel_cluster/resources/mongrel_cluster → templates/mongrel/mongrel_cluster-init-script} +19 -6
  83. data/lib/deprec/templates/mongrel/mongrel_cluster.yml.erb +10 -0
  84. data/lib/deprec/templates/mongrel/monit.conf.erb +17 -0
  85. data/lib/deprec/templates/mongrel/nginx_vhost.erb +41 -0
  86. data/lib/deprec/templates/monit/monit-init-script +104 -0
  87. data/lib/deprec/templates/monit/monitrc.erb +227 -0
  88. data/lib/deprec/templates/monit/nothing +0 -0
  89. data/lib/deprec/templates/mysql/create_databases.sql +20 -0
  90. data/lib/deprec/templates/mysql/database.yml.prod +6 -0
  91. data/lib/deprec/templates/mysql/database.yml.stage +6 -0
  92. data/lib/deprec/templates/mysql/my.cnf.erb +140 -0
  93. data/lib/deprec/templates/mysql/sphinx.conf.prod +542 -0
  94. data/lib/deprec/templates/mysql/sphinx.conf.stage +542 -0
  95. data/lib/deprec/templates/nagios/cgi.cfg.erb +321 -0
  96. data/lib/deprec/templates/nagios/check_linux_free_memory.pl +118 -0
  97. data/lib/deprec/templates/nagios/check_mongrel_cluster.rb +82 -0
  98. data/lib/deprec/templates/nagios/commands.cfg.erb +240 -0
  99. data/lib/deprec/templates/nagios/contacts.cfg.erb +57 -0
  100. data/lib/deprec/templates/nagios/hosts.cfg.erb +143 -0
  101. data/lib/deprec/templates/nagios/htpasswd.users +1 -0
  102. data/lib/deprec/templates/nagios/localhost.cfg.erb +157 -0
  103. data/lib/deprec/templates/nagios/nagios.cfg.erb +1274 -0
  104. data/lib/deprec/templates/nagios/nagios_apache_vhost.conf.erb +45 -0
  105. data/lib/deprec/templates/nagios/nrpe.cfg.erb +210 -0
  106. data/lib/deprec/templates/nagios/nrpe.xinetd.erb +16 -0
  107. data/lib/deprec/templates/nagios/resource.cfg.erb +34 -0
  108. data/lib/deprec/templates/nagios/services.cfg.erb +79 -0
  109. data/lib/deprec/templates/nagios/templates.cfg.erb +9 -0
  110. data/lib/deprec/templates/nagios/timeperiods.cfg.erb +94 -0
  111. data/lib/deprec/templates/network/hostname.erb +1 -0
  112. data/lib/deprec/templates/network/hosts.erb +2 -0
  113. data/lib/deprec/templates/network/interfaces.erb +18 -0
  114. data/lib/deprec/templates/network/resolv.conf.erb +6 -0
  115. data/lib/deprec/templates/nginx/logrotate.conf.erb +13 -0
  116. data/lib/deprec/templates/nginx/mime.types.erb +70 -0
  117. data/lib/deprec/templates/nginx/nginx-init-script +62 -0
  118. data/lib/deprec/templates/nginx/nginx.conf.erb +125 -0
  119. data/lib/deprec/templates/nginx/nginx.logrotate.d +12 -0
  120. data/lib/deprec/templates/nginx/nothing.conf +1 -0
  121. data/lib/deprec/templates/nginx/rails_nginx_vhost.conf.erb +41 -0
  122. data/lib/deprec/templates/ntp/ntp.conf.erb +42 -0
  123. data/lib/deprec/templates/passenger/apache_vhost.erb +21 -0
  124. data/lib/deprec/templates/passenger/passenger.conf.erb +21 -0
  125. data/lib/deprec/templates/passenger/passenger.load.erb +3 -0
  126. data/lib/deprec/templates/postfix/aliases.erb +3 -0
  127. data/lib/deprec/templates/postfix/dynamicmaps.cf.erb +8 -0
  128. data/lib/deprec/templates/{postfix_main.conf → postfix/main.cf.erb} +6 -8
  129. data/lib/deprec/templates/postfix/master.cf.erb +77 -0
  130. data/lib/deprec/templates/sphinx/monit.conf.erb +5 -0
  131. data/lib/deprec/templates/ssh/ssh_config.erb +50 -0
  132. data/lib/deprec/templates/ssh/sshd_config.erb +78 -0
  133. data/lib/deprec/templates/ssl/make-ssl-cert +138 -0
  134. data/lib/deprec/templates/ssl/ssl-cert-snakeoil.key +15 -0
  135. data/lib/deprec/templates/ssl/ssl-cert-snakeoil.pem +19 -0
  136. data/lib/deprec/templates/starling/monit.conf.erb +14 -0
  137. data/lib/deprec/templates/starling/starling-init-script.erb +71 -0
  138. data/lib/deprec/templates/subversion/svn.apache.vhost.erb +43 -0
  139. data/lib/deprec/templates/trac/apache_vhost.conf.erb +24 -0
  140. data/lib/deprec/templates/trac/nginx_vhost.conf.erb +26 -0
  141. data/lib/deprec/templates/trac/trac.ini.erb +169 -0
  142. data/lib/deprec/templates/trac/trac_deprec.png +0 -0
  143. data/lib/deprec/templates/trac/tracd-init.erb +43 -0
  144. data/lib/deprec/templates/trac/users.htdigest.erb +0 -0
  145. data/lib/deprec/templates/vnstat/config.php +57 -0
  146. data/lib/deprec/templates/wordpress/apache2_wordpress_vhost.conf.erb +31 -0
  147. data/lib/deprec/templates/wordpress/wp-config.php.erb +31 -0
  148. data/lib/deprec/templates/wpmu/apache_vhost.conf.erb +13 -0
  149. data/lib/deprec/templates/xen/network-bridge-wrapper +3 -0
  150. data/lib/deprec/templates/xen/xend-config.sxp.erb +195 -0
  151. data/lib/deprec/templates/xen/xend-init.erb +57 -0
  152. data/lib/deprec/templates/xen/xendomains.erb +137 -0
  153. data/lib/deprec/templates/xentools/15-disable-hwclock +40 -0
  154. data/lib/deprec/templates/xentools/40-setup-networking +145 -0
  155. data/lib/deprec/templates/xentools/xen-tools.conf.erb +276 -0
  156. data/lib/deprec/templates/xentools/xm.tmpl.erb +138 -0
  157. data/lib/deprec_cmd_completion.sh +26 -0
  158. data/lib/vmbuilder_plugins/all.rb +20 -0
  159. data/lib/vmbuilder_plugins/apt.rb +93 -0
  160. data/lib/vmbuilder_plugins/emerge.rb +76 -0
  161. data/lib/{deprec/third_party/vmbuilder/plugins → vmbuilder_plugins}/gem.rb +10 -17
  162. data/lib/{deprec/third_party/vmbuilder/plugins → vmbuilder_plugins}/std.rb +69 -19
  163. metadata +204 -55
  164. data/bin/deprec +0 -35
  165. data/docs/README.slicehost +0 -14
  166. data/docs/README.svn_trac +0 -19
  167. data/lib/deprec/capistrano_extensions/actor_extensions.rb +0 -89
  168. data/lib/deprec/capistrano_extensions/cli_extensions.rb +0 -38
  169. data/lib/deprec/capistrano_extensions/deprec_extensions.rb +0 -137
  170. data/lib/deprec/generators/deprec/USAGE +0 -11
  171. data/lib/deprec/generators/deprec/deprec_generator.rb +0 -24
  172. data/lib/deprec/generators/deprec/templates/deploy.rb +0 -90
  173. data/lib/deprec/generators/loader.rb +0 -20
  174. data/lib/deprec/recipes/apache.rb +0 -91
  175. data/lib/deprec/recipes/cache_svn.rb +0 -74
  176. data/lib/deprec/recipes/vmware.rb +0 -114
  177. data/lib/deprec/templates/trac.ini.erb +0 -106
  178. data/lib/deprec/third_party/THIRD_PARTY_README +0 -12
  179. data/lib/deprec/third_party/mongrel_cluster/LICENSE +0 -506
  180. data/lib/deprec/third_party/mongrel_cluster/recipes.rb +0 -96
  181. data/lib/deprec/third_party/railsmachine/LICENSE +0 -506
  182. data/lib/deprec/third_party/railsmachine/recipes/apache.rb +0 -92
  183. data/lib/deprec/third_party/railsmachine/recipes/mysql.rb +0 -73
  184. data/lib/deprec/third_party/railsmachine/recipes/templates/httpd-ssl.conf +0 -80
  185. data/lib/deprec/third_party/railsmachine/recipes/templates/httpd.conf +0 -57
  186. data/lib/deprec/third_party/vmbuilder/plugins.rb +0 -8
  187. data/lib/deprec/third_party/vmbuilder/plugins/apt.rb +0 -144
  188. data/resources/capistrano_include_dotfiles.patch +0 -17
@@ -0,0 +1,3 @@
1
+ # /etc/apache2/mods-available/passenger.conf
2
+ #
3
+ LoadModule passenger_module <%= passenger_install_dir %>/ext/apache2/mod_passenger.so
@@ -0,0 +1,3 @@
1
+ # See man 5 aliases for format
2
+ postmaster: root
3
+
@@ -0,0 +1,8 @@
1
+ # Postfix dynamic maps configuration file.
2
+ #
3
+ # The first match found is the one that is used. Wildcards are not supported
4
+ # as of postfix 2.0.2
5
+ #
6
+ #type location of .so file open function (mkmap func)
7
+ #==== ================================ ============= ============
8
+ tcp /usr/lib/postfix/dict_tcp.so dict_tcp_open
@@ -1,11 +1,10 @@
1
1
  # See /usr/share/postfix/main.cf.dist for a commented, more complete version
2
- # CONFIGURATION DEPLOYED BY CAPISTRANO/DEPREC
3
- # MODIFICATIONS WILL BE OVERWRITTEN IF YOU RUN THIS SCRIPT AGAIN
2
+
4
3
 
5
4
  # Debian specific: Specifying a file name will cause the first
6
5
  # line of that file to be used as the name. The Debian default
7
6
  # is /etc/mailname.
8
- #myorigin = /etc/mailname
7
+ myorigin = /etc/mailname
9
8
 
10
9
  smtpd_banner = $myhostname ESMTP $mail_name (Ubuntu)
11
10
  biff = no
@@ -26,13 +25,12 @@ smtp_tls_session_cache_database = btree:${queue_directory}/smtp_scache
26
25
  # See /usr/share/doc/postfix/TLS_README.gz in the postfix-doc package for
27
26
  # information on enabling SSL in the smtp client.
28
27
 
29
- myhostname = playful
28
+ # myhostname =
30
29
  alias_maps = hash:/etc/aliases
31
30
  alias_database = hash:/etc/aliases
32
- myorigin = /etc/mailname
33
- mydestination = <%= postfix_destination_domains * ', ' %>, localhost.localdomain, localhost
34
- relayhost =
31
+ mydestination = $myhostname localhost.$mydomain $myorigin
32
+ relayhost = <%= postfix_relayhost %>
35
33
  mynetworks = 127.0.0.0/8
36
34
  mailbox_size_limit = 0
37
35
  recipient_delimiter = +
38
- inet_interfaces = all
36
+ inet_interfaces = loopback-only
@@ -0,0 +1,77 @@
1
+ #
2
+ # Postfix master process configuration file. For details on the format
3
+ # of the file, see the master(5) manual page (command: "man 5 master").
4
+ #
5
+ # ==========================================================================
6
+ # service type private unpriv chroot wakeup maxproc command + args
7
+ # (yes) (yes) (yes) (never) (100)
8
+ # ==========================================================================
9
+ smtp inet n - - - - smtpd
10
+ #submission inet n - - - - smtpd
11
+ # -o smtpd_enforce_tls=yes
12
+ # -o smtpd_sasl_auth_enable=yes
13
+ # -o smtpd_client_restrictions=permit_sasl_authenticated,reject
14
+ #smtps inet n - - - - smtpd
15
+ # -o smtpd_tls_wrappermode=yes
16
+ # -o smtpd_sasl_auth_enable=yes
17
+ # -o smtpd_client_restrictions=permit_sasl_authenticated,reject
18
+ #628 inet n - - - - qmqpd
19
+ pickup fifo n - - 60 1 pickup
20
+ cleanup unix n - - - 0 cleanup
21
+ qmgr fifo n - n 300 1 qmgr
22
+ #qmgr fifo n - - 300 1 oqmgr
23
+ tlsmgr unix - - - 1000? 1 tlsmgr
24
+ rewrite unix - - - - - trivial-rewrite
25
+ bounce unix - - - - 0 bounce
26
+ defer unix - - - - 0 bounce
27
+ trace unix - - - - 0 bounce
28
+ verify unix - - - - 1 verify
29
+ flush unix n - - 1000? 0 flush
30
+ proxymap unix - - n - - proxymap
31
+ smtp unix - - - - - smtp
32
+ # When relaying mail as backup MX, disable fallback_relay to avoid MX loops
33
+ relay unix - - - - - smtp
34
+ -o smtp_fallback_relay=
35
+ # -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
36
+ showq unix n - - - - showq
37
+ error unix - - - - - error
38
+ retry unix - - - - - error
39
+ discard unix - - - - - discard
40
+ local unix - n n - - local
41
+ virtual unix - n n - - virtual
42
+ lmtp unix - - - - - lmtp
43
+ anvil unix - - - - 1 anvil
44
+ scache unix - - - - 1 scache
45
+ #
46
+ # ====================================================================
47
+ # Interfaces to non-Postfix software. Be sure to examine the manual
48
+ # pages of the non-Postfix software to find out what options it wants.
49
+ #
50
+ # Many of the following services use the Postfix pipe(8) delivery
51
+ # agent. See the pipe(8) man page for information about ${recipient}
52
+ # and other message envelope options.
53
+ # ====================================================================
54
+ #
55
+ # maildrop. See the Postfix MAILDROP_README file for details.
56
+ # Also specify in main.cf: maildrop_destination_recipient_limit=1
57
+ #
58
+ maildrop unix - n n - - pipe
59
+ flags=DRhu user=vmail argv=/usr/bin/maildrop -d ${recipient}
60
+ #
61
+ # See the Postfix UUCP_README file for configuration details.
62
+ #
63
+ uucp unix - n n - - pipe
64
+ flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
65
+ #
66
+ # Other external delivery methods.
67
+ #
68
+ ifmail unix - n n - - pipe
69
+ flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
70
+ bsmtp unix - n n - - pipe
71
+ flags=Fq. user=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
72
+ scalemail-backend unix - n n - 2 pipe
73
+ flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
74
+ mailman unix - n n - - pipe
75
+ flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
76
+ ${nexthop} ${user}
77
+
@@ -0,0 +1,5 @@
1
+ check process searchd with pidfile /opt/local/var/db/sphinx/log/searchd.pid
2
+ start program = "/usr/local/bin/searchd --config <%= deploy_to %>/current/config/ultrasphinx/production.conf"
3
+ stop program = "/usr/local/bin/searchd --stop --config <%= deploy_to %>/current/config/ultrasphinx/production.conf"
4
+
5
+ if 3 restarts within 5 cycles then timeout
@@ -0,0 +1,50 @@
1
+
2
+ # This is the ssh client system-wide configuration file. See
3
+ # ssh_config(5) for more information. This file provides defaults for
4
+ # users, and the values can be changed in per-user configuration files
5
+ # or on the command line.
6
+
7
+ # Configuration data is parsed as follows:
8
+ # 1. command line options
9
+ # 2. user-specific file
10
+ # 3. system-wide file
11
+ # Any configuration value is only changed the first time it is set.
12
+ # Thus, host-specific definitions should be at the beginning of the
13
+ # configuration file, and defaults at the end.
14
+
15
+ # Site-wide defaults for some commonly used options. For a comprehensive
16
+ # list of available options, their meanings and defaults, please see the
17
+ # ssh_config(5) man page.
18
+
19
+ Host *
20
+ ForwardAgent yes
21
+ # ForwardX11 no
22
+ # ForwardX11Trusted yes
23
+ # RhostsRSAAuthentication no
24
+ # RSAAuthentication yes
25
+ # PasswordAuthentication yes
26
+ # HostbasedAuthentication no
27
+ # GSSAPIAuthentication no
28
+ # GSSAPIDelegateCredentials no
29
+ # GSSAPIKeyExchange no
30
+ # GSSAPITrustDNS no
31
+ # BatchMode no
32
+ # CheckHostIP yes
33
+ # AddressFamily any
34
+ # ConnectTimeout 0
35
+ # StrictHostKeyChecking ask
36
+ # IdentityFile ~/.ssh/identity
37
+ # IdentityFile ~/.ssh/id_rsa
38
+ # IdentityFile ~/.ssh/id_dsa
39
+ # Port 22
40
+ # Protocol 2,1
41
+ # Cipher 3des
42
+ # Ciphers aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc
43
+ # EscapeChar ~
44
+ # Tunnel no
45
+ # TunnelDevice any:any
46
+ # PermitLocalCommand no
47
+ SendEnv LANG LC_*
48
+ HashKnownHosts yes
49
+ GSSAPIAuthentication yes
50
+ GSSAPIDelegateCredentials no
@@ -0,0 +1,78 @@
1
+ # Package generated configuration file
2
+ # See the sshd(8) manpage for details
3
+
4
+ # What ports, IPs and protocols we listen for
5
+ Port 22
6
+ # Use these options to restrict which interfaces/protocols sshd will bind to
7
+ #ListenAddress ::
8
+ #ListenAddress 0.0.0.0
9
+ Protocol 2
10
+ # HostKeys for protocol version 2
11
+ HostKey /etc/ssh/ssh_host_rsa_key
12
+ HostKey /etc/ssh/ssh_host_dsa_key
13
+ #Privilege Separation is turned on for security
14
+ UsePrivilegeSeparation yes
15
+
16
+ # Lifetime and size of ephemeral version 1 server key
17
+ KeyRegenerationInterval 3600
18
+ ServerKeyBits 768
19
+
20
+ # Logging
21
+ SyslogFacility AUTH
22
+ LogLevel INFO
23
+
24
+ # Authentication:
25
+ LoginGraceTime 120
26
+ PermitRootLogin no
27
+ StrictModes yes
28
+
29
+ RSAAuthentication yes
30
+ PubkeyAuthentication yes
31
+ #AuthorizedKeysFile %h/.ssh/authorized_keys
32
+
33
+ # Don't read the user's ~/.rhosts and ~/.shosts files
34
+ IgnoreRhosts yes
35
+ # For this to work you will also need host keys in /etc/ssh_known_hosts
36
+ RhostsRSAAuthentication no
37
+ # similar for protocol version 2
38
+ HostbasedAuthentication no
39
+ # Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication
40
+ #IgnoreUserKnownHosts yes
41
+
42
+ # To enable empty passwords, change to yes (NOT RECOMMENDED)
43
+ PermitEmptyPasswords no
44
+
45
+ # Change to yes to enable challenge-response passwords (beware issues with
46
+ # some PAM modules and threads)
47
+ ChallengeResponseAuthentication no
48
+
49
+ # Change to no to disable tunnelled clear text passwords
50
+ PasswordAuthentication no
51
+
52
+ # Kerberos options
53
+ #KerberosAuthentication no
54
+ #KerberosGetAFSToken no
55
+ #KerberosOrLocalPasswd yes
56
+ #KerberosTicketCleanup yes
57
+
58
+ # GSSAPI options
59
+ #GSSAPIAuthentication no
60
+ #GSSAPICleanupCredentials yes
61
+
62
+ X11Forwarding yes
63
+ X11DisplayOffset 10
64
+ PrintMotd no
65
+ PrintLastLog yes
66
+ TCPKeepAlive yes
67
+ #UseLogin no
68
+
69
+ #MaxStartups 10:30:60
70
+ #Banner /etc/issue.net
71
+
72
+ # Allow client to pass locale environment variables
73
+ AcceptEnv LANG LC_*
74
+
75
+ Subsystem sftp /usr/lib/openssh/sftp-server
76
+
77
+ UsePAM no
78
+ UseDNS no
@@ -0,0 +1,138 @@
1
+ #!/bin/bash -e
2
+ # This is a mockup of a script to produce a snakeoil cert
3
+ # The aim is to have a debconfisable ssl-certificate script
4
+
5
+ . /usr/share/debconf/confmodule
6
+ db_version 2.0
7
+ db_capb backup
8
+
9
+ ask_via_debconf() {
10
+ db_settitle make-ssl-cert/title
11
+
12
+ templates="countryname statename localityname organisationname ouname hostname email"
13
+
14
+ for i in $templates; do
15
+ RET=""
16
+ while [ "x$RET" = "x" ]; do
17
+ db_fset make-ssl-cert/$i seen false
18
+ db_input high make-ssl-cert/$i || true
19
+ db_go
20
+ db_get make-ssl-cert/$i
21
+ done
22
+ done
23
+
24
+ db_get make-ssl-cert/countryname
25
+ CountryName="$RET"
26
+ db_fset make-ssl-cert/countryname seen false
27
+
28
+ db_get make-ssl-cert/statename
29
+ StateName="$RET"
30
+ db_fset make-ssl-cert/statename seen false
31
+
32
+ db_get make-ssl-cert/localityname
33
+ LocalityName="$RET"
34
+ db_fset make-ssl-cert/localityname seen false
35
+
36
+ db_get make-ssl-cert/organisationname
37
+ OrganisationName="$RET"
38
+ db_fset make-ssl-cert/organisationname seen false
39
+
40
+ db_get make-ssl-cert/ouname
41
+ OUName="$RET"
42
+ db_fset make-ssl-cert/ouname seen false
43
+
44
+ db_get make-ssl-cert/hostname
45
+ HostName="$RET"
46
+ db_fset make-ssl-cert/hostname seen false
47
+
48
+ db_get make-ssl-cert/email
49
+ Email="$RET"
50
+ db_fset make-ssl-cert/email seen false
51
+ }
52
+
53
+ make_snakeoil() {
54
+ CountryName="XX"
55
+ StateName="There is no such thing outside US"
56
+ LocalityName="Everywhere"
57
+ OrganisationName="OCOSA"
58
+ OUName="Office for Complication of Otherwise Simple Affairs"
59
+ HostName="$(hostname -f || hostname)"
60
+ Email="root@$HostName"
61
+ }
62
+
63
+ create_temporary_cnf() {
64
+ sed -e s#@CountryName@#"$CountryName"# \
65
+ -e s#@StateName@#"$StateName"# \
66
+ -e s#@LocalityName@#"$LocalityName"# \
67
+ -e s#@OrganisationName@#"$OrganisationName"# \
68
+ -e s#@OUName@#"$OUName"# \
69
+ -e s#@HostName@#"$HostName"# \
70
+ -e s#@Email@#"$Email"# \
71
+ $template > $TMPFILE
72
+ }
73
+
74
+ # Takes two arguments, the base layout and the output cert.
75
+
76
+ if [ $# -lt 2 ] && [ "$1" != "generate-default-snakeoil" ]; then
77
+ printf "Usage: $0 template output [--force-overwrite]\n";
78
+ printf "Usage: $0 generate-default-snakeoil [--force-overwrite]\n";
79
+ exit 1;
80
+ fi
81
+
82
+ if [ "$1" != "generate-default-snakeoil" ]; then
83
+ template="$1"
84
+ output="$2"
85
+ # be anal in manual mode.
86
+ if [ ! -f $template ]; then
87
+ printf "Could not open template file: $template!\n";
88
+ exit 1;
89
+ fi
90
+ if [ -f $output ] && [ "$3" != "--force-overwrite" ]; then
91
+ printf "$output file already exists!\n";
92
+ exit 1;
93
+ fi
94
+ ask_via_debconf
95
+ else
96
+ template="/usr/share/ssl-cert/ssleay.cnf"
97
+ if [ -f "/etc/ssl/certs/ssl-cert-snakeoil.pem" ] && [ -f "/etc/ssl/private/ssl-cert-snakeoil.key" ]; then
98
+ if [ "$2" != "--force-overwrite" ]; then
99
+ exit 0
100
+ fi
101
+ fi
102
+ make_snakeoil
103
+ fi
104
+
105
+ # # should be a less common char
106
+ # problem is that openssl virtually accepts everything and we need to
107
+ # sacrifice one char.
108
+
109
+ TMPFILE="$(mktemp)" || exit 1
110
+
111
+ create_temporary_cnf
112
+
113
+ # create the certiface.
114
+
115
+ export RANDFILE=/dev/random
116
+
117
+ if [ "$1" != "generate-default-snakeoil" ]; then
118
+ # openssl req -config $TMPFILE -new -x509 -nodes -out $output -keyout $output > /dev/null 2>&1
119
+ openssl req -config $TMPFILE -new -x509 -days 365 -nodes -out $output -keyout $output > /dev/null 2>&1
120
+ chmod 600 $output
121
+ # hash symlink
122
+ cd $(dirname $output)
123
+ ln -sf $(basename $output) $(openssl x509 -hash -noout -in $output)
124
+ else
125
+ # openssl req -config $TMPFILE -new -x509 -nodes \
126
+ openssl req -config $TMPFILE -new -x509 -days 365 nodes \
127
+ -out /etc/ssl/certs/ssl-cert-snakeoil.pem \
128
+ -keyout /etc/ssl/private/ssl-cert-snakeoil.key > /dev/null 2>&1
129
+ chmod 644 /etc/ssl/certs/ssl-cert-snakeoil.pem
130
+ chmod 640 /etc/ssl/private/ssl-cert-snakeoil.key
131
+ chown root:ssl-cert /etc/ssl/private/ssl-cert-snakeoil.key
132
+ # hash symlink
133
+ cd /etc/ssl/certs/
134
+ ln -sf ssl-cert-snakeoil.pem $(openssl x509 -hash -noout -in ssl-cert-snakeoil.pem)
135
+ fi
136
+
137
+ # cleanup
138
+ rm -f $TMPFILE
@@ -0,0 +1,15 @@
1
+ -----BEGIN RSA PRIVATE KEY-----
2
+ MIICXwIBAAKBgQDAq435f/QmKkc/Z3UDPxcdZM0XNNFE97DGSFJIjuKdJaLp+HDr
3
+ JroV1TS8YUpZpJ7FhuasEg9G+HcwZcncChWgiwXnwMxG/6zs4U+7SzaehpB0lfCp
4
+ 8jYHNwhaUDr5H4YSfznltGQRlELlSHNLyDgQzRwMjWluTpxJ2MXMcKXCvQIDAQAB
5
+ AoGBAI7kbQZW1F8dyfuHIixHNUByivykCnSI8s0LxCLV/dGooRu/SxfLgAVDO7pe
6
+ uYKkabB7bUa+mh/7lIILa9tKi2Bbqnr+DZyCmKqQn3YBsc6yS19zMDhkt+UfhQc9
7
+ 3/ssdASGCQg3cW7Y3x103S+j3zB6dmO44vDOevDymVg8z//tAkEA9kmlwavZ5sKq
8
+ fLYCz7edp7hCcOL1QO/iwKMlnyGLOhg5sgwHu8o/+5OHlWLGAln0Z6Q6XEdWw9pD
9
+ LDxPntmAawJBAMhEnvHjPLAN8oSnrLsklBC6N77t3TNt5e+1SSeGhfgZcw3m2ftE
10
+ jPNgdcu9+JTgGD9yV6u1FWQReG/saYlRc3cCQQCUP8an6qLydbEb+o98q0EaCR7t
11
+ RqBsYzlxzYLC4/Ujlht8oiMxlc+nxqkxcdBQ8AbfMAr1Kvf+Um5mvTMMIk5bAkEA
12
+ uOHQspILtqRJnXmGFwZ/wqmHSTYinZX5TkBYFqs0BoTIGK9j0XnJfe0xEjSAxj/T
13
+ Ys9WbGgyJT2TqA/ipiiRpQJBAMYFGlBV6/zNaX0u1vm2E8/96jl7FAxA06F2OiBn
14
+ lWtdmT+adpNo04XyX61N5+ie0A2SOgKpZWomm0wA1SGi7TQ=
15
+ -----END RSA PRIVATE KEY-----
@@ -0,0 +1,19 @@
1
+ -----BEGIN CERTIFICATE-----
2
+ MIIDCzCCAnQCCQDHermh7psBnzANBgkqhkiG9w0BAQUFADCByTELMAkGA1UEBhMC
3
+ WFgxKjAoBgNVBAgTIVRoZXJlIGlzIG5vIHN1Y2ggdGhpbmcgb3V0c2lkZSBVUzET
4
+ MBEGA1UEBxMKRXZlcnl3aGVyZTEOMAwGA1UEChMFT0NPU0ExPDA6BgNVBAsTM09m
5
+ ZmljZSBmb3IgQ29tcGxpY2F0aW9uIG9mIE90aGVyd2lzZSBTaW1wbGUgQWZmYWly
6
+ czEPMA0GA1UEAxMGY2FsdmluMRowGAYJKoZIhvcNAQkBFgtyb290QGNhbHZpbjAe
7
+ Fw0wOTAyMDMwNTExNDdaFw0wOTAzMDUwNTExNDdaMIHJMQswCQYDVQQGEwJYWDEq
8
+ MCgGA1UECBMhVGhlcmUgaXMgbm8gc3VjaCB0aGluZyBvdXRzaWRlIFVTMRMwEQYD
9
+ VQQHEwpFdmVyeXdoZXJlMQ4wDAYDVQQKEwVPQ09TQTE8MDoGA1UECxMzT2ZmaWNl
10
+ IGZvciBDb21wbGljYXRpb24gb2YgT3RoZXJ3aXNlIFNpbXBsZSBBZmZhaXJzMQ8w
11
+ DQYDVQQDEwZjYWx2aW4xGjAYBgkqhkiG9w0BCQEWC3Jvb3RAY2FsdmluMIGfMA0G
12
+ CSqGSIb3DQEBAQUAA4GNADCBiQKBgQDAq435f/QmKkc/Z3UDPxcdZM0XNNFE97DG
13
+ SFJIjuKdJaLp+HDrJroV1TS8YUpZpJ7FhuasEg9G+HcwZcncChWgiwXnwMxG/6zs
14
+ 4U+7SzaehpB0lfCp8jYHNwhaUDr5H4YSfznltGQRlELlSHNLyDgQzRwMjWluTpxJ
15
+ 2MXMcKXCvQIDAQABMA0GCSqGSIb3DQEBBQUAA4GBADZ2Uu123BHOGow9C5lnxP3K
16
+ nkVpfqOTvVztyOtTVE+GZrCiFj4RyuJpL9JmpXTo+Dl8CrTguxbhnSPFQCYdmIbj
17
+ zYGygWx4a0qfKdVe4GMREWzsBVCwH0mPEV6i0nxy4KMffNcTKwhSoh3LZ0rWhoYr
18
+ gb3pgta67aRdAaIS556W
19
+ -----END CERTIFICATE-----
@@ -0,0 +1,14 @@
1
+ check process starling-<%= starling_port %> with pidfile <%= starling_run_dir %>/starling.pid
2
+ group starling
3
+ start program = "start-stop-daemon -c <%= starling_user %>:<%= starling_group %> --start --quiet --pidfile <%= starling_run_dir %>/starling.pid --exec /usr/local/bin/starling -- <%= starling_runtime_options %>"
4
+ stop program = "start-stop-daemon -c <%= starling_user %>:<%= starling_group %> --stop --quiet --pidfile <%= starling_run_dir %>/starling.pid --exec /usr/local/bin/starling -- <%= starling_runtime_options %>"
5
+
6
+ if failed host 127.0.0.1 port <%= starling_port %>
7
+ with timeout 10 seconds
8
+ then alert
9
+
10
+ if totalmem > 100 Mb then restart
11
+ if cpu > 60% for 2 cycles then alert
12
+ if cpu > 80% for 5 cycles then restart
13
+ if loadavg(5min) > 10 for 8 cycles then restart
14
+ if 3 restarts within 5 cycles then timeout