Commit ade90ebc3c692afd7ff0804be066b131e36c365d
Committed by
Earth Ugat

1 parent
2ac0afa0
Version v0.1.0. Initial release.
Showing
20 changed files
with
529 additions
and
9 deletions
1 | 1 | source "https://supermarket.chef.io" |
2 | 2 | |
3 | 3 | metadata |
4 | + | |
5 | +cookbook 'cfe-users', git: 'https://gitlab.chromedia.com/ops/cfe-users.git', tag: 'v0.1.0' | |
6 | +cookbook 'cfe-mariadb', git: 'https://gitlab.chromedia.com/ops/cfe-mariadb.git', tag: 'v0.5.0' | |
7 | +cookbook 'backup-file2s3', git: 'https://gitlab.chromedia.com/ops/backup-file2s3.git', tag: 'v0.3.3' | |
8 | +cookbook 'cfe-nginx-php-fpm', git: 'https://gitlab.chromedia.com/ops/cfe-nginx-php-fpm.git', tag: 'v0.5.1' | |
9 | +cookbook 'cfe-simple-iptables', git: 'https://gitlab.chromedia.com/ops/cfe-simple-iptables.git', tag: 'v0.1.0' | |
10 | + | |
11 | +cookbook 'cookbook-letsencrypt', git: 'https://github.com/nollieheel/cookbook-letsencrypt.git', tag: 'v0.2.0' | |
12 | +cookbook 'cookbook-phpmyadmin', git: 'https://github.com/nollieheel/cookbook-phpmyadmin.git', tag: 'v0.1.0' | |
13 | +cookbook 'cookbook-updater', git: 'https://github.com/nollieheel/cookbook-updater.git', tag: 'v0.2.0' | |
14 | +cookbook 'cookbook-zabbix', git: 'https://github.com/nollieheel/cookbook-zabbix.git', tag: 'v1.0.1' | ... | ... |
1 | 1 | # cfe-server-cookbook |
2 | 2 | |
3 | -TODO: Enter the cookbook description here. | |
3 | +Integrates the common cookbooks used for most (staging) servers. | |
4 | 4 | |
5 | 5 | ## Supported Platforms |
6 | 6 | |
7 | -TODO: List your supported platforms. | |
7 | +Tested on Ubuntu 14.04. | |
8 | 8 | |
9 | 9 | ## Attributes |
10 | 10 | |
... | ... | @@ -16,9 +16,9 @@ TODO: List your supported platforms. |
16 | 16 | <th>Default</th> |
17 | 17 | </tr> |
18 | 18 | <tr> |
19 | - <td><tt>['cfe-server']['bacon']</tt></td> | |
19 | + <td><tt>['cfe-server']['']</tt></td> | |
20 | 20 | <td>Boolean</td> |
21 | - <td>whether to include bacon</td> | |
21 | + <td>Description</td> | |
22 | 22 | <td><tt>true</tt></td> |
23 | 23 | </tr> |
24 | 24 | </table> |
... | ... | @@ -27,7 +27,7 @@ TODO: List your supported platforms. |
27 | 27 | |
28 | 28 | ### cfe-server::default |
29 | 29 | |
30 | -Include `cfe-server` in your node's `run_list`: | |
30 | +Enter proper attributes for the different wrapped cookbooks, including this one. Then include `cfe-server` in your node's `run_list`: | |
31 | 31 | |
32 | 32 | ```json |
33 | 33 | { | ... | ... |
attributes/default.rb
0 → 100644
1 | +# | |
2 | +# Author:: Earth U (<sysadmin @ chromedia.com>) | |
3 | +# Cookbook Name:: cfe-server | |
4 | +# Attribute:: default | |
5 | +# | |
6 | +# Copyright 2016, Chromedia Far East, Inc. | |
7 | +# | |
8 | +# Licensed under the Apache License, Version 2.0 (the "License"); | |
9 | +# you may not use this file except in compliance with the License. | |
10 | +# You may obtain a copy of the License at | |
11 | +# | |
12 | +# http://www.apache.org/licenses/LICENSE-2.0 | |
13 | +# | |
14 | +# Unless required by applicable law or agreed to in writing, software | |
15 | +# distributed under the License is distributed on an "AS IS" BASIS, | |
16 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
17 | +# See the License for the specific language governing permissions and | |
18 | +# limitations under the License. | |
19 | +# | |
20 | + | |
21 | +cb = 'cfe-server' | |
22 | + | |
23 | +default[cb]['db']['mariadb']['install'] = false | |
24 | +default[cb]['db']['include_mongodb'] = true | |
25 | + | |
26 | +default[cb]['filesystem']['swapfile'] = false | |
27 | +default[cb]['filesystem']['swapsize'] = '2G' | |
28 | +default[cb]['filesystem']['perms'] = [ | |
29 | +# { | |
30 | +# :path => '/path', | |
31 | +# :owner => nil, # Optional | |
32 | +# :group => nil, # Optional | |
33 | +# :mode => nil # Optional | |
34 | +# } | |
35 | +] | |
36 | +default[cb]['filesystem']['symlinks'] = { | |
37 | +# '/link/name' => '/target/path' | |
38 | +} | |
39 | + | |
40 | +default[cb]['tls']['include_letsencrypt'] = true | |
41 | + | |
42 | +default[cb]['app']['include_postfix'] = true | |
43 | +default[cb]['app']['include_php'] = true | |
44 | +default[cb]['app']['include_pma'] = false | |
45 | + | |
46 | +default[cb]['app']['composer']['project_paths'] = [ | |
47 | +# '/composer/proj/path/to/install' | |
48 | +] | |
49 | + | |
50 | +default[cb]['misc']['cronjobs'] = [ | |
51 | +# { | |
52 | +# :name => 'arbitrary_name_of_cronjob', | |
53 | +# :command => 'command to perform', | |
54 | +# :sched => '0 0 * * *', | |
55 | +# :mailto => '""', | |
56 | +# :enable => true | |
57 | +# } | |
58 | +] | |
59 | +default[cb]['misc']['logrotatejobs'] = [ | |
60 | +# { | |
61 | +# :name => 'arbitrary_name_of_job', # a filename, no spaces | |
62 | +# :path => '/path/to/rotate/*.log', | |
63 | +# :options => %w{ weekly rotate\ 12 missingok compress notifempty }, | |
64 | +# :enable => true | |
65 | +# } | |
66 | +] | |
67 | + | |
68 | +default[cb]['misc']['logrotate']['conf_dir'] = '/etc/logrotate.d' | |
69 | +default[cb]['misc']['sshd']['ports'] = [ 22, 8765 ] | |
70 | +default[cb]['misc']['sshd']['conf_path'] = '/etc/ssh/sshd_config' | |
71 | + | |
72 | +default[cb]['web']['include_nginx'] = true | ... | ... |
data_bags/gitkeep
deleted
100644 → 0
data_bags/users_devs/test.json
0 → 100644
1 | +{ | |
2 | + "comment": "Test User", | |
3 | + "shell": "/bin/bash", | |
4 | + "groups": [ | |
5 | + "test", | |
6 | + "devs", | |
7 | + "adm", | |
8 | + "plugdev", | |
9 | + "netdev" | |
10 | + ], | |
11 | + "ssh_keys": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCx7fx78WXwHhrB3BGUVyrw2XONh/qE6waU/8/0aZ6bkBSGu2z2GnkXI6JSfAuAO7spBHlXJZRtwTV5VuJx4n28zmQpTksGjS8xP/a1vphwwVkABomempxY97V4PBJqpWSzCoHG2zmotARcwBKJcwQd4FFE7vngrBk9SxczyWer26rMkY8SyjUFQm2o8dPuZuaY8rHqK9QUw1YJg3rSDd6qfi2dlunAc8fbTdDnZ5hjgmlrfyFLgoP31Ix0OVL9ogFYE//tV9CjHbwV2wKCJEI57rXJ/AMX4ZTTR6L6ljoKDxis9QiJwae/x0J+fi8EADtaLrbdZ0y5nu4/UtSURVXt cfe_stg_20161109", | |
12 | + "id": "test" | |
13 | +} | ... | ... |
data_bags/users_sysadmins/cfe.json
0 → 100644
1 | +{ | |
2 | + "comment": "Chromedia SysAdmin", | |
3 | + "shell": "/bin/bash", | |
4 | + "groups": [ | |
5 | + "cfe", | |
6 | + "sysadmins", | |
7 | + "adm", | |
8 | + "plugdev", | |
9 | + "netdev" | |
10 | + ], | |
11 | + "ssh_keys": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCx7fx78WXwHhrB3BGUVyrw2XONh/qE6waU/8/0aZ6bkBSGu2z2GnkXI6JSfAuAO7spBHlXJZRtwTV5VuJx4n28zmQpTksGjS8xP/a1vphwwVkABomempxY97V4PBJqpWSzCoHG2zmotARcwBKJcwQd4FFE7vngrBk9SxczyWer26rMkY8SyjUFQm2o8dPuZuaY8rHqK9QUw1YJg3rSDd6qfi2dlunAc8fbTdDnZ5hjgmlrfyFLgoP31Ix0OVL9ogFYE//tV9CjHbwV2wKCJEI57rXJ/AMX4ZTTR6L6ljoKDxis9QiJwae/x0J+fi8EADtaLrbdZ0y5nu4/UtSURVXt cfe_stg_20161109", | |
12 | + "id": "cfe" | |
13 | +} | ... | ... |
... | ... | @@ -6,4 +6,19 @@ description 'Simplifies setting up common Linux servers.' |
6 | 6 | long_description IO.read(File.join(File.dirname(__FILE__), 'README.md')) |
7 | 7 | version '0.1.0' |
8 | 8 | |
9 | +%w{ | |
10 | + cfe-users cfe-mariadb | |
11 | + backup-file2s3 cfe-nginx-php-fpm | |
12 | + cfe-simple-iptables | |
13 | + | |
14 | + cookbook-letsencrypt cookbook-phpmyadmin | |
15 | + cookbook-updater cookbook-zabbix | |
16 | +}.each do |cb| | |
17 | + depends cb | |
18 | +end | |
19 | + | |
20 | +depends 'mongodb3', '~> 5.2.0' | |
21 | +depends 'composer', '~> 2.5.2' | |
22 | +depends 'cron', '~> 1.7.6' | |
23 | + | |
9 | 24 | supports 'ubuntu', '>= 14.04' | ... | ... |
recipes/app.rb
0 → 100644
1 | +# | |
2 | +# Author:: Earth U (<sysadmin @ chromedia.com>) | |
3 | +# Cookbook Name:: cfe-server | |
4 | +# Recipes:: app | |
5 | +# | |
6 | +# Copyright 2016, Chromedia Far East, Inc. | |
7 | +# | |
8 | +# Licensed under the Apache License, Version 2.0 (the "License"); | |
9 | +# you may not use this file except in compliance with the License. | |
10 | +# You may obtain a copy of the License at | |
11 | +# | |
12 | +# http://www.apache.org/licenses/LICENSE-2.0 | |
13 | +# | |
14 | +# Unless required by applicable law or agreed to in writing, software | |
15 | +# distributed under the License is distributed on an "AS IS" BASIS, | |
16 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
17 | +# See the License for the specific language governing permissions and | |
18 | +# limitations under the License. | |
19 | +# | |
20 | + | |
21 | +if node[cookbook_name]['app']['include_postfix'] | |
22 | + include_recipe 'cfe-nginx-php-fpm::postfix' | |
23 | +end | |
24 | + | |
25 | +if node[cookbook_name]['app']['include_php'] | |
26 | + node.default['composer']['php_recipe'] = 'cfe-nginx-php-fpm::php-fpm' | |
27 | + package 'unzip' | |
28 | + include_recipe 'composer' | |
29 | + | |
30 | + node[cookbook_name]['app']['composer']['project_paths'].each do |xpath| | |
31 | + composer_project(xpath) { quiet false } | |
32 | + end | |
33 | +end | |
34 | + | |
35 | +if node[cookbook_name]['app']['include_pma'] | |
36 | + include_recipe 'cookbook-phpmyadmin' | |
37 | +end | ... | ... |
recipes/db.rb
0 → 100644
1 | +# | |
2 | +# Author:: Earth U (<sysadmin @ chromedia.com>) | |
3 | +# Cookbook Name:: cfe-server | |
4 | +# Recipes:: db | |
5 | +# | |
6 | +# Copyright 2016, Chromedia Far East, Inc. | |
7 | +# | |
8 | +# Licensed under the Apache License, Version 2.0 (the "License"); | |
9 | +# you may not use this file except in compliance with the License. | |
10 | +# You may obtain a copy of the License at | |
11 | +# | |
12 | +# http://www.apache.org/licenses/LICENSE-2.0 | |
13 | +# | |
14 | +# Unless required by applicable law or agreed to in writing, software | |
15 | +# distributed under the License is distributed on an "AS IS" BASIS, | |
16 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
17 | +# See the License for the specific language governing permissions and | |
18 | +# limitations under the License. | |
19 | +# | |
20 | + | |
21 | +if node[cookbook_name]['db']['mariadb']['install'] | |
22 | + include_recipe 'cfe-mariadb' | |
23 | +else | |
24 | + include_recipe 'mariadb::client' | |
25 | + include_recipe 'cfe-mariadb::schema' | |
26 | +end | |
27 | + | |
28 | +include_recipe 'cfe-mariadb::reload_from_s3' | |
29 | +include_recipe 'cfe-mariadb::backup2s3' | |
30 | + | |
31 | +if node[cookbook_name]['db']['include_mongodb'] | |
32 | + include_recipe 'mongodb3' | |
33 | +end | ... | ... |
1 | 1 | # |
2 | +# Author:: Earth U (<sysadmin @ chromedia.com>) | |
2 | 3 | # Cookbook Name:: cfe-server |
3 | -# Recipe:: default | |
4 | +# Recipes:: default | |
4 | 5 | # |
5 | -# Copyright (C) 2016 YOUR_NAME | |
6 | +# Copyright 2016, Chromedia Far East, Inc. | |
6 | 7 | # |
7 | -# All rights reserved - Do Not Redistribute | |
8 | +# Licensed under the Apache License, Version 2.0 (the "License"); | |
9 | +# you may not use this file except in compliance with the License. | |
10 | +# You may obtain a copy of the License at | |
8 | 11 | # |
12 | +# http://www.apache.org/licenses/LICENSE-2.0 | |
13 | +# | |
14 | +# Unless required by applicable law or agreed to in writing, software | |
15 | +# distributed under the License is distributed on an "AS IS" BASIS, | |
16 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
17 | +# See the License for the specific language governing permissions and | |
18 | +# limitations under the License. | |
19 | +# | |
20 | + | |
21 | +include_recipe "#{cookbook_name}::os" | |
22 | +include_recipe "#{cookbook_name}::db" | |
23 | +include_recipe "#{cookbook_name}::filesystem" | |
24 | +include_recipe "#{cookbook_name}::tls" | |
25 | +include_recipe "#{cookbook_name}::app" | |
26 | +include_recipe "#{cookbook_name}::misc" | |
27 | +include_recipe "#{cookbook_name}::web" | ... | ... |
recipes/filesystem.rb
0 → 100644
1 | +# | |
2 | +# Author:: Earth U (<sysadmin @ chromedia.com>) | |
3 | +# Cookbook Name:: cfe-server | |
4 | +# Recipes:: filesystem | |
5 | +# | |
6 | +# Copyright 2016, Chromedia Far East, Inc. | |
7 | +# | |
8 | +# Licensed under the Apache License, Version 2.0 (the "License"); | |
9 | +# you may not use this file except in compliance with the License. | |
10 | +# You may obtain a copy of the License at | |
11 | +# | |
12 | +# http://www.apache.org/licenses/LICENSE-2.0 | |
13 | +# | |
14 | +# Unless required by applicable law or agreed to in writing, software | |
15 | +# distributed under the License is distributed on an "AS IS" BASIS, | |
16 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
17 | +# See the License for the specific language governing permissions and | |
18 | +# limitations under the License. | |
19 | +# | |
20 | + | |
21 | +swapfile = node[cookbook_name]['filesystem']['swapfile'] | |
22 | +bash 'enable_swap' do | |
23 | + code <<-EOF.gsub(/^\s+/, '') | |
24 | + set -e | |
25 | + if [[ ! -f #{swapfile} ]] ; then | |
26 | + fallocate -l #{node[cookbook_name]['filesystem']['swapsize']} #{swapfile} | |
27 | + chmod 600 #{swapfile} | |
28 | + mkswap #{swapfile} | |
29 | + swapon #{swapfile} | |
30 | + echo "#{swapfile} none swap sw 0 0" >> /etc/fstab | |
31 | + fi | |
32 | + EOF | |
33 | + only_if { swapfile } | |
34 | +end | |
35 | + | |
36 | +if node['backup-file2s3']['backups'] | |
37 | + node['backup-file2s3']['backups'].each do |xback| | |
38 | + xback[:paths].each do |xpath| | |
39 | + | |
40 | + # Each path spec can have the following additional attributes: | |
41 | + # { | |
42 | + # :extract => true, # Default: true | |
43 | + # :ex_creates => 'filename', # Relative to path. | |
44 | + # :ex_priv_key => nil # Default is a node attribute | |
45 | + # } | |
46 | + unless xpath.has_key?(:extract) && xpath[:extract] == false | |
47 | + tdir = ::File.dirname(xpath[:path]) | |
48 | + crea = "#{xpath[:path]}/#{xpath[:ex_creates]}" | |
49 | + encr = xpath[:bak_encrypted] | |
50 | + pkey = xpath.has_key?(:ex_priv_key) ? xpath[:ex_priv_key] : nil | |
51 | + | |
52 | + aws_tar_extract xpath[:bak_filename] do | |
53 | + target_dir tdir | |
54 | + creates crea | |
55 | + encrypted encr | |
56 | + priv_key pkey | |
57 | + end | |
58 | + end | |
59 | + | |
60 | + end | |
61 | + end | |
62 | +end | |
63 | + | |
64 | +include_recipe 'backup-file2s3' | |
65 | + | |
66 | +node[cookbook_name]['filesystem']['perms'].each do |perm| | |
67 | + if perm[:owner] && perm[:group] | |
68 | + execute "chown -R #{perm[:owner]}:#{perm[:group]} #{perm[:path]}" | |
69 | + elsif perm[:owner] | |
70 | + execute "chown -R #{perm[:owner]} #{perm[:path]}" | |
71 | + elsif perm[:group] | |
72 | + execute "chown -R #{perm[:group]} #{perm[:path]}" | |
73 | + end | |
74 | + | |
75 | + if perm[:mode] | |
76 | + execute "chmod -R #{perm[:mode]} #{perm[:path]}" | |
77 | + end | |
78 | +end | |
79 | + | |
80 | +node[cookbook_name]['filesystem']['symlinks'].each do |xfrom, xto| | |
81 | + directory(::File.dirname(xfrom)) { recursive true } | |
82 | + link(xfrom) { to xto } | |
83 | +end | ... | ... |
recipes/misc.rb
0 → 100644
1 | +# | |
2 | +# Author:: Earth U (<sysadmin @ chromedia.com>) | |
3 | +# Cookbook Name:: cfe-server | |
4 | +# Recipes:: misc | |
5 | +# | |
6 | +# Copyright 2016, Chromedia Far East, Inc. | |
7 | +# | |
8 | +# Licensed under the Apache License, Version 2.0 (the "License"); | |
9 | +# you may not use this file except in compliance with the License. | |
10 | +# You may obtain a copy of the License at | |
11 | +# | |
12 | +# http://www.apache.org/licenses/LICENSE-2.0 | |
13 | +# | |
14 | +# Unless required by applicable law or agreed to in writing, software | |
15 | +# distributed under the License is distributed on an "AS IS" BASIS, | |
16 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
17 | +# See the License for the specific language governing permissions and | |
18 | +# limitations under the License. | |
19 | +# | |
20 | + | |
21 | +node[cookbook_name]['misc']['cronjobs'].each do |cjob| | |
22 | + sched = cjob[:sched].split(' ') | |
23 | + is_enable = cjob.has_key?(:enable) ? cjob[:enable] : true | |
24 | + cron_d cjob[:name] do | |
25 | + command cjob[:command] | |
26 | + minute sched[0] | |
27 | + hour sched[1] | |
28 | + day sched[2] | |
29 | + month sched[3] | |
30 | + weekday sched[4] | |
31 | + mailto cjob[:mailto] | |
32 | + path '/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin' | |
33 | + action( is_enable ? :create : :delete ) | |
34 | + end | |
35 | +end | |
36 | + | |
37 | +package 'logrotate' | |
38 | + | |
39 | +node[cookbook_name]['misc']['logrotatejobs'].each do |ljob| | |
40 | + jname = "#{node[cookbook_name]['misc']['logrotate']['conf_dir']}/"\ | |
41 | + "#{ljob[:name]}" | |
42 | + is_enable = ljob.has_key?(:enable) ? ljob[:enable] : true | |
43 | + template jname do | |
44 | + source 'logrotate.erb' | |
45 | + variables( | |
46 | + :path => ljob[:path], | |
47 | + :options => ljob[:options] | |
48 | + ) | |
49 | + action( is_enable ? :create : :delete ) | |
50 | + end | |
51 | +end | |
52 | + | |
53 | +template node[cookbook_name]['misc']['sshd']['conf_path'] do | |
54 | + mode 0644 | |
55 | + variables( | |
56 | + :ports => node[cookbook_name]['misc']['sshd']['ports'] | |
57 | + ) | |
58 | +end | ... | ... |
recipes/os.rb
0 → 100644
1 | +# | |
2 | +# Author:: Earth U (<sysadmin @ chromedia.com>) | |
3 | +# Cookbook Name:: cfe-server | |
4 | +# Recipes:: os | |
5 | +# | |
6 | +# Copyright 2016, Chromedia Far East, Inc. | |
7 | +# | |
8 | +# Licensed under the Apache License, Version 2.0 (the "License"); | |
9 | +# you may not use this file except in compliance with the License. | |
10 | +# You may obtain a copy of the License at | |
11 | +# | |
12 | +# http://www.apache.org/licenses/LICENSE-2.0 | |
13 | +# | |
14 | +# Unless required by applicable law or agreed to in writing, software | |
15 | +# distributed under the License is distributed on an "AS IS" BASIS, | |
16 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
17 | +# See the License for the specific language governing permissions and | |
18 | +# limitations under the License. | |
19 | +# | |
20 | + | |
21 | +include_recipe 'cookbook-updater::onetime' | |
22 | +include_recipe 'cookbook-updater::packages' | |
23 | +include_recipe 'cfe-users' | ... | ... |
recipes/tls.rb
0 → 100644
1 | +# | |
2 | +# Author:: Earth U (<sysadmin @ chromedia.com>) | |
3 | +# Cookbook Name:: cfe-server | |
4 | +# Recipes:: tls | |
5 | +# | |
6 | +# Copyright 2016, Chromedia Far East, Inc. | |
7 | +# | |
8 | +# Licensed under the Apache License, Version 2.0 (the "License"); | |
9 | +# you may not use this file except in compliance with the License. | |
10 | +# You may obtain a copy of the License at | |
11 | +# | |
12 | +# http://www.apache.org/licenses/LICENSE-2.0 | |
13 | +# | |
14 | +# Unless required by applicable law or agreed to in writing, software | |
15 | +# distributed under the License is distributed on an "AS IS" BASIS, | |
16 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
17 | +# See the License for the specific language governing permissions and | |
18 | +# limitations under the License. | |
19 | +# | |
20 | + | |
21 | +if node[cookbook_name]['tls']['include_letsencrypt'] | |
22 | + include_recipe 'cookbook-letsencrypt' | |
23 | +end | ... | ... |
recipes/web.rb
0 → 100644
1 | +# | |
2 | +# Author:: Earth U (<sysadmin @ chromedia.com>) | |
3 | +# Cookbook Name:: cfe-server | |
4 | +# Recipes:: web | |
5 | +# | |
6 | +# Copyright 2016, Chromedia Far East, Inc. | |
7 | +# | |
8 | +# Licensed under the Apache License, Version 2.0 (the "License"); | |
9 | +# you may not use this file except in compliance with the License. | |
10 | +# You may obtain a copy of the License at | |
11 | +# | |
12 | +# http://www.apache.org/licenses/LICENSE-2.0 | |
13 | +# | |
14 | +# Unless required by applicable law or agreed to in writing, software | |
15 | +# distributed under the License is distributed on an "AS IS" BASIS, | |
16 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | |
17 | +# See the License for the specific language governing permissions and | |
18 | +# limitations under the License. | |
19 | +# | |
20 | + | |
21 | +if node[cookbook_name]['web']['include_nginx'] | |
22 | + include_recipe 'cfe-nginx-php-fpm::nginx' | |
23 | +end | ... | ... |
templates/default/gitkeep
deleted
100644 → 0
templates/default/logrotate.erb
0 → 100644
templates/default/sshd_config.erb
0 → 100644
1 | +# Package generated configuration file | |
2 | +# See the sshd_config(5) manpage for details | |
3 | + | |
4 | +# What ports, IPs and protocols we listen for | |
5 | +<% @ports.each do |port| -%> | |
6 | +Port <%= port %> | |
7 | +<% end -%> | |
8 | + | |
9 | +# Use these options to restrict which interfaces/protocols sshd will bind to | |
10 | +#ListenAddress :: | |
11 | +#ListenAddress 0.0.0.0 | |
12 | +Protocol 2 | |
13 | +# HostKeys for protocol version 2 | |
14 | +HostKey /etc/ssh/ssh_host_rsa_key | |
15 | +HostKey /etc/ssh/ssh_host_dsa_key | |
16 | +HostKey /etc/ssh/ssh_host_ecdsa_key | |
17 | +HostKey /etc/ssh/ssh_host_ed25519_key | |
18 | +#Privilege Separation is turned on for security | |
19 | +UsePrivilegeSeparation yes | |
20 | + | |
21 | +# Lifetime and size of ephemeral version 1 server key | |
22 | +KeyRegenerationInterval 3600 | |
23 | +ServerKeyBits 1024 | |
24 | + | |
25 | +# Logging | |
26 | +SyslogFacility AUTH | |
27 | +LogLevel INFO | |
28 | + | |
29 | +# Authentication: | |
30 | +LoginGraceTime 120 | |
31 | +PermitRootLogin no | |
32 | +StrictModes yes | |
33 | + | |
34 | +RSAAuthentication yes | |
35 | +PubkeyAuthentication yes | |
36 | +#AuthorizedKeysFile %h/.ssh/authorized_keys | |
37 | + | |
38 | +# Don't read the user's ~/.rhosts and ~/.shosts files | |
39 | +IgnoreRhosts yes | |
40 | +# For this to work you will also need host keys in /etc/ssh_known_hosts | |
41 | +RhostsRSAAuthentication no | |
42 | +# similar for protocol version 2 | |
43 | +HostbasedAuthentication no | |
44 | +# Uncomment if you don't trust ~/.ssh/known_hosts for RhostsRSAAuthentication | |
45 | +#IgnoreUserKnownHosts yes | |
46 | + | |
47 | +# To enable empty passwords, change to yes (NOT RECOMMENDED) | |
48 | +PermitEmptyPasswords no | |
49 | + | |
50 | +# Change to yes to enable challenge-response passwords (beware issues with | |
51 | +# some PAM modules and threads) | |
52 | +ChallengeResponseAuthentication no | |
53 | + | |
54 | +# Change to no to disable tunnelled clear text passwords | |
55 | +PasswordAuthentication no | |
56 | + | |
57 | +# Kerberos options | |
58 | +#KerberosAuthentication no | |
59 | +#KerberosGetAFSToken no | |
60 | +#KerberosOrLocalPasswd yes | |
61 | +#KerberosTicketCleanup yes | |
62 | + | |
63 | +# GSSAPI options | |
64 | +#GSSAPIAuthentication no | |
65 | +#GSSAPICleanupCredentials yes | |
66 | + | |
67 | +X11Forwarding no | |
68 | +X11DisplayOffset 10 | |
69 | +PrintMotd no | |
70 | +PrintLastLog yes | |
71 | +TCPKeepAlive yes | |
72 | +#UseLogin no | |
73 | + | |
74 | +#MaxStartups 10:30:60 | |
75 | +#Banner /etc/issue.net | |
76 | + | |
77 | +# Allow client to pass locale environment variables | |
78 | +AcceptEnv LANG LC_* | |
79 | + | |
80 | +Subsystem sftp internal-sftp | |
81 | + | |
82 | +# Set this to 'yes' to enable PAM authentication, account processing, | |
83 | +# and session processing. If this is enabled, PAM authentication will | |
84 | +# be allowed through the ChallengeResponseAuthentication and | |
85 | +# PasswordAuthentication. Depending on your PAM configuration, | |
86 | +# PAM authentication via ChallengeResponseAuthentication may bypass | |
87 | +# the setting of "PermitRootLogin without-password". | |
88 | +# If you just want the PAM account and session checks to run without | |
89 | +# PAM authentication, then enable this but set PasswordAuthentication | |
90 | +# and ChallengeResponseAuthentication to 'no'. | |
91 | +UsePAM yes | ... | ... |