Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- func main() {
- var err error
- tzar_syslog, err = syslog.New(syslog.LOG_DAEMON | syslog.LOG_INFO, "TZAR")
- if err != nil {
- fmt.Fprintf(os.Stderr, "Can't create syslog\n")
- return
- }
- if _, err := os.Stat("settings/reserved_tzar"); err == nil {
- master_tzar_ip, err := ioutil.ReadFile("settings/reserved_tzar")
- if err != nil {
- tzar_syslog.Err(fmt.Sprintf("reserved_tzar: ERROR: Can't read file 'settings/reserved_tzar' (%+v)", err))
- return
- }
- run_reserved_tzar(string(master_tzar_ip))
- return
- }
- _, _ = exec.Command("mkdir", "/tmp/tzar").Output()
- _, _ = exec.Command("ln", "-sn", "/tmp/tzar/", "/opt/dssl/tzar/stats").Output()
- _, _ = exec.Command("mkdir", "-p", "_ipc").Output()
- http.HandleFunc("/accounting.html", staticHandler)
- http.HandleFunc("/accounting.js", staticHandler)
- http.HandleFunc("/accounting/", accountingHandler)
- http.HandleFunc("/spamming.html/", staticHandler)
- http.HandleFunc("/spamming/", spammingHandler)
- http.HandleFunc("/login/", loginHandler)
- http.HandleFunc("/mcdump", mcdumpHandler)
- http.HandleFunc("/ace-builds/", staticHandler)
- http.HandleFunc("/admin-secret-keyhole.html", staticHandler)
- http.HandleFunc("/_DNS", staticHandler)
- http.HandleFunc("/stats/", staticHandler)
- http.HandleFunc("/log/tzar/", journal)
- http.HandleFunc("/admin-secret-savehandler", save)
- http.HandleFunc("/admin-secret-loadhandler", load)
- http.HandleFunc("/admin-secret-rpm", rpm)
- http.HandleFunc("/ext-ip", extip)
- http.HandleFunc("/shellexec", shellexec)
- http.HandleFunc("/secret-node-details", NodeDetails)
- http.HandleFunc("/secret-disk-details", DiskDetails)
- http.HandleFunc("/img/", staticHandler)
- http.HandleFunc("/reports.html", staticHandler)
- http.HandleFunc("/dpss/report.html", staticHandler)
- http.HandleFunc("/reports.js", staticHandler)
- http.HandleFunc("/report", report)
- http.HandleFunc("/", defaultHandler)
- http.HandleFunc("/secret-vth-status", statusesHandler)
- http.HandleFunc("/secret-pcn", pcnHandler)
- http.HandleFunc("/reset-superuser-password", resetSuperuserPasswordHandler)
- http.HandleFunc("/dbg", debugHandler)
- go hello()
- go paymaster_watch()
- go notifyAboutProblems()
- go periodicActions()
- go depersonalizedStatisticsUpdate()
- go logd()
- go updateShortVthStatus()
- go mailsTracking()
- go lookingProblems()
- certpool := x509.NewCertPool()
- pem, err := ioutil.ReadFile("settings/CA-CERT.x509.PEM.crt")
- if err != nil {
- tzar_syslog.Err(fmt.Sprintf("CA.key: %+v", err))
- return
- }
- success := certpool.AppendCertsFromPEM(pem)
- if !success {
- tzar_syslog.Err(fmt.Sprintf("can't parse cert pool"))
- return
- }
- server := &http.Server {
- Addr: ":443",
- TLSConfig: &tls.Config {
- ClientAuth: tls.RequireAndVerifyClientCert,
- ClientCAs: certpool,
- InsecureSkipVerify: false,
- },
- }
- var certs []TLSCertificate
- var tzar_tls_cert = TLSCertificate{
- certFile: "settings/certificates/tzar_cert.pem",
- keyFile: "settings/certificates/tzar_key.pem",
- }
- certs = append(certs, tzar_tls_cert)
- updates_tls_cert := TLSCertificate{
- certFile: "settings/certificates/updates_cert.pem",
- keyFile: "settings/certificates/updates_key.pem",
- }
- if updates_tls_cert.CheckExistence() {
- certs = append(certs, updates_tls_cert)
- http.HandleFunc("/updates", updatesHandler)
- } else {
- tzar_syslog.Err(fmt.Sprintf("Updates certificate not exists"))
- }
- err = ListenAndServeTLSSNI(server, certs)
- if err != nil {
- tzar_syslog.Err(fmt.Sprintf("WTF ERROR: %+v", err))
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement