diff --git a/lib/crowi/express-init.js b/lib/crowi/express-init.js
index f7dbd3f..714647d 100644
--- a/lib/crowi/express-init.js
+++ b/lib/crowi/express-init.js
@@ -43,6 +43,7 @@ module.exports = function(crowi, app) {
         pageGrants: Page.getGrantLabels(),
         userStatus: User.getUserStatusLabels(),
         registrationMode: Config.getRegistrationModeLabels(),
+        referrerSuppressionMode: Config.getReferrerSuppressionModeLabels(),
     };
 
     next();
diff --git a/lib/form/admin/sec.js b/lib/form/admin/sec.js
index 5e3c437..05d9b1e 100644
--- a/lib/form/admin/sec.js
+++ b/lib/form/admin/sec.js
@@ -10,6 +10,7 @@ module.exports = form(
   field('settingForm[security:basicName]'),
   field('settingForm[security:basicSecret]'),
   field('settingForm[security:registrationMode]').required(),
+  field('settingForm[security:referrerSuppressionMode]').required(),
   field('settingForm[security:registrationWhiteList]').custom(normalizeCRLF).custom(stringToArray)
 );
 
diff --git a/lib/models/config.js b/lib/models/config.js
index 40693bb..722d132 100644
--- a/lib/models/config.js
+++ b/lib/models/config.js
@@ -8,6 +8,8 @@ module.exports = function(crowi) {
     , SECURITY_REGISTRATION_MODE_OPEN = 'Open'
     , SECURITY_REGISTRATION_MODE_RESTRICTED = 'Resricted'
     , SECURITY_REGISTRATION_MODE_CLOSED = 'Closed'
+    , SECURITY_REFERRER_SUPPRESSION_MODE_YES = 'Yes'
+    , SECURITY_REFERRER_SUPPRESSION_MODE_NO  = 'No'
   ;
 
   configSchema = new mongoose.Schema({
@@ -25,6 +27,7 @@ module.exports = function(crowi) {
 
       'security:registrationMode'      : 'Open',
       'security:registrationWhiteList' : [],
+      'security:referrerSuppressionMode' : 'No',
 
       'aws:bucket'          : 'crowi',
       'aws:region'          : 'ap-northeast-1',
@@ -42,6 +45,7 @@ module.exports = function(crowi) {
       'google:clientId'     : '',
       'google:clientSecret' : '',
 
+
     };
   }
 
@@ -55,6 +59,16 @@ module.exports = function(crowi) {
     return labels;
   };
 
+  configSchema.statics.getReferrerSuppressionModeLabels = function()
+  {
+    var labels = {};
+    labels[SECURITY_REFERRER_SUPPRESSION_MODE_YES] = '抑制する';
+    labels[SECURITY_REFERRER_SUPPRESSION_MODE_NO]  = '特に抑制しない。';
+
+    return labels;
+  };
+
+
   configSchema.statics.updateConfigCache = function(ns, config)
   {
     var originalConfig = crowi.getConfig();
@@ -206,6 +220,16 @@ module.exports = function(crowi) {
     return true;
   };
 
+  configSchema.statics.hasReferrerConfig = function(config)
+  {
+    if (!config.crowi['security:referrerSuppressionMode']) {
+      return false;
+    }
+
+    return true;
+  };
+
+
   /*
   configSchema.statics.isInstalled = function(config)
   {
@@ -226,6 +250,8 @@ module.exports = function(crowi) {
   Config.SECURITY_REGISTRATION_MODE_OPEN       = SECURITY_REGISTRATION_MODE_OPEN;
   Config.SECURITY_REGISTRATION_MODE_RESTRICTED = SECURITY_REGISTRATION_MODE_RESTRICTED;
   Config.SECURITY_REGISTRATION_MODE_CLOSED     = SECURITY_REGISTRATION_MODE_CLOSED;
+  Config.SECURITY_REFERRER_SUPPRESSION_MODE_YES = SECURITY_REFERRER_SUPPRESSION_MODE_YES;
+  Config.SECURITY_REFERRER_SUPPRESSION_MODE_NO  = SECURITY_REFERRER_SUPPRESSION_MODE_NO;
 
 
   return Config;
diff --git a/lib/views/admin/app.html b/lib/views/admin/app.html
index 02fc128..d9aa7e8 100644
--- a/lib/views/admin/app.html
+++ b/lib/views/admin/app.html
@@ -105,6 +105,18 @@
         </div>
 
         <div class="form-group">
+          <label for="settingForm[security:referrerSuppressionMode]" class="col-xs-3 control-label">リファラの抑制</label>
+          <div class="col-xs-6">
+            <select class="form-control" name="settingForm[security:referrerSuppressionMode]" value="{{ settingForm['security:referrerSuppressionMode'] }}">
+              {% for modeValue, modeLabel in consts.referrerSuppressionMode %}
+              <option value="{{ modeValue }}" {% if modeValue == settingForm['security:referrerSuppressionMode'] %}selected{% endif %} >{{ modeLabel }}</option>
+              {% endfor %}
+            </select>
+            <p class="help-block">リファラの抑制はブラウザの実装に依存するので、完全ではない場合があります。</p>
+          </div>
+        </div>
+
+        <div class="form-group">
           <div class="col-xs-offset-3 col-xs-6">
             <input type="hidden" name="_csrf" value="{{ csrf() }}">
             <button type="submit" class="btn btn-primary">更新</button>
diff --git a/lib/views/layout/layout.html b/lib/views/layout/layout.html
index 248e04f..8ef7ff4 100644
--- a/lib/views/layout/layout.html
+++ b/lib/views/layout/layout.html
@@ -8,6 +8,9 @@
   <title>{% block html_title %}{% endblock %} {{ config.crowi['app:title']|default('Crowi') }}</title>
   <meta name="description" content="">
   <meta name="author" content="">
+{% if config.crowi['security:referrerSuppressionMode'] == 'Yes' %}
+  <meta name="referrer" content="no-referrer">
+{% endif %}
 
   <meta name="viewport" content="width=device-width,initial-scale=1">
 
@@ -132,4 +135,19 @@
 
 <script src="/js/crowi{% if env  == 'production' %}.min{% endif %}.js"></script>
 <script src="/js/app{% if env  == 'production' %}.min{% endif %}.js"></script>
+
+{% if config.crowi['security:referrerSuppressionMode'] == 'Yes' %}
+<script type="text/javascript">
+window.onload = function () {
+  var ids = ['revision-body-content', 'preview-body'];
+  for (var i = 0; i < ids.length; i++) {
+  	var as = document.getElementById(ids[i]).getElementsByTagName('a');
+        for (var j = 0; j < as.length; j++) {
+          as[j].setAttribute('ref', 'noreferrer'); 
+        }
+  }
+};
+</script>
+{% endif %}
+
 </html>
