summaryrefslogtreecommitdiff
path: root/apache/apache-ssl.cf
blob: 37a2a4b0f4b480996212567848ad15ebaa7b7880 (plain)
  1. #! /usr/bin/cfengine -qf
  2. control:
  3. OutputPrefix = ("${cf_prefix}")
  4. actionsequence = ( editfiles )
  5. AddInstallable = ( apache_ssl_reload )
  6. editfiles:
  7. any::
  8. { /etc/apache-ssl/httpd.conf
  9. DefineClasses "apache_ssl_reload"
  10. #
  11. # ServerAdmin webmaster@$(domain)
  12. #
  13. # (Try to add it _before_ virtual hosts)
  14. #
  15. WarnIfNoLineMatching "^[[:blank:]]*ServerAdmin[[:blank:]].*"
  16. BeginGroupIfNoLineMatching "^[[:blank:]]*ServerAdmin[[:blank:]].*"
  17. BeginGroupIfNoLineMatching "^(### Section 3: Virtual Hosts|#?NameVirtualHost.*|#?VirtualHost.*)$"
  18. Append "ServerAdmin webmaster@$(domain)"
  19. EndGroup
  20. BeginGroupIfNoLineMatching "^[[:blank:]]*ServerAdmin[[:blank:]].*"
  21. LocateLineMatching "^(### Section 3: Virtual Hosts|#?NameVirtualHost.*|#?VirtualHost.*)$"
  22. InsertLine "ServerAdmin webmaster@$(domain)"
  23. EndGroup
  24. EndGroup
  25. LocateLineMatching "^[[:blank:]]*ServerAdmin[[:blank:]].*"
  26. BeginGroupIfNoLineMatching "^[[:blank:]]*ServerAdmin[[:blank:]]*webmaster@$(domain)[[:blank:]]*$"
  27. ReplaceLineWith "ServerAdmin webmaster@$(domain)"
  28. EndGroup
  29. #
  30. # Make space for cfengine hacks
  31. #
  32. # (Try to add it _before_ virtual hosts)
  33. #
  34. ResetSearch "1"
  35. BeginGroupIfNoSuchLine "# BEGIN CFENGINE"
  36. BeginGroupIfNoLineMatching "^(### Section 3: Virtual Hosts|#?NameVirtualHost.*|#?VirtualHost.*)$"
  37. Append ""
  38. Append "# BEGIN CFENGINE"
  39. Append "# END CFENGINE"
  40. EndGroup
  41. BeginGroupIfNoLineMatching "^# BEGIN CFENGINE$"
  42. LocateLineMatching "^(### Section 3: Virtual Hosts|#?NameVirtualHost.*|#?VirtualHost.*)$"
  43. IncrementPointer "-1"
  44. InsertLine ""
  45. InsertLine "# BEGIN CFENGINE"
  46. InsertLine "# END CFENGINE"
  47. InsertLine ""
  48. EndGroup
  49. EndGroup
  50. #
  51. # LoadModule php3_module /usr/lib/apache/1.3/libphp3.so
  52. #
  53. # <IfModule libphp3.c>
  54. # php3_display_errors off
  55. # php3_log_errors on
  56. # AddType application/x-httpd-php3 .php3
  57. # AddType application/x-httpd-php3-source .phps
  58. # </IfModule>
  59. #
  60. BeginGroupIfFileExists "/usr/lib/apache/1.3/libphp3.so"
  61. ResetSearch "1"
  62. # bug! UnCommentLinesMatching "^#[[:blank:]]*LoadModule[[:blank:]]+php3_module[[:blank:]].*"
  63. LocateLineMatching "^#[[:blank:]]*LoadModule[[:blank:]]+php3_module[[:blank:]]+/usr/lib/apache/1.3/libphp3.so$"
  64. ReplaceLineWith "LoadModule php3_module /usr/lib/apache/1.3/libphp3.so"
  65. CatchAbort
  66. AbortAtLineMatching "^# END CFENGINE$"
  67. LocateLineMatching "^# BEGIN CFENGINE$"
  68. BeginGroupIfNoSuchLine "<IfModule libphp3.c>"
  69. InsertLine "<IfModule libphp3.c>"
  70. InsertLine "</IfModule>"
  71. EndGroup
  72. ResetSearch "1"
  73. LocateLineMatching "^# BEGIN CFENGINE$"
  74. LocateLineMatching "^<IfModule libphp3.c>$"
  75. BeginGroupIfNoLineMatching "[[:blank:]]*php3_display_errors off"
  76. InsertLine " php3_display_errors off"
  77. EndGroup
  78. BeginGroupIfNoLineMatching "[[:blank:]]*php3_log_errors on"
  79. InsertLine " php3_log_errors on"
  80. EndGroup
  81. BeginGroupIfNoLineMatching "[[:blank:]]*AddType application/x-httpd-php3 .php3"
  82. InsertLine " AddType application/x-httpd-php3 .php3"
  83. EndGroup
  84. BeginGroupIfNoLineMatching "[[:blank:]]*AddType application/x-httpd-source .phps"
  85. InsertLine " AddType application/x-httpd-source .phps"
  86. EndGroup
  87. UnsetAbort "^# END CFENGINE$"
  88. EndGroup
  89. #
  90. # LoadModule php4_module /usr/lib/apache/1.3/libphp4.so
  91. #
  92. # <IfModule libphp4.c>
  93. # php_flag display_errors off
  94. # php_flag log_errors on
  95. # AddType application/x-httpd-php .phtml .php .inc .php3
  96. # AddType application/x-httpd-php-source .phps
  97. # </IfModule>
  98. #
  99. BeginGroupIfFileExists "/usr/lib/apache/1.3/libphp4.so"
  100. ResetSearch "1"
  101. # UnCommentLinesMatching "^\#[[:blank:]]*LoadModule[[:blank:]]+php4\_module[[:blank:]].*"
  102. LocateLineMatching "^#[[:blank:]]*LoadModule[[:blank:]]+php4\_module[[:blank:]]+/usr/lib/apache/1.3/libphp4.so$"
  103. ReplaceLineWith "LoadModule php4_module /usr/lib/apache/1.3/libphp4.so"
  104. CatchAbort
  105. AbortAtLineMatching "^# END CFENGINE$"
  106. LocateLineMatching "^# BEGIN CFENGINE$"
  107. BeginGroupIfNoSuchLine "<IfModule libphp4.c>"
  108. InsertLine "<IfModule libphp4.c>"
  109. InsertLine "</IfModule>"
  110. EndGroup
  111. ResetSearch "1"
  112. LocateLineMatching "^# BEGIN CFENGINE$"
  113. LocateLineMatching "^<IfModule libphp4.c>$"
  114. BeginGroupIfNoLineMatching "^.*php_flag[[:blank:]]*display_errors[[:blank:]]*off$"
  115. InsertLine " php_flag display_errors off"
  116. EndGroup
  117. BeginGroupIfNoLineMatching ".*php_flag log_errors on"
  118. InsertLine " php_flag log_errors on"
  119. EndGroup
  120. BeginGroupIfNoLineMatching "[[:blank:]]*AddType application/x-httpd-php .phtml .php .inc .php3"
  121. InsertLine " AddType application/x-httpd-php .phtml .php .inc .php3"
  122. EndGroup
  123. BeginGroupIfNoLineMatching "[[:blank:]]*AddType application/x-httpd-source .phps"
  124. InsertLine " AddType application/x-httpd-source .phps"
  125. EndGroup
  126. UnsetAbort "^# END CFENGINE$"
  127. EndGroup
  128. #
  129. # LoadModule gzip_module /usr/lib/apache/1.3/mod_gzip.so
  130. #
  131. # <IfModule mod_gzip.c>
  132. # mod_gzip_dechunk yes
  133. # mod_gzip_keep_workfiles No
  134. # mod_gzip_temp_dir /tmp
  135. # mod_gzip_minimum_file_size 1002
  136. # mod_gzip_maximum_file_size 0
  137. # mod_gzip_maximum_inmem_size 1000000
  138. # mod_gzip_item_include file "\.htm$"
  139. # mod_gzip_item_include file "\.html$"
  140. # mod_gzip_item_include mime "text/.*"
  141. # mod_gzip_item_include file "\.php$"
  142. # mod_gzip_item_include mime "jserv-servlet"
  143. # mod_gzip_item_include handler "jserv-servlet"
  144. # mod_gzip_item_include mime "application/x-httpd-php.*"
  145. # mod_gzip_item_include mime "httpd/unix-directory"
  146. # mod_gzip_item_exclude file "\.css$"
  147. # mod_gzip_item_exclude file "\.js$"
  148. # mod_gzip_item_exclude file "\.wml$"
  149. # </IfModule>
  150. #
  151. BeginGroupIfFileExists "/usr/lib/apache/1.3/mod_gzip.so"
  152. ResetSearch "1"
  153. # SetCommentStart "#"
  154. # SetCommentEnd ""
  155. # UnCommentLinesMatching "^\#[[:blank:]]*LoadModule[[:blank:]]+gzip_module[[:blank:]].*"
  156. LocateLineMatching "#[[:blank:]]*LoadModule[[:blank:]]+gzip_module[[:blank:]]+/usr/lib/apache/1.3/mod_gzip.so"
  157. # UnCommentNLines "1"
  158. ReplaceLineWith "LoadModule gzip_module /usr/lib/apache/1.3/mod_gzip.so"
  159. CatchAbort
  160. AbortAtLineMatching "^# END CFENGINE$"
  161. LocateLineMatching "^# BEGIN CFENGINE$"
  162. BeginGroupIfNoSuchLine "<IfModule mod_gzip.c>"
  163. InsertLine "<IfModule mod_gzip.c>"
  164. InsertLine "</IfModule>"
  165. EndGroup
  166. ResetSearch "1"
  167. LocateLineMatching "^# BEGIN CFENGINE$"
  168. LocateLineMatching "^<IfModule mod_gzip.c>$"
  169. BeginGroupIfNoLineMatching ' mod_gzip_on yes'
  170. InsertLine ' mod_gzip_on yes'
  171. EndGroup
  172. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_dechunk yes'
  173. InsertLine ' mod_gzip_dechunk yes'
  174. EndGroup
  175. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_keep_workfiles No'
  176. InsertLine ' mod_gzip_keep_workfiles No'
  177. EndGroup
  178. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_temp_dir /tmp'
  179. InsertLine ' mod_gzip_temp_dir /tmp'
  180. EndGroup
  181. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_minimum_file_size 1002'
  182. InsertLine ' mod_gzip_minimum_file_size 1002'
  183. EndGroup
  184. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_maximum_file_size 0'
  185. InsertLine ' mod_gzip_maximum_file_size 0'
  186. EndGroup
  187. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_maximum_inmem_size 1000000'
  188. InsertLine ' mod_gzip_maximum_inmem_size 1000000'
  189. EndGroup
  190. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_include file "\\\.htm\$"'
  191. InsertLine ' mod_gzip_item_include file "\.htm$"'
  192. EndGroup
  193. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_include file "\\\.html\$"'
  194. InsertLine ' mod_gzip_item_include file "\.html$"'
  195. EndGroup
  196. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_include mime "text/\.\*"'
  197. InsertLine ' mod_gzip_item_include mime "text/.*"'
  198. EndGroup
  199. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_include file "\\\.php\$"'
  200. InsertLine ' mod_gzip_item_include file "\.php$"'
  201. EndGroup
  202. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_include mime "jserv-servlet"'
  203. InsertLine ' mod_gzip_item_include mime "jserv-servlet"'
  204. EndGroup
  205. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_include handler "jserv-servlet"'
  206. InsertLine ' mod_gzip_item_include handler "jserv-servlet"'
  207. EndGroup
  208. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_include mime "application/x-httpd-php\.\*"'
  209. InsertLine ' mod_gzip_item_include mime "application/x-httpd-php.*"'
  210. EndGroup
  211. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_include mime "httpd/unix-directory"'
  212. InsertLine ' mod_gzip_item_include mime "httpd/unix-directory"'
  213. EndGroup
  214. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_exclude file "\\\.css\$"'
  215. InsertLine ' mod_gzip_item_exclude file "\.css$"'
  216. EndGroup
  217. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_exclude file "\\\.js\$"'
  218. InsertLine ' mod_gzip_item_exclude file "\.js$"'
  219. EndGroup
  220. BeginGroupIfNoLineMatching '[[:blank:]]*mod_gzip_item_exclude file "\\\.wml\$"'
  221. InsertLine ' mod_gzip_item_exclude file "\.wml$"'
  222. EndGroup
  223. UnsetAbort "^# END CFENGINE$"
  224. EndGroup
  225. #
  226. # LoadModule index_rss_module /usr/lib/apache/1.3/mod_index_rss.so
  227. #
  228. # <IfModule mod_index_rss.c>
  229. # IndexRSSEngine On
  230. # </IfModule>
  231. #
  232. BeginGroupIfFileExists "/usr/lib/apache/1.3/mod_index_rss.so"
  233. ResetSearch "1"
  234. # bug! UnCommentLinesMatching "^#[[:blank:]]*LoadModule[[:blank:]]+index_rss_module[[:blank:]].*"
  235. LocateLineMatching "^#[[:blank:]]*LoadModule[[:blank:]]+index_rss_module[[:blank:]]+/usr/lib/apache/1.3/mod_index_rss.so$"
  236. ReplaceLineWith "LoadModule index_rss_module /usr/lib/apache/1.3/mod_index_rss.so"
  237. CatchAbort
  238. AbortAtLineMatching "^# END CFENGINE$"
  239. LocateLineMatching "^# BEGIN CFENGINE$"
  240. BeginGroupIfNoSuchLine "<IfModule mod_index_rss.c>"
  241. InsertLine "<IfModule mod_index_rss.c>"
  242. InsertLine "</IfModule>"
  243. EndGroup
  244. ResetSearch "1"
  245. LocateLineMatching "^# BEGIN CFENGINE$"
  246. LocateLineMatching "^<IfModule mod_index_rss.c>$"
  247. BeginGroupIfNoLineMatching "[[:blank:]]+IndexRSSEngine On"
  248. InsertLine " IndexRSSEngine On"
  249. EndGroup
  250. UnsetAbort "^# END CFENGINE$"
  251. EndGroup
  252. #
  253. # LoadModule pam_auth_module /usr/lib/apache/1.3/mod_auth_pam.so
  254. #
  255. # <IfModule mod_auth_pam.c>
  256. # <Location />
  257. # AuthPAM_Enabled Off
  258. # </Location>
  259. # </IfModule>
  260. #
  261. BeginGroupIfFileExists "/usr/lib/apache/1.3/mod_auth_pam.so"
  262. ResetSearch "1"
  263. # bug! UnCommentLinesMatching "^#[[:blank:]]*LoadModule[[:blank:]]+pam_auth_module[[:blank:]].*"
  264. LocateLineMatching "^#[[:blank:]]*LoadModule[[:blank:]]+pam_auth_module[[:blank:]]+/usr/lib/apache/1.3/mod_auth_pam.so$"
  265. ReplaceLineWith "LoadModule pam_auth_module /usr/lib/apache/1.3/mod_auth_pam.so"
  266. CatchAbort
  267. AbortAtLineMatching "^# END CFENGINE$"
  268. LocateLineMatching "^# BEGIN CFENGINE$"
  269. BeginGroupIfNoSuchLine "<IfModule mod_auth_pam.c>"
  270. InsertLine "<IfModule mod_auth_pam.c>"
  271. InsertLine " <Location />"
  272. InsertLine " </Location>"
  273. InsertLine "</IfModule>"
  274. EndGroup
  275. ResetSearch "1"
  276. LocateLineMatching "^# BEGIN CFENGINE$"
  277. LocateLineMatching "^<IfModule mod_auth_pam.c>$"
  278. LocateLineMatching "[[:blank:]]+<Location />"
  279. BeginGroupIfNoLineMatching "[[:blank:]]+AuthPAM_Enabled Off"
  280. InsertLine " AuthPAM_Enabled Off"
  281. EndGroup
  282. UnsetAbort "^# END CFENGINE$"
  283. EndGroup
  284. #
  285. # LoadModule authshadow_module /usr/lib/apache/1.3/mod_auth_shadow.so
  286. #
  287. # <IfModule mod_auth_shadow.c>
  288. # <Location />
  289. # AuthShadow Off
  290. # </Location>
  291. # </IfModule>
  292. #
  293. BeginGroupIfFileExists "/usr/lib/apache/1.3/mod_auth_shadow.so"
  294. ResetSearch "1"
  295. # bug! UnCommentLinesMatching "^#[[:blank:]]*LoadModule[[:blank:]]+authshadow_module[[:blank:]].*"
  296. LocateLineMatching "^#[[:blank:]]*LoadModule[[:blank:]]+authshadow_module[[:blank:]]+/usr/lib/apache/1.3/mod_auth_shadow.so$"
  297. ReplaceLineWith "LoadModule authshadow_module /usr/lib/apache/1.3/mod_auth_shadow.so"
  298. CatchAbort
  299. AbortAtLineMatching "^# END CFENGINE$"
  300. LocateLineMatching "^# BEGIN CFENGINE$"
  301. BeginGroupIfNoSuchLine "<IfModule mod_auth_shadow.c>"
  302. InsertLine "<IfModule mod_auth_shadow.c>"
  303. InsertLine " <Location />"
  304. InsertLine " </Location>"
  305. InsertLine "</IfModule>"
  306. EndGroup
  307. ResetSearch "1"
  308. LocateLineMatching "^# BEGIN CFENGINE$"
  309. LocateLineMatching "^<IfModule mod_auth_shadow.c>$"
  310. LocateLineMatching "[[:blank:]]+<Location />"
  311. BeginGroupIfNoLineMatching "[[:blank:]]+AuthShadow Off"
  312. InsertLine " AuthShadow Off"
  313. EndGroup
  314. UnsetAbort "^# END CFENGINE$"
  315. EndGroup
  316. #
  317. # LoadModule authshadow_module /usr/lib/apache/1.3/mod_xslt.so
  318. #
  319. # <IfModule mod_auth_shadow.c>
  320. # <Location /xslt>
  321. # AddHandler mod_xslt .html
  322. # AddHandler mod_xslt .txt
  323. # </Location>
  324. # </IfModule>
  325. #
  326. BeginGroupIfFileExists "/usr/lib/apache/1.3/mod_auth_shadow.so"
  327. ResetSearch "1"
  328. # bug! UnCommentLinesMatching "^#[[:blank:]]*LoadModule[[:blank:]]+authshadow_module[[:blank:]].*"
  329. LocateLineMatching "^#[[:blank:]]*LoadModule[[:blank:]]+authshadow_module[[:blank:]]+/usr/lib/apache/1.3/mod_auth_shadow.so$"
  330. ReplaceLineWith "LoadModule authshadow_module /usr/lib/apache/1.3/mod_auth_shadow.so"
  331. CatchAbort
  332. AbortAtLineMatching "^# END CFENGINE$"
  333. LocateLineMatching "^# BEGIN CFENGINE$"
  334. BeginGroupIfNoSuchLine "<IfModule mod_auth_shadow.c>"
  335. InsertLine "<IfModule mod_auth_shadow.c>"
  336. InsertLine " <Location />"
  337. InsertLine " </Location>"
  338. InsertLine "</IfModule>"
  339. EndGroup
  340. ResetSearch "1"
  341. LocateLineMatching "^# BEGIN CFENGINE$"
  342. LocateLineMatching "^<IfModule mod_auth_shadow.c>$"
  343. LocateLineMatching "[[:blank:]]+<Location />"
  344. BeginGroupIfNoLineMatching "[[:blank:]]+AuthShadow Off"
  345. InsertLine " AuthShadow Off"
  346. EndGroup
  347. UnsetAbort "^# END CFENGINE$"
  348. EndGroup
  349. }
  350. processes:
  351. "apache_ssl" restart "/etc/init.d/apache-ssl restart"
  352. shellcommands:
  353. apache_reload::
  354. "/etc/init.d/apache-ssl force-reload"