Compare commits

...

4 Commits

Author SHA1 Message Date
Uriel Fanelli 223b65994c Better TLS Configuration 2023-06-18 19:19:55 +02:00
Uriel Fanelli 1af4d062fd Logging MAIL
LOGGING MAIL for STARTTLS
2023-06-18 19:07:35 +02:00
Uriel Fanelli e7bdc4e92b Little better logging
Little better logging
2023-06-18 18:46:52 +02:00
Uriel Fanelli 386c80b6a4 Add Dockerfile
#Start multistage Docker
#Stage 1 : build brutalinks


FROM golang:latest AS zangbuilder
RUN apt install make  git -y
RUN mkdir -p /go/src/zangtumb
RUN git clone https://git.keinpfusch.net/loweel/zangtumb.git /go/src/zangtumb 
WORKDIR /go/src/zangtumb
ENV GO111MODULE=auto 
RUN go build 


#Start multistage Docker
#Stage 3 : put pieces together

FROM debian:latest 
RUN apt update
RUN apt upgrade -y
RUN apt install ca-certificates -y
RUN mkdir -p /opt/zangtumb
WORKDIR  /opt/zangtumb
COPY --from=zangbuilder /go/src/zangtumb /opt/zangtumb/
ENTRYPOINT ["/opt/zangtumb/zangtumb"]
2023-06-18 18:00:22 +02:00
3 changed files with 32 additions and 2 deletions

24
Dockerfile Normal file
View File

@ -0,0 +1,24 @@
#Start multistage Docker
#Stage 1 : build brutalinks
FROM golang:latest AS zangbuilder
RUN apt install make git -y
RUN mkdir -p /go/src/zangtumb
RUN git clone https://git.keinpfusch.net/loweel/zangtumb.git /go/src/zangtumb
WORKDIR /go/src/zangtumb
ENV GO111MODULE=auto
RUN go build
#Start multistage Docker
#Stage 2 : put pieces together
FROM debian:latest
RUN apt update
RUN apt upgrade -y
RUN apt install ca-certificates -y
RUN mkdir -p /opt/zangtumb
WORKDIR /opt/zangtumb
COPY --from=zangbuilder /go/src/zangtumb /opt/zangtumb/
ENTRYPOINT ["/opt/zangtumb/zangtumb"]

View File

@ -259,6 +259,11 @@ loop:
to = nil
buffer.Reset()
case "MAIL":
log.Println("TlsConfigExists: " , s.srv.TLSConfig != nil)
log.Println("TLS_Required: " , s.srv.TLSRequired)
log.Println("We Are in Clear: ", !s.tls)
if s.srv.TLSConfig != nil && s.srv.TLSRequired && !s.tls {
s.writef("530 5.7.0 Must issue a STARTTLS command first")
break

View File

@ -38,10 +38,9 @@ func init() {
if os.Getenv("USETLS") == "true" {
log.Println("Preparing TLS Keys")
ZMakecert()
ZangSmtpServer.ConfigureTLS(CrtFile, KeyFile)
ZangSmtpServer.TLSListener = false
ZangSmtpServer.TLSRequired = true
log.Println("Using TLS")
log.Println("Using TLS: ", ZangSmtpServer.TLSRequired)
} else {
@ -59,6 +58,8 @@ func init() {
func main() {
log.Println("Starting the server....")
ZangSmtpServer.ConfigureTLS(CrtFile, KeyFile)
defer log.Println("Shutting down the server")