summaryrefslogblamecommitdiffstats
path: root/modules-available/webinterface/templates/https.html
blob: b109fa9d3fbbb38e97fc792aec1a43d82c348e74 (plain) (tree)
1
2
3
4
5
6
7
8
9




                                                               
                                                          

                              
                                                       


                                                
                                                           

                                            
                                                               

                                              
                                                                 

                                              
                                                                



                                                            


                                                           

                                         
                                       



                                                                     

                                       



                                                                                  




                                                                                                        


                                                                        


                                             
                        
 


                                                                            



                                                                   

                                                                                                                               









                                                                

                                                                                                                           









                                                                

                                                                                                                                  









                                                                       
                                               



                                                                    

                                                                                                                                                







                                                                            
                                                 
                                                                            





                                                                                                                                            



                                                                           
                                                 
 










                                                                                                                                                  
 










                                                                                                                                                  











                                                                                                                                              
                              
 
                                                                        



















                                                                                                                        
 




































                                                                                                                                                
                              
 

                            
                                                



                                                                                                            
                              

































                                                                                                                                                                                                                                                       
              
      
<div class="panel panel-default">
	<div class="panel-heading">{{lang_httpsSettings}}</div>
	<div class="panel-body">
		<p>{{lang_httpsDescription}}</p>
		{{^httpsUsed}}
			<p>{{lang_youreNotUsingHttps}}</p>
		{{/httpsUsed}}
		{{#httpsUsed}}
			<p>{{lang_youreUsingHttps}}</p>
		{{/httpsUsed}}
		<div class="text-info slx-bold">
			{{#offSelected}}
				<p>{{lang_offSelected}}</p>
			{{/offSelected}}
			{{#unknownSelected}}
				<p>{{lang_unknownSelected}}</p>
			{{/unknownSelected}}
			{{#generatedSelected}}
				<p>{{lang_generatedSelected}}</p>
			{{/generatedSelected}}
			{{#suppliedSelected}}
				<p>{{lang_suppliedSelected}}</p>
			{{/suppliedSelected}}
			{{#acmeSelected}}
				<p>{{lang_acmeSelected}}</p>
			{{/acmeSelected}}
			{{#apiSelected}}
				<p>{{lang_apiSelected}}</p>
			{{/apiSelected}}
		</div>
		<table class="slx-table">
			{{#certIssuer}}
				<tr>
					<td>{{lang_certIssuer}}:</td>
					<td>{{.}}</td>
				</tr>
			{{/certIssuer}}
			{{#certExpire}}
				<tr>
					<td>{{lang_certExpireTime}}:</td>
					<td class="{{certExpireClass}}">{{.}}</td>
				</tr>
			{{/certExpire}}
			{{#certDomains.0}}
				<tr>
					<td style="vertical-align:top">{{lang_currentCertDomains}}:</td>
					<td>
						{{#certDomains}}
							<div>{{.}}</div>
						{{/certDomains}}
					</td>
				</tr>
			{{/certDomains.0}}
		</table>

		<form action="?do=WebInterface" method="post">
			<input type="hidden" name="token" value="{{token}}">
			<input type="hidden" name="action" value="https">
			<label>{{lang_generalHttpsOptions}}</label>
			<div class="input-group row-select">
				<span class="input-group-addon">
					<span class="checkbox">
						<input id="httpsredirect" type="checkbox" name="httpsredirect"
								 value="on" {{redirect_checked}} {{perms.edit.https.disabled}}>
						<label></label>
					</span>
				</span>
				<span class="form-control">
					{{lang_httpsRedirect}}
				</span>
			</div>
			<div class="input-group row-select">
				<span class="input-group-addon">
					<span class="checkbox">
						<input id="usehsts" type="checkbox" name="usehsts"
								 value="on" {{hsts_checked}} {{perms.edit.https.disabled}}>
						<label></label>
					</span>
				</span>
				<span class="form-control">
					{{lang_useHsts}}
				</span>
			</div>
			<div class="input-group row-select">
				<span class="input-group-addon">
					<span class="checkbox">
						<input id="redirdomain" type="checkbox" name="redirdomain"
								 value="on" {{redirdomain_checked}} {{perms.edit.https.disabled}}>
						<label></label>
					</span>
				</span>
				<span class="form-control">
					{{lang_redirectDomain}}
				</span>
			</div>
			<br>

			<label>{{lang_changeCertificateOption}}</label>
			<div id="cert-options">

				<div class="input-group row-select">
				<span class="input-group-addon">
					<span class="radio">
						<input id="https-do-nothing" type="radio" name="mode" value="noop" {{perms.edit.https.disabled}}
								 checked>
						<label></label>
					</span>
				</span>
					<span class="form-control">
						{{lang_httpsOptionNoChange}}
					</span>
				</div>

				{{#httpsEnabled}}
					<div class="input-group row-select">
					<span class="input-group-addon">
						<span class="radio">
							<input id="moff" type="radio" name="mode" value="off" {{perms.edit.https.disabled}}>
							<label></label>
						</span>
					</span>
						<span class="form-control">
							{{lang_noHttps}}
						</span>
					</div>
				{{/httpsEnabled}}

				<div class="input-group row-select">
					<span class="input-group-addon">
						<span class="radio">
							<input id="mrandom" type="radio" name="mode" value="random" {{perms.edit.https.disabled}}>
							<label></label>
						</span>
					</span>
					<span class="form-control">
						{{lang_randomCert}}
					</span>
				</div>

				<div class="input-group row-select">
					<span class="input-group-addon">
						<span class="radio">
							<input id="mcustom" type="radio" name="mode" value="custom" {{perms.edit.https.disabled}}>
							<label></label>
						</span>
					</span>
					<span class="form-control">
						{{lang_customCert}}
					</span>
				</div>

				<div class="input-group row-select">
					<span class="input-group-addon">
						<span class="radio">
							<input id="macme" type="radio" name="mode" value="acme" {{perms.edit.https.disabled}}>
							<label></label>
						</span>
					</span>
					<span class="form-control">
						{{lang_optionAcme}}
					</span>
				</div>
			</div>

			<div class="well well-sm collapse" id="wcustom">
				{{lang_certificate}}
				<pre class="small">
-----BEGIN CERTIFICATE-----
MIIFfTCCA...
.....
-----END CERTIFICATE-----</pre>
				<textarea name="certificate" class="form-control small" cols="101" rows="10"></textarea>
				<hr>
				{{lang_privateKey}}
				<pre class="small">
-----BEGIN PRIVATE KEY-----
MIIFfTCCA...
.....
-----END PRIVATE KEY-----</pre>
				<textarea name="privatekey" class="form-control small" cols="101" rows="10"></textarea>
				<hr>
				{{lang_caChain}}
				<textarea name="cachain" class="form-control small" cols="101" rows="10"></textarea>
				<hr>
			</div>

			<div class="well well-sm collapse" id="wacme">
				<p>{{lang_acmeCreateNewHint}}</p>
				<div class="form-group">
					<label for="acme-provider">{{lang_acmeProvider}}</label>
					<select class="form-control" name="acme-provider" id="acme-provider">
						{{#acmeProviders}}
							<option value="{{id}}" {{selected}}>{{name}}</option>
						{{/acmeProviders}}
					</select>
				</div>
				<div class="form-group">
					<label for="acme-mail">{{lang_acmeMail}}</label>
					<input class="form-control" name="acme-mail" id="acme-mail" value="{{acmeMail}}">
				</div>
				<div class="form-group">
					<label for="acme-domains">{{lang_acmeDomains}}</label>
					<textarea rows="4" class="form-control" name="acme-domains" id="acme-domains">{{acmeDomains}}</textarea>
				</div>
				<hr>
				<div class="slx-space">
					{{lang_acmeKidKeyHint}}
				</div>
				<div class="form-group">
					<label for="acme-kid">{{lang_acmeKeyId}}</label>
					<input class="form-control" type="text" id="acme-kid" name="acme-kid" value="{{acmeKeyId}}">
				</div>
				<div class="form-group">
					<label for="acme-hmac-key">{{lang_acmeHmacKey}}</label>
					<input class="form-control" type="text" id="acme-hmac-key" name="acme-hmac-key"
							 value="{{acmeHmacKey}}">
				</div>
				<div class="slx-space"></div>
				<div class="checkbox">
					<input type="checkbox" name="acme-wipe-all" value="1" id="acme-wipe-all">
					<label for="acme-wipe-all">{{lang_acmeWipeAll}}</label>
				</div>
				<i>{{lang_acmeWipeAllHint}}</i>
			</div>

			<br>

			<div class="pull-right">
				<button type="submit" class="btn btn-primary" {{perms.edit.https.disabled}}>
					<span class="glyphicon glyphicon-floppy-disk"></span>
					{{lang_save}}
				</button>
			</div>
		</form>
		<div class="clearfix"></div>
		<hr>
		<h5 class="slx-bold">{{lang_httpsApiKey}}</h5>
		<p>{{lang_httpsApiKeyDescription}}</p>
		<form action="?do=WebInterface" method="post">
			<input type="hidden" name="token" value="{{token}}">
			<div class="input-group">
				<span class="input-group-addon"><label for="https-api-key">{{lang_httpsCurrentApiKey}}</label></span>
				<input class="form-control" type="text" id="https-api-key" readonly value="{{httpsApiKey}}">
				<div class="input-group-btn">
					<button type="submit" name="action" value="https-api-key-generate" class="btn btn-success {{perms.edit.https.disabled}}"
							  {{#httpsApiKey}}data-confirm="{{lang_httpsApiKeyRegenerateConfirm}}"{{/httpsApiKey}}>
						<span class="glyphicon glyphicon-refresh"></span>
						{{lang_regenerate}}
					</button>
				</div>
				<div class="input-group-btn">
					<button type="submit" name="action" value="https-api-key-delete" class="btn btn-danger {{perms.edit.https.disabled}}"
								{{#httpsApiKey}}data-confirm="{{lang_httpsApiKeyDeleteConfirm}}"{{/httpsApiKey}}>
						<span class="glyphicon glyphicon-trash"></span>
						{{lang_delete}}
					</button>
				</div>
			</div>
			<br>
			<br>
			{{lang_httpsApiPostText}}
			<div class="slx-bold">{{httpsApiKeyPostUrl}}</div>
			<br>
			{{lang_httpsApiPostExample}}:
			<div class="monospace">curl -L --data-urlencode &quot;token=123456&quot; --data-urlencode &quot;privkey@/path/to/privkey.pem&quot; --data-urlencode &quot;cert@/path/to/cert.pem&quot; &quot;{{httpsApiKeyPostUrl}}&quot;</div>
			{{lang_httpsApiPostMaybeInsecure}}
		</form>
	</div>
</div>