tls_settings.html 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. {{define "form/tlsSettings"}}
  2. <!-- tls enable -->
  3. <a-form layout="inline" v-if="inbound.canSetTls()">
  4. <a-form-item label="tls">
  5. <a-switch v-model="inbound.tls">
  6. </a-switch>
  7. </a-form-item>
  8. <a-form-item v-if="inbound.canEnableXTls()" label="xtls">
  9. <a-switch v-model="inbound.xtls"></a-switch>
  10. </a-form-item>
  11. </a-form>
  12. <!-- tls settings -->
  13. <a-form v-if="inbound.tls || inbound.xtls"layout="inline">
  14. <a-form-item label="minVersion">
  15. <a-select v-model="inbound.stream.tls.minVersion" style="width: 60px">
  16. <a-select-option v-for="key in TLS_VERSION_OPTION" :value="key">[[ key ]]</a-select-option>
  17. </a-select>
  18. </a-form-item>
  19. <a-form-item label="maxVersion">
  20. <a-select v-model="inbound.stream.tls.maxVersion" style="width: 60px">
  21. <a-select-option v-for="key in TLS_VERSION_OPTION" :value="key">[[ key ]]</a-select-option>
  22. </a-select>
  23. </a-form-item>
  24. <a-form-item label="cipherSuites">
  25. <a-select v-model="inbound.stream.tls.cipherSuites" style="width: 300px">
  26. <a-select-option value="">auto</a-select-option>
  27. <a-select-option v-for="key in TLS_CIPHER_OPTION" :value="key">[[ key ]]</a-select-option>
  28. </a-select>
  29. </a-form-item>
  30. <a-form-item label='{{ i18n "domainName" }}'>
  31. <a-input v-model.trim="inbound.stream.tls.server"></a-input>
  32. </a-form-item>
  33. <a-form-item label="alpn">
  34. <a-input v-model.trim="inbound.stream.tls.alpn"></a-input>
  35. </a-form-item>
  36. <a-form-item label='{{ i18n "certificate" }}'>
  37. <a-radio-group v-model="inbound.stream.tls.certs[0].useFile" button-style="solid">
  38. <a-radio-button :value="true">{{ i18n "pages.inbounds.certificatePath" }}</a-radio-button>
  39. <a-radio-button :value="false">{{ i18n "pages.inbounds.certificateContent" }}</a-radio-button>
  40. </a-radio-group>
  41. </a-form-item>
  42. <template v-if="inbound.stream.tls.certs[0].useFile">
  43. <a-form-item label='{{ i18n "pages.inbounds.publicKeyPath" }}'>
  44. <a-input v-model.trim="inbound.stream.tls.certs[0].certFile"></a-input>
  45. </a-form-item>
  46. <a-form-item label='{{ i18n "pages.inbounds.keyPath" }}'>
  47. <a-input v-model.trim="inbound.stream.tls.certs[0].keyFile"></a-input>
  48. </a-form-item>
  49. </template>
  50. <template v-else>
  51. <a-form-item label='{{ i18n "pages.inbounds.publicKeyContent" }}'>
  52. <a-input type="textarea" :rows="2" v-model="inbound.stream.tls.certs[0].cert"></a-input>
  53. </a-form-item>
  54. <a-form-item label='{{ i18n "pages.inbounds.keyContent" }}'>
  55. <a-input type="textarea" :rows="2" v-model="inbound.stream.tls.certs[0].key"></a-input>
  56. </a-form-item>
  57. </template>
  58. </a-form>
  59. {{end}}