openconnect开机连接并允许lan接入

渡鸦 Linux Ocserv评论487阅读模式

下面的为脚本代码,注释非常清晰,阅读没有问题

cat << EOF > /root/anyconnect.sh
#!/bin/bash

# OpenConnect服务器地址和认证信息
server="your_server_address" 
username="your_username" 
password="your_password"

# NAT规则相关信息
nat_subnet="10.0.0.0/24"
nat_interface="tun0"

# 连接检测间隔(以秒为单位)
check_interval=60

# 检查OpenConnect连接状态的函数
check_connection() {
    if ! pgrep -x "openconnect" >/dev/null; then
        echo "OpenConnect未运行,重新连接..."
        connect
    fi
}

# 检查NAT规则是否存在并添加规则
check_nat_rule() {
    if ! iptables -t nat -C POSTROUTING -s "$nat_subnet" -o "$nat_interface" -j MASQUERADE >/dev/null 2>&1; then
        echo "NAT规则不存在,添加规则..."
        iptables -t nat -A POSTROUTING -s "$nat_subnet" -o "$nat_interface" -j MASQUERADE
        echo "NAT规则已添加"
    fi
}

# 运行OpenConnect连接命令
connect() {
    echo "连接到OpenConnect服务器..."
    echo "$password" | openconnect -b "$server" --user="$username" --passwd-on-stdin
    if [ $? -eq 0 ]; then
        echo "连接成功"
    else
        echo "连接失败"
    fi
}

# 主循环
while true; do
    check_connection
    check_nat_rule
    sleep "$check_interval"
done
EOF

设置开机自启动

echo "@reboot root sleep 10s && /root/any.sh >> /dev/tty1 2>&1" >> /etc/crontab

文章末尾固定信息

weinxin
我的微信
我的微信
微信扫一扫
 
渡鸦
  • 本文由 渡鸦 发表于 2023年6月23日19:05:46
  • 转载请务必保留本文链接:https://www.ixmu.net/39.html
匿名

发表评论

匿名网友
:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:
确定

拖动滑块以完成验证