
Go용 SMB 라이브러리
SMB 통신을 위한 Go 패키지입니다. 현재는 클라이언트 측 기능만 최소한으로 구현되어 있습니다.
다음은 서버와 세션을 수립하는 샘플 클라이언트입니다:
package main
import (
"log"
"github.com/stacktitan/smb/smb"
)
func main() {
host := "172.16.248.192"
options := smb.Options{
Host: host,
Port: 445,
User: "alice",
Domain: "corp",
Workstation: "",
Password: "Password123!",
}
debug := false
session, err := smb.NewSession(options, debug)
if err != nil {
log.Fatalln("[!]", err)
}
defer session.Close()
if session.IsSigningRequired {
log.Println("[-] Signing is required")
} else {
log.Println("[+] Signing is NOT required")
}
if session.IsAuthenticated {
log.Println("[+] Login successful")
} else {
log.Println("[-] Login failed")
}
if err != nil {
log.Fatalln("[!]", err)
}
}