4 Commits

Author SHA1 Message Date
bjd
9e0da33c6a 增加重连功能,可动态修改连接参数 2021-01-25 16:03:33 +08:00
bjdgyc
3bb771971c Create CONTRIBUTING.md 2021-01-25 15:15:10 +08:00
bjd
dd83b330eb 发送邮件增加ssl功能 2021-01-22 10:55:49 +08:00
bjd
73d1edd62f 添加邮件发送错误信息 2021-01-12 19:43:41 +08:00
10 changed files with 45 additions and 4 deletions

View File

@@ -124,6 +124,16 @@ sh bridge-init.sh
相关软件下载: https://gitee.com/bjdgyc/anylink-soft
## Discussion
![qq.png](https://gitee.com/bjdgyc/anylink/raw/master/screenshot/qq.png)
添加QQ群: 567510628
## Contribution
欢迎提交 PR、Issues感谢为AnyLink做出贡献
## Other Screenshot
![system.jpg](https://gitee.com/bjdgyc/anylink/raw/master/screenshot/system.jpg)

View File

@@ -100,7 +100,11 @@ func UserSet(w http.ResponseWriter, r *http.Request) {
// 发送邮件
if data.SendEmail {
userAccountMail(data)
err = userAccountMail(data)
if err != nil {
RespError(w, RespInternalErr, err)
return
}
}
RespSucess(w, nil)
@@ -171,6 +175,13 @@ func UserOffline(w http.ResponseWriter, r *http.Request) {
RespSucess(w, nil)
}
func UserReline(w http.ResponseWriter, r *http.Request) {
r.ParseForm()
token := r.FormValue("token")
sessdata.CloseCSess(token)
RespSucess(w, nil)
}
type userAccountMailData struct {
Issuer string
LinkAddr string

View File

@@ -68,7 +68,9 @@ func SendMail(subject, to, htmlBody string) error {
server.Port = dataSmtp.Port
server.Username = dataSmtp.Username
server.Password = dataSmtp.Password
// server.Encryption = mail.EncryptionTLS
if dataSmtp.UseSSl {
server.Encryption = mail.EncryptionSSL
}
// Since v2.3.0 you can specified authentication type:
// - PLAIN (default)

View File

@@ -35,6 +35,7 @@ func StartAdmin() {
r.HandleFunc("/user/del", UserDel)
r.HandleFunc("/user/online", UserOnline)
r.HandleFunc("/user/offline", UserOffline)
r.HandleFunc("/user/reline", UserReline)
r.HandleFunc("/user/otp_qr", UserOtpQr)
r.HandleFunc("/user/ip_map/list", UserIpMapList)
r.HandleFunc("/user/ip_map/detail", UserIpMapDetail)

View File

@@ -2,5 +2,5 @@ package base
const (
APP_NAME = "AnyLink"
APP_VER = "0.0.8"
APP_VER = "0.1.0"
)

View File

@@ -18,13 +18,15 @@ type GroupLinkAcl struct {
// 自上而下匹配 默认 allow * *
Action string `json:"action"` // allow、deny
Val string `json:"val"`
Port uint8 `json:"port"`
Port uint16 `json:"port"`
IpNet *net.IPNet `json:"ip_net"`
Note string `json:"note"`
}
type ValData struct {
Val string `json:"val"`
IpMask string `json:"ip_mask"`
Note string `json:"note"`
}
type Group struct {

View File

@@ -38,6 +38,7 @@ type SettingSmtp struct {
Username string `json:"username"`
Password string `json:"password"`
From string `json:"from"`
UseSSl bool `json:"use_ssl"`
}
type SettingOther struct {

View File

@@ -1,4 +1,7 @@
// AnyLink 是一个企业级远程办公vpn软件可以支持多人同时在线使用。
// +build linux
package main
import (

BIN
screenshot/qq.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -296,6 +296,17 @@ func CloseSess(token string) {
sess.CSess.Close()
}
func CloseCSess(token string) {
sessMux.Lock()
defer sessMux.Unlock()
sess, ok := sessions[token]
if !ok {
return
}
sess.CSess.Close()
}
func DelSessByStoken(stoken string) {
stoken = strings.TrimSpace(stoken)
sarr := strings.Split(stoken, "@")