mirror of https://github.com/bjdgyc/anylink.git
commit
3c3b3110a2
|
@ -4,6 +4,9 @@
|
|||
[](https://pkg.go.dev/github.com/bjdgyc/anylink)
|
||||
[](https://goreportcard.com/report/github.com/bjdgyc/anylink)
|
||||
[](https://codecov.io/gh/bjdgyc/anylink)
|
||||

|
||||

|
||||

|
||||
|
||||
AnyLink 是一个企业级远程办公sslvpn的软件,可以支持多人同时在线使用。
|
||||
|
||||
|
@ -204,9 +207,9 @@ eth_gateway="192.168.1.1"
|
|||
sh bridge-init.sh
|
||||
```
|
||||
|
||||
## Soft
|
||||
## 常见问题
|
||||
|
||||
相关软件下载: QQ群共享文件: 567510628
|
||||
请前往 [问题地址](question.md) 查看具体信息
|
||||
|
||||
## Discussion
|
||||
|
||||
|
@ -214,6 +217,8 @@ sh bridge-init.sh
|
|||
|
||||
添加QQ群: 567510628
|
||||
|
||||
QQ群共享文件有相关软件下载
|
||||
|
||||
## Contribution
|
||||
|
||||
欢迎提交 PR、Issues,感谢为AnyLink做出贡献。
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
# 常见问题
|
||||
|
||||
* 远程桌面连接
|
||||
> 本软件不支持远程桌面连接,请注意。
|
||||
|
||||
* 私有证书问题
|
||||
> 可以通过 https://github.com/square/certstrap 生成私有的证书, 然后把CA证书放在客户端机器上即可以连接。
|
|
@ -227,12 +227,19 @@ func userAccountMail(user *dbdata.User) error {
|
|||
return err
|
||||
}
|
||||
|
||||
setting := &dbdata.SettingOther{}
|
||||
err = dbdata.SettingGet(setting)
|
||||
if err != nil {
|
||||
base.Error(err)
|
||||
return err
|
||||
}
|
||||
|
||||
data := userAccountMailData{
|
||||
LinkAddr: base.Cfg.LinkAddr,
|
||||
LinkAddr: setting.LinkAddr,
|
||||
Group: strings.Join(user.Groups, ","),
|
||||
Username: user.Username,
|
||||
PinCode: user.PinCode,
|
||||
OtpImg: fmt.Sprintf("https://%s/otp_qr?id=%d&jwt=%s", base.Cfg.LinkAddr, user.Id, tokenString),
|
||||
OtpImg: fmt.Sprintf("https://%s/otp_qr?id=%d&jwt=%s", setting.LinkAddr, user.Id, tokenString),
|
||||
}
|
||||
w := bytes.NewBufferString("")
|
||||
t, _ := template.New("auth_complete").Parse(htmlBody)
|
||||
|
|
|
@ -30,7 +30,7 @@ var (
|
|||
// rekey-method = ssl
|
||||
|
||||
type ServerConfig struct {
|
||||
LinkAddr string `json:"link_addr"`
|
||||
// LinkAddr string `json:"link_addr"`
|
||||
ServerAddr string `json:"server_addr"`
|
||||
AdminAddr string `json:"admin_addr"`
|
||||
ProxyProtocol bool `json:"proxy_protocol"`
|
||||
|
|
|
@ -16,7 +16,6 @@ type config struct {
|
|||
}
|
||||
|
||||
var configs = []config{
|
||||
{Typ: cfgStr, Name: "link_addr", Usage: "vpn服务对外地址", ValStr: "vpn.xx.com"},
|
||||
{Typ: cfgStr, Name: "server_addr", Usage: "前台服务监听地址", ValStr: ":443"},
|
||||
{Typ: cfgStr, Name: "admin_addr", Usage: "后台服务监听地址", ValStr: ":8800"},
|
||||
{Typ: cfgBool, Name: "proxy_protocol", Usage: "TCP代理协议", ValBool: false},
|
||||
|
|
|
@ -21,12 +21,9 @@ issuer = "XX公司VPN"
|
|||
admin_user = "admin"
|
||||
#pass 123456
|
||||
admin_pass = "$2a$10$UQ7C.EoPifDeJh6d8.31TeSPQU7hM/NOM2nixmBucJpAuXDQNqNke"
|
||||
jwt_secret = "iLmspvOiz*%ovfcs*wersdf#^heR8pNU^4XxBm&mW$aPCjSRMbYH#&"
|
||||
jwt_secret = "iLmspvOiz*%ovfcs*wersdf#heR8pNU4XxBm&mW$aPCjSRMbYH#&"
|
||||
|
||||
|
||||
#vpn服务对外地址,影响开通邮件二维码
|
||||
link_addr = "vpn.xx.com"
|
||||
|
||||
#前台服务监听地址
|
||||
server_addr = ":443"
|
||||
#后台服务监听地址
|
||||
|
|
|
@ -55,6 +55,7 @@ func initData() {
|
|||
_ = SettingSet(smtp)
|
||||
|
||||
other := &SettingOther{
|
||||
LinkAddr: "vpn.xx.com",
|
||||
Banner: "您已接入公司网络,请按照公司规定使用。\n请勿进行非工作下载及视频行为!",
|
||||
AccountMail: accountMail,
|
||||
}
|
||||
|
|
|
@ -42,6 +42,7 @@ type SettingSmtp struct {
|
|||
}
|
||||
|
||||
type SettingOther struct {
|
||||
LinkAddr string `json:"link_addr"`
|
||||
Banner string `json:"banner"`
|
||||
AccountMail string `json:"account_mail"`
|
||||
}
|
||||
|
|
|
@ -13,11 +13,6 @@ import (
|
|||
"github.com/gorilla/mux"
|
||||
)
|
||||
|
||||
func GetCertificate(*tls.ClientHelloInfo) (*tls.Certificate, error) {
|
||||
cert, err := tls.LoadX509KeyPair(base.Cfg.CertFile, base.Cfg.CertKey)
|
||||
return &cert, err
|
||||
}
|
||||
|
||||
func startTls() {
|
||||
addr := base.Cfg.ServerAddr
|
||||
certFile := base.Cfg.CertFile
|
||||
|
@ -28,7 +23,6 @@ func startTls() {
|
|||
NextProtos: []string{"http/1.1"},
|
||||
MinVersion: tls.VersionTLS12,
|
||||
InsecureSkipVerify: true,
|
||||
GetCertificate: GetCertificate,
|
||||
}
|
||||
srv := &http.Server{
|
||||
Addr: addr,
|
||||
|
|
|
@ -8,6 +8,6 @@ User=root
|
|||
WorkingDirectory= /usr/local/anylink-deploy
|
||||
Restart=on-failure
|
||||
RestartSec=5s
|
||||
ExecStart=/usr/local/anylink-deploy/anylink -conf=conf/server.toml
|
||||
ExecStart=/usr/local/anylink-deploy/anylink --conf=conf/server.toml
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
|
|
|
@ -30,6 +30,14 @@
|
|||
|
||||
<el-tab-pane label="其他设置" name="dataOther">
|
||||
<el-form :model="dataOther" ref="dataOther" :rules="rules" label-width="100px" class="tab-one">
|
||||
|
||||
<el-form-item label="vpn对外地址" prop="link_addr">
|
||||
<el-input
|
||||
placeholder="请输入内容"
|
||||
v-model="dataOther.link_addr">
|
||||
</el-input>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="Banner信息" prop="banner">
|
||||
<el-input
|
||||
type="textarea"
|
||||
|
|
Loading…
Reference in New Issue