Kubuntu를 사용하여 공용 Wi-Fi에 연결

Kubuntu를 사용하여 공용 Wi-Fi에 연결

Android 휴대폰으로 공용 Wi-Fi에 로그인하려고 하면 이 Wi-Fi에 등록하라는 알림을 받은 다음 서비스 약관에 동의해야 하는 기본 브라우저가 열립니다.

내 쿠분투 머신을 사용하여 이 Wi-Fi에 연결하려고 하면 연결되어 있지만 인터넷에 액세스할 수 없다는 메시지만 표시됩니다.

이를 위해 일부 설정을 변경하거나 특수 프로그램을 설치해야 합니까?

답변1

약관 동의 페이지는 WiFi 네트워크 소유자의 종속 포털에서 제공됩니다. 가능한 해결책 중 하나는 /etc/NetworkManager/dispatcher.d/90-open_captive_portal스크립트를 추가하는 것입니다.아치리눅스 위키.

#!/bin/sh -e
# Script to dispatch NetworkManager events
#
# Runs shows a login webpage on walled garden networks.
# See NetworkManager(8) for further documentation of the dispatcher events.

PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

if [ -x "/usr/bin/logger" ]; then
    logger="/usr/bin/logger -s -t captive-portal"
else
    logger=":"
fi

wait_for_process() {
    PNAME=$1
    while [ -z "$(/usr/bin/pgrep $PNAME)" ]; do
        sleep 3;
    done
}

#launch the browser, but on boot we need to wait that nm-applet starts
start_browser() {
    local user="$1"
    local display="$2"

    export DISPLAY="$display"
    wait_for_process nm-applet

    export XAUTHORITY="/home/$user/.Xauthority"

    $logger "Running browser as '$user' with display '$display' to login in captive portal"
    sudo -u "$user" --preserve-env=DISPLAY,XAUTHORITY -H xdg-open http://capnet.elementary.io 2>&1 > /dev/null
}

# Run the right scripts
case "$2" in
    connectivity-change)
    $logger -p user.debug "dispatcher script triggered on connectivity change: $CONNECTIVITY_STATE"
    if [ "$CONNECTIVITY_STATE" = "PORTAL" ]; then
        # Match last column of who's output with ' :[at least one digit] '
        who | awk '$NF ~ /\(:[0-9]+\)/ { print $1 " " substr($NF, 2, length($NF)-2) };' | \
        while read user display; do
            start_browser $user $display || $logger -p user.err "Failed for user: '$user' display: '$display'"
        done
    fi
    ;;
    *)
    # In a down phase
    exit 0
    ;;
esac

스크립트를 추가한 후 NetworkManager 서비스를 다시 시작하거나 시스템을 재부팅해야 합니다.

나는 몇 년 전에 데비안에서 같은 문제를 겪었습니다. 단순히 브라우저를 열고 페이지로 이동하려고 하면 작동하지 않습니다. 해결 방법으로 포털 주소를 찾아야 하며 이는 자주 변경됩니다. 이것은 나에게 영구적인 해결책을 주었다.

관련 정보