looks fine to me
parent
072b1b41d0
commit
0312681d4b
|
|
@ -1,6 +1,7 @@
|
||||||
package server
|
package server
|
||||||
|
|
||||||
import (
|
import (
|
||||||
|
"encoding/base64"
|
||||||
"errors"
|
"errors"
|
||||||
"local/rproxy3/config"
|
"local/rproxy3/config"
|
||||||
"local/rproxy3/storage"
|
"local/rproxy3/storage"
|
||||||
|
|
@ -8,6 +9,7 @@ import (
|
||||||
"log"
|
"log"
|
||||||
"net/http"
|
"net/http"
|
||||||
"net/url"
|
"net/url"
|
||||||
|
"strings"
|
||||||
)
|
)
|
||||||
|
|
||||||
const nsRouting = "routing"
|
const nsRouting = "routing"
|
||||||
|
|
@ -65,10 +67,11 @@ func (s *Server) doAuth(foo http.HandlerFunc) http.HandlerFunc {
|
||||||
return func(w http.ResponseWriter, r *http.Request) {
|
return func(w http.ResponseWriter, r *http.Request) {
|
||||||
rusr, rpwd, ok := config.GetAuth()
|
rusr, rpwd, ok := config.GetAuth()
|
||||||
if ok {
|
if ok {
|
||||||
|
//usr, pwd := getProxyAuth(r)
|
||||||
usr, pwd, ok := r.BasicAuth()
|
usr, pwd, ok := r.BasicAuth()
|
||||||
if !ok || rusr != usr || rpwd != pwd {
|
if !ok || rusr != usr || rpwd != pwd {
|
||||||
w.WriteHeader(http.StatusUnauthorized)
|
w.WriteHeader(http.StatusUnauthorized)
|
||||||
log.Printf("denying basic auth")
|
log.Printf("denying proxy basic auth")
|
||||||
return
|
return
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
@ -83,3 +86,15 @@ func (s *Server) Pre(foo http.HandlerFunc) http.HandlerFunc {
|
||||||
func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
func (s *Server) ServeHTTP(w http.ResponseWriter, r *http.Request) {
|
||||||
s.Pre(s.Proxy)(w, r)
|
s.Pre(s.Proxy)(w, r)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getProxyAuth(r *http.Request) (string, string) {
|
||||||
|
proxyAuthHeader := r.Header.Get("Proxy-Authorization")
|
||||||
|
proxyAuthB64 := strings.TrimPrefix(proxyAuthHeader, "Basic ")
|
||||||
|
proxyAuthBytes, _ := base64.StdEncoding.DecodeString(proxyAuthB64)
|
||||||
|
proxyAuth := string(proxyAuthBytes)
|
||||||
|
if !strings.Contains(proxyAuth, ":") {
|
||||||
|
return "", ""
|
||||||
|
}
|
||||||
|
proxyAuthSplit := strings.Split(proxyAuth, ":")
|
||||||
|
return proxyAuthSplit[0], proxyAuthSplit[1]
|
||||||
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,30 @@
|
||||||
|
-----BEGIN CERTIFICATE-----
|
||||||
|
MIIFJDCCAwygAwIBAgIJALfGZtUid7PTMA0GCSqGSIb3DQEBCwUAMD4xCzAJBgNV
|
||||||
|
BAYTAlVTMQswCQYDVQQIDAJVVDEOMAwGA1UECgwFYnJlZWwxEjAQBgNVBAMMCWxv
|
||||||
|
Y2FsaG9zdDAeFw0xOTAyMjMxODUzMzlaFw0yOTAyMjAxODUzMzlaMD4xCzAJBgNV
|
||||||
|
BAYTAlVTMQswCQYDVQQIDAJVVDEOMAwGA1UECgwFYnJlZWwxEjAQBgNVBAMMCWxv
|
||||||
|
Y2FsaG9zdDCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAL2RHgR4PBGv
|
||||||
|
h8A6dRQeWxhIgUbidlwYt9s8da0An5MekH9UpygsJFC7xUqiCzbMy1SgJXR74muz
|
||||||
|
syNUYC1borwNpFNvQZkiszl8KUhG/J0fYQEihJX8o9lrKMIolrByd++X0VHmoB7h
|
||||||
|
F21fB7MnwobANILTwkw6a5iXn7GF2iWB1LtwhwN+/6/usU8IHMmGr77k131O7PhL
|
||||||
|
ARx8aYrJnZ0fOGy1/ng0jHy+xs5bJ2J3ssT07EGxEdv+XIm0sRwZI+vUJXqW73kB
|
||||||
|
nhCkxMaAMjc6+TDrkCMlIG0FpNvJ4jCxdECbsBxfKrip3NI/SCMevhKbgloESxkE
|
||||||
|
+r1CYwTYLYO8Qf9CY4lb4FkbdainNH1mPv9suVzmn+1cUyY9p0HC4GdvQYo/4BUk
|
||||||
|
lXGIott9TVQniPWDTxo+/Y/AmJig8IjBZecF0CQbdB4jRkM2EdMxORA1sdWsK4rB
|
||||||
|
TtNBdVXPAgI14jvrbWytepoiB/5gzoBMZYGGiY1CHBHT2ZcZzaZpDW59zXvnUoet
|
||||||
|
LA1bTmVg39xVsE9RZFQcCvW7jhNstZYZEAYi64lWvPQi5d3JwQIv4eceLSh+j47i
|
||||||
|
98pJP9eGvQagXwsnEMC2WFNHZYM6ac5yMKS8yq/MrGfPoW/jHYaSiFCqXA5SFluj
|
||||||
|
CmvVDA53+c41xGjwEX9UvoGyPp0bvmkHAgMBAAGjJTAjMCEGA1UdEQQaMBiCCWxv
|
||||||
|
Y2FsaG9zdIILKi5sb2NhbGhvc3QwDQYJKoZIhvcNAQELBQADggIBAHK2o1UIO0LV
|
||||||
|
jKp/Ly2kG4G9P0z3FfT9TwcgQSoqoz/0y2WJS1GiAkEVKmECRQd5aH1GSMO02sZf
|
||||||
|
Yz1o/NjUCX5iU/6WGWqiSoPWLoX25xxpKivTDAJ1qZqnMEJra5i8NzE2rFlA9QV4
|
||||||
|
XsvuQe7XbmdNilVuuTNj+f6v3eW6m5KbqRm3riRU+/BdRmLw09/dfUowftgMSNv2
|
||||||
|
6mCb1F7kxU4esdk4eoAJqqExs1vwG9sDexbcaYecM5nN985T1x7WLhw9rshA2xzO
|
||||||
|
BIpQlNf5OTsJgXmW+VUa2ZnI5TiqVCeKfZcR/RiFTxPGjBudq19sUgM/oERpnP/R
|
||||||
|
rNXd5zbMezFTEJfYcrcTuIrxn6HxIEx06VhQTFsAEXHOTbBMEfsG599TMBTsHweM
|
||||||
|
cAo7E+kE1xveqkmLjkdS16afUQUBt+TiqZTBTJbOowktZrZ/ReYB4tXzCg4K+2Iq
|
||||||
|
jJIssLhyDf9mU91Ig1nYNPT25qZFiuc384bVW5Bdg3XgfIkl1XvB1Fixe90dqvEa
|
||||||
|
eiSQhz98h9Rukk/Wjf6alTJBMb3szzU1dYqYMhxZXY3FZCuh8D60LFXFi7nt8ATj
|
||||||
|
zjVynxm4zns3DGCaiBeOpVPKjgrmx+53sIr91+Q1KMEaPTCk656boNvjBYQWTf4p
|
||||||
|
Q/pKL3/q9WLX5pX5po0DMJOoG+GdZ42u
|
||||||
|
-----END CERTIFICATE-----
|
||||||
|
|
@ -0,0 +1,51 @@
|
||||||
|
-----BEGIN RSA PRIVATE KEY-----
|
||||||
|
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
|
||||||
|
-----END RSA PRIVATE KEY-----
|
||||||
Binary file not shown.
Loading…
Reference in New Issue