Skip to content
lsk569937453 edited this page Apr 16, 2023 · 3 revisions

Awesome Silverwind

Silverwind as Http Proxy

ssss
You could config the route in the config file.So the application will load the config file when starting.

Read config from Configuration File

- listen_port: 80
  service_config:
    server_type: Http
    routes:
    - matcher:
        prefix: /api/v1
        prefix_rewrite: /
      route_cluster:
        type: RandomRoute
        routes:
        - base_route:
            endpoint: http://192.168.0.1:8888/
        - base_route:
            endpoint: http://192.168.0.2:9987/
    - matcher:
        prefix: /api/v2
        prefix_rewrite: /
      route_cluster:
        type: RandomRoute
        routes:
        - base_route:
            endpoint: https://192.168.0.3:443/

Change config over the Silverwind Dashboard

And you could also create the new route after the silverwind started. After you started the dashboard,just click "Listener List"=>"Create New Listener".Then you could create new route. image If the second route has the same listening port as the first one,just create the new listener list like following: image

Silverwind as Https Proxy

sss

Configuration File

- listen_port: 443
  service_config:
    server_type: Https
    cert_str: |-
      -----BEGIN CERTIFICATE-----
      MIIDoTCCAomgAwIBAgIUXs7QoXvLAbQIvmDT09/v43EfDJowDQYJKoZIhvcNAQEL
      BQAwYDELMAkGA1UEBhMCQ04xCzAJBgNVBAgMAnNzMQswCQYDVQQHDAJzczELMAkG
      A1UECgwCc3MxCzAJBgNVBAsMAnNzMQswCQYDVQQDDAJzczEQMA4GCSqGSIb3DQEJ
      ARYBczAeFw0yMzAzMDcwMTUxMTBaFw0yNjAzMDYwMTUxMTBaMGAxCzAJBgNVBAYT
      AkNOMQswCQYDVQQIDAJzczELMAkGA1UEBwwCc3MxCzAJBgNVBAoMAnNzMQswCQYD
      VQQLDAJzczELMAkGA1UEAwwCc3MxEDAOBgkqhkiG9w0BCQEWAXMwggEiMA0GCSqG
      SIb3DQEBAQUAA4IBDwAwggEKAoIBAQCgmJ8OOfoDEsL19+rzivx6Fgf2ObZQUZKw
      FU8ZvUXvj9jSkp4bvNlDdGoOSb2bMwV61ZDJ+hhuIy+2hFf0B5M5Y8uYfOkmHSuE
      Uz07W4jXbF7vPUnADqqYcKDLgNamJnw0UjMyecsRKazRKhen5/HnCUBowgJoCKcC
      2BGCRj/XjhtPzAIIFEc9CB3Fn73hjCaHeokPHlDTzLGYiO1dSXxQ5KBc8d6hSVvl
      zHcw/Npa5/urPIYkSXTrykIk60cuRI9Sv2YyLanpXjGZirw/bZqw5sYOuAGaKbEg
      UkZStNkXPW7LHzEgukNVMPPvqpgLwCgvxS7co04PH1tuJihnon4FAgMBAAGjUzBR
      MB0GA1UdDgQWBBQePbIRuJRh8clpJRx1IkrGxC92AzAfBgNVHSMEGDAWgBQePbIR
      uJRh8clpJRx1IkrGxC92AzAPBgNVHRMBAf8EBTADAQH/MA0GCSqGSIb3DQEBCwUA
      A4IBAQAxXQpLKjqSl1HCMf1QDdwHVs1mjzLGIk9BP3g5XS14waooQc2U+VKHfryC
      z6bn++dmU3YwT9njSicN70/4PemSPVLXa7VZRz3ao88L9ZxGPdjtjGnlnPL0icTd
      /Ns+sbbSOnVMu2P2flK29eKovNcbChNusNUFxlJzOmgtKwjbpnvbiUhFNCzCGNce
      Fvwh3ox/gAUIchfA3S4T+hvsTfSWNH0HATm5kNsHRyJY+JeUdXBEq7xGE1AJ6qi7
      +SuOMlev39d238SYJ7gRmIMUNZRDJ4U3/Jj6TGrIIisR6UiJyU0zRjQ7lXW40u1Q
      7fg/Du0FJbPsoLWsySMYbtD+0N64
      -----END CERTIFICATE-----
    key_str: |-
      -----BEGIN PRIVATE KEY-----
      MIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCgmJ8OOfoDEsL1
      9+rzivx6Fgf2ObZQUZKwFU8ZvUXvj9jSkp4bvNlDdGoOSb2bMwV61ZDJ+hhuIy+2
      hFf0B5M5Y8uYfOkmHSuEUz07W4jXbF7vPUnADqqYcKDLgNamJnw0UjMyecsRKazR
      Khen5/HnCUBowgJoCKcC2BGCRj/XjhtPzAIIFEc9CB3Fn73hjCaHeokPHlDTzLGY
      iO1dSXxQ5KBc8d6hSVvlzHcw/Npa5/urPIYkSXTrykIk60cuRI9Sv2YyLanpXjGZ
      irw/bZqw5sYOuAGaKbEgUkZStNkXPW7LHzEgukNVMPPvqpgLwCgvxS7co04PH1tu
      Jihnon4FAgMBAAECggEAEXQ89zQcZMideVOqTLFamt85msxvcN/IwEv0lqDQUMbS
      wyINvoiCGXd1zls72PoM2qqK67S7gn7fAOh10a8gFGDw///1a//IGr/cPA8I+pbL
      45cG5LGDX4GALFXynki4/4u+hjof9JvRrUL0orpN+3TxM+GAFvP3yNKYZo8BgckD
      BBIbs62VmmyPrGFaxgAB1VOn4W2QcP58rGKa3PQ0flhnVoXQcDrGat41K4wtYLK1
      qcDiziNdxPtmA1WlOifDKBohNthhLppXdIN0ovGSbUG4gCHaMrVhp1UI3kuxvEVn
      rLkIG9NKhAcKtgZuZj/r6XI+YT18sF7yP5qfT87BSQKBgQC2i5ZI5cp4yaT7DCln
      LtX9P9uTTTuchFkIW/mE3tmO66D68XQ2PDWzv0RZyGM8RJZPHY2xFwG0LJ6oqp5x
      6Ss3Wb0BfHJ/QPhCffgb6abT7KSjzghSRQVjnBcIoZL6c+J0iWf7UhjcM4FWKmki
      FgWebX1lVk8/gve6E2LlfCVeKQKBgQDhOAIDEpb2SEB+a+ZznjS+OdjMw3EnI+uu
      PKrAIBbUv0FyedW7qGDBHZGhAcu7L6Ch/z8NliNbWByoO3E69GS6YCHbhfiNnQyE
      7wbhsp0wK5fIBxPuUTr3+lPMsKLH02BxTFsXC/DUX1BmSK/92NIHYxWqHNrSIGFd
      kVN6eC/kfQKBgBGfgj/BZ32nwfS2pNygSepsGs+quiGPKWVEM9+fABPrLZxsaRK/
      V1PmGDwuu13bJUO4D7DUDscNM7gG2MsYfqKWWEfncspURGNu8+AF+6QkCXUC9Ay1
      OyL1s8eSibUCMQ+dIFvD/kBr/IWMDKBMzfgQi/WXkokIJNBjBL4w8Q6ZAoGAV3u7
      BFiHPVlpe/ILzWNp125+8WMFpA+G7+Ju7TxJwhAcqwv6Yu+PzdPfiqw46BgjDGoq
      outsBoJed1bHr//Y1LCc1jnfB5s2jriOcsM/3cNBLRjavBrfjg212W/Pe1F3R+tC
      AtzHiqcPgvu/KRq80tPBSZf1w+OCDqdxxsPCzr0CgYBli/iVi8IwF3JCd6bIPso1
      VvKSxm3a5/TWQqyoLy+MZw++fPTg4iExapMb3Qz79qHDhElRUAmYsXIa4l3Y8oEq
      cdF/hosG4PTFwCfIbGaT+5uMHnAZCS4/1k2nfhM+H83wxg/81wdVLAw4i7Rc+qyJ
      peIJpwo+Kuf964DexDVglw==
      -----END PRIVATE KEY-----
    routes:
    - matcher:
        prefix: /api/v1/
        prefix_rewrite: ssss
      route_cluster:
        type: RandomRoute
        routes:
        - base_route:
            endpoint: http://192.168.0.1:8888/
        - base_route:
            endpoint: http://192.168.0.2:9987/
    - matcher:
        prefix: /api/v2
        prefix_rewrite: /
      route_cluster:
        type: RandomRoute
        routes:
        - base_route:
            endpoint: https://192.168.0.3:443/

Change config over the Silverwind Dashboard

Manual Certificate

You could type the key and cert in the input of html like following: sss

Letsencrypt Certificate

You could also use the free https certificate of Letsencrypt like following: sss