Adoptable Cookbooks List

Looking for a cookbook to adopt? You can now see a list of cookbooks available for adoption!
List of Adoptable Cookbooks

Supermarket Belongs to the Community

Supermarket belongs to the community. While Chef has the responsibility to keep it running and be stewards of its functionality, what it does and how it works is driven by the community. The chef/supermarket repository will continue to be where development of the Supermarket application takes place. Come be part of shaping the direction of Supermarket by opening issues and pull requests or by joining us on the supermarket mailing list.

Select Badges

Select Supported Platforms


postfix-dkim (11) Versions 1.0.7

Installs/Configures postfix and opendkim, a postfix DKIM filter (see:

cookbook 'postfix-dkim', '~> 1.0.7'
cookbook 'postfix-dkim', '~> 1.0.7', :supermarket
knife cookbook site install postfix-dkim
knife cookbook site download postfix-dkim


Installs opendkim package and basically follows this:

Installs Postfix via the official postfix cookbook and adds the following configuration:

node.default['postfix']['main']['milter_default_action'] = 'accept'
node.default['postfix']['main']['milter_protocol']       = 2
node.default['postfix']['main']['smtpd_milters']         = node['postfix_dkim']['postfix_milter_socket']
node.default['postfix']['main']['non_smtpd_milters']     = node['postfix_dkim']['postfix_milter_socket']

This has been tested on Ubuntu 10.04 and 14.04


See man 5 opendkim.conf for more info on these:

  • postfix_dkim['domain'] - Domain to sign (default: your FQDN)
  • postfix_dkim['keyfile'] - Full path to location of private key. If it doesn't exist, will use dkim-genkey to make one for you. (default: /etc/mail/dkim.key)
  • postfix_dkim['selector'] - See the section on selectors (default: mail)
  • postfix_dkim['autorestart'] - Restart on failure (default: false). Should probably flip this to true when you're sure the filter works.
  • postfix_dkim['sender_headers'] - SenderHeaders value (default: nil, will use opendkim default). See opendkim manual for more info.

For /etc/default/opendkim:

postfix_dkim['socket'] - Socket to bind to. (default: 'inet:8891@localhost')

For key generation using key-genkey:

postfix_dkim['testmode'] - Run DKIM in test mode? see "t=" on (default: true)

For Postfix's

postfix_dkim['postfix_milter_socket'] - Opendkim socket in Postfix format, see: (default: 'inet:localhost:8891') This should mirror postfix_dkim['socket']


Set the attributes (defaults should work for most on Ubuntu), and it installs and configures postfix and the postfix filter (opendkim).

Will attempt to generate a private key for you, if it doesn't already exist (key file is specified in the postfix_dkim[:keyfile] attribute)


DKIM setup is not complete until you create the necessary TXT DNS record containing your public key, which is located in the postfix_dkim[:selector].txt file within the postfix_dkim[:keyfile] directory.

So, if you're using defaults, this will be located in /etc/mail/mail.txt. You can safely delete or move this file once you've created the DNS record.

Dependent cookbooks

postfix > 3.0.0

Contingent cookbooks

There are no cookbooks that are contingent upon this one.

Collaborator Number Metric

1.0.7 failed this metric

Failure: Cookbook has 0 collaborators. A cookbook must have at least 2 collaborators to pass this metric.

Foodcritic Metric

1.0.7 passed this metric