2
0
mirror of https://github.com/acepanel/panel.git synced 2026-02-04 11:27:17 +08:00

feat: 同步修改

This commit is contained in:
耗子
2024-10-12 22:05:58 +08:00
parent d18bf93571
commit 99cd473680
38 changed files with 388 additions and 551 deletions

View File

@@ -7,7 +7,6 @@ import (
"github.com/spf13/cast"
"github.com/TheTNB/panel/internal/biz"
"github.com/TheTNB/panel/pkg/io"
"github.com/TheTNB/panel/pkg/os"
"github.com/TheTNB/panel/pkg/shell"
"github.com/TheTNB/panel/pkg/systemctl"
@@ -61,59 +60,32 @@ func (r *safeRepo) UpdateSSH(port uint, status bool) error {
}
func (r *safeRepo) GetPingStatus() (bool, error) {
if os.IsRHEL() {
out, err := shell.Execf(`firewall-cmd --list-all`)
if err != nil {
return true, errors.New(out)
}
if !strings.Contains(out, `rule protocol value="icmp" drop`) {
return true, nil
} else {
return false, nil
}
} else {
config, err := io.Read("/etc/ufw/before.rules")
if err != nil {
return true, err
}
if strings.Contains(config, "-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT") {
return true, nil
} else {
return false, nil
}
out, err := shell.Execf(`firewall-cmd --list-all`)
if err != nil {
return true, errors.New(out)
}
if !strings.Contains(out, `rule protocol value="icmp" drop`) {
return true, nil
}
return false, nil
}
func (r *safeRepo) UpdatePingStatus(status bool) error {
var out string
var err error
if os.IsRHEL() {
if status {
out, err = shell.Execf(`firewall-cmd --permanent --remove-rich-rule='rule protocol value=icmp drop'`)
} else {
out, err = shell.Execf(`firewall-cmd --permanent --add-rich-rule='rule protocol value=icmp drop'`)
}
if status {
_, err = shell.Execf(`firewall-cmd --permanent --remove-rich-rule='rule protocol value=icmp drop'`)
} else {
if status {
out, err = shell.Execf(`sed -i 's/-A ufw-before-input -p icmp --icmp-type echo-request -j DROP/-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT/g' /etc/ufw/before.rules`)
} else {
out, err = shell.Execf(`sed -i 's/-A ufw-before-input -p icmp --icmp-type echo-request -j ACCEPT/-A ufw-before-input -p icmp --icmp-type echo-request -j DROP/g' /etc/ufw/before.rules`)
}
_, err = shell.Execf(`firewall-cmd --permanent --add-rich-rule='rule protocol value=icmp drop'`)
}
if err != nil {
return errors.New(out)
}
if os.IsRHEL() {
out, err = shell.Execf(`firewall-cmd --reload`)
} else {
out, err = shell.Execf(`ufw reload`)
return err
}
_, err = shell.Execf(`firewall-cmd --reload`)
if err != nil {
return errors.New(out)
return err
}
return nil

View File

@@ -44,10 +44,13 @@ func (r *settingRepo) Get(key biz.SettingKey, defaultValue ...string) (string, e
func (r *settingRepo) Set(key biz.SettingKey, value string) error {
setting := new(biz.Setting)
if err := app.Orm.Where("key = ?", key).FirstOrInit(setting).Error; err != nil {
return err
if err := app.Orm.Where("key = ?", key).First(setting).Error; err != nil {
if !errors.Is(err, gorm.ErrRecordNotFound) {
return err
}
}
setting.Key = key
setting.Value = value
return app.Orm.Save(setting).Error
}
@@ -278,6 +281,7 @@ func (r *settingRepo) UpdatePanel(version, url, checksum string) error {
_, _ = shell.Execf("systemctl daemon-reload")
_ = io.Remove("/tmp/panel-storage.zip")
_ = io.Remove(filepath.Join(app.Root, "panel/config.example.yml"))
return nil
}

View File

@@ -40,7 +40,7 @@ func (r *sshRepo) UpdateInfo(req *request.SSHUpdateInfo) error {
if err := r.settingRepo.Set(biz.SettingKeySshHost, req.Host); err != nil {
return err
}
if err := r.settingRepo.Set(biz.SettingKeySshPort, req.Port); err != nil {
if err := r.settingRepo.Set(biz.SettingKeySshPort, cast.ToString(req.Port)); err != nil {
return err
}
if err := r.settingRepo.Set(biz.SettingKeySshUser, req.User); err != nil {

View File

@@ -178,7 +178,7 @@ func (r *websiteRepo) Create(req *request.WebsiteCreate) (*biz.Website, error) {
Name: req.Name,
Status: true,
Path: req.Path,
PHP: cast.ToInt(req.PHP),
PHP: req.PHP,
SSL: false,
}
if err := app.Orm.Create(w).Error; err != nil {
@@ -250,7 +250,7 @@ server
# ssl标记位结束
# php标记位开始
include enable-php-%s.conf;
include enable-php-%d.conf;
# php标记位结束
# 错误页配置,可自行设置