Installing Pixelserv-TLS 2.2.1-rc.3 on Tomato Bulld with Adblock

Discussion in 'Tomato Firmware' started by rgnldo, Nov 20, 2018.

  1. rgnldo

    rgnldo Networkin' Nut Member

    [Update] Pixelserv-tls 2.2.1-rc.6 (2018-12-25)

    Changes:
    • CHANGE more efficient processing of requests from clients
    • CHANGE improved handling of timeout aka 'tmo' counter/events
    • CHANGE deprecated '-o SELECT_TIMEOUT' command line option
    • FIX a crash bug in logging LEVEL >= 4
    • FIX "bad" counter aka unknown HTTP requests regression from previous test versions
    • FIX "pth" counter by eliminating a race condition in parsing strings
    You must first install the Entware repository.

    Assuming you have the Entware configured, follow the commands:

    Code:
    opkg update
    opkg list | grep "pixelserv"
    opkg install pixelserv-tls
    opkg install libcurl
    opkg install wget
    Now we will upgrade to the latest beta.

    Code:
    _binfavor=static sh -c "$(wget -qO - https://kazoo.ga/pixelserv-tls/install-beta.sh)"
    Generating the certificates:

    Code:
    mkdir -p /opt/var/cache/pixelserv
    cd /opt/var/cache/pixelserv
    openssl genrsa -out ca.key 1024
    openssl req -key ca.key -new -x509 -days 3650 -sha256 -extensions v3_ca -out ca.crt -subj "/CN=Pixelserv CA"
    chown -R nobody /opt/var/cache/pixelserv
    Activate the interface associated with Pixelserv-tls:
    Code:
    ifconfig br0:pixelserv 192.168.1.3 up
    Edit the /opt/etc/init.d/S80pixelserv-tls file:

    Code:
    #!/bin/sh
    export TZ=$(cat /etc/TZ)
    ENABLED=yes
    PROCS=pixelserv-tls
    ARGS="192.168.1.3"
    PREARGS=""
    PRECMD="ulimit -s 64"
    DESC=$PROCS
    PATH=/opt/sbin:/opt/bin:/opt/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
    
    . /opt/etc/init.d/rc.func
    In the web gui configuration of Tomato builds, under USB and NAS -> Run after mounting:
    Code:
    #!/bin/sh
    #
    # automount script for USB flash drives
    #
    # Details about automount scripts:
    # http://www.linksysinfo.org/index.php?threads/status-logs-dont-update-correctly.69614/#post-240957
    # http://www.linksysinfo.org/index.ph...mission-after-mounting-hdd.70573/#post-252990
    
    # Ensure that only one /opt bindable mount exists. Repeated /opt
    # mounts can happen (Linux will allow this!) if clicking "Mount"
    # or "Save" in some parts of the Tomato GUI.
    
    fslabel="ENTWARE"
    swap="/dev/sda2"
    
    if /bin/grep -q " /opt " /proc/mounts
    then
    /bin/umount /opt
    
    if [[ $? -ne 0 ]]
    then
    echo "umount failed, script not continuing"
    exit 1
    fi
    fi
    
    /bin/mount -o bindable "/tmp/mnt/${fslabel}/opt" /opt
    
    #
    # Add swap
    #
    if /bin/grep -q "${swap}" /proc/swaps
    then
    /sbin/swapoff "${swap}"
    
    if [[ $? -ne 0 ]]
    then
    echo "swapoff failed, bailing..."
    exit 1
    fi
    else
    if [[ -e "${swap}" ]]
    then
    /sbin/swapon "${swap}"
    fi
    fi
    
    #
    # If using Entware-ng, do some stuff. Otherwise don't bother.
    #
    if [[ -e /opt/etc/init.d ]]
    then
    # Launch daemons we have installed per Entware-ng
    if [[ -e /opt/etc/init.d/rc.unslung ]]
    then
    if [ -f /opt/etc/init.d/rc.unslung ]; then
        ifconfig br0:pixelserv 192.168.1.3 up
       /opt/etc/init.d/rc.unslung start
       sleep 1
       service dnsmasq restart
      fi
    fi
    Restart:

    Code:
    /opt/etc/init.d/S80pixelserv-tls restart
    How to create your own custom filter list for Pixelserv-tls

    Code:
    #!/bin/bash
    # Modified Pi-hole script to generate a generic hosts file
    # for use with dnsmasq's addn-hosts configuration
    # original : https://github.com/jacobsalmela/pi-hole/blob/master/gravity-adv.sh
    
    # Address to send ads to. This could possibily be removed, but may be useful for debugging purposes?
    destinationIP="192.168.1.3"  # IP PIXELSERV
    
    outlist='/jffs/final_blocklist.txt'
    tempoutlist="$outlist.tmp"
    
    echo "Getting yoyo ad list..."
    curl -s -d mimetype=plaintext -d hostformat=unixhosts http://pgl.yoyo.org/adservers/serverlist.php? | sort > $tempoutlist
    echo "Getting winhelp2002 ad list..."
    curl -s http://winhelp2002.mvps.org/hosts.txt | grep -v "#" | grep -v "127.0.0.1" | sed '/^$/d' | sed 's/\ /\\ /g' | awk '{print $2}' | sort >> $tempoutlist
    echo "Getting adaway ad list..."
    curl -s https://adaway.org/hosts.txt | grep -v "#" | grep -v "::1" | sed '/^$/d' | sed 's/\ /\\ /g' | awk '{print $2}' | grep -v '^\\' | grep -v '\\$' | sort >> $tempoutlist
    echo "Getting hosts-file ad list..."
    curl -s http://hosts-file.net/.%5Cad_servers.txt | grep -v "#" | grep -v "::1" | sed '/^$/d' | sed 's/\ /\\ /g' | awk '{print $2}' | grep -v '^\\' | grep -v '\\$' | sort >> $tempoutlist
    echo "Getting malwaredomainlist ad list..."
    curl -s http://www.malwaredomainlist.com/hostslist/hosts.txt | grep -v "#" | sed '/^$/d' | sed 's/\ /\\ /g' | awk '{print $3}' | grep -v '^\\' | grep -v '\\$' | sort >> $tempoutlist
    echo "Getting adblock.gjtech ad list..."
    curl -s http://adblock.gjtech.net/?format=unix-hosts | grep -v "#" | sed '/^$/d' | sed 's/\ /\\ /g' | awk '{print $2}' | grep -v '^\\' | grep -v '\\$' | sort >> $tempoutlist
    echo "Getting someone who cares ad list..."
    curl -s http://someonewhocares.org/hosts/hosts | grep -v "#" | sed '/^$/d' | sed 's/\ /\\ /g' | grep -v '^\\' | grep -v '\\$' | awk '{print $2}' | grep -v '^\\' | grep -v '\\$' | sort >> $tempoutlist
    
    # Remove entries from the whitelist file if it exists at the root of the current user's home folder
    echo "Removing duplicates and formatting the list of domains..."
    # Removed the uniq command, using sort -u. Removes the dependency on uniq, which is not available on the router by default or via opkg.
    # Added a rough way to exclude domains from the list. If you have a number of domains to whitelist, a better solution could be explored.
        cat $tempoutlist | sed $'s/\r$//' | sed '/thisisiafakedomain123\.com/d;/www\.anotherfakedomain123\.com/d' | sort -u | sed '/^$/d' | awk -v "IP=$destinationIP" '{sub(/\r$/,""); print IP" "$0}' > $outlist
    
    # Removes the temporary list.
    rm $tempoutlist
    
    # Count how many domains/whitelists were added so it can be displayed to the user
    numberOfAdsBlocked=$(cat $outlist | wc -l | sed 's/^[ \t]*//')
    echo "$numberOfAdsBlocked ad domains blocked."
    In custom configuration Dnsmasq:

    Code:
    addn-hosts=/jffs/final_blocklist.txt
    domain-needed
    bogus-priv
     
    Last edited: Dec 28, 2018
  2. davexx

    davexx New Member Member

    i follow the procedure fine, but it didnt work for me, it show me adds on youtube, also it didnt show me a cert error for youtube ads.
    maybe i didnt know how to use the https block using this server.
     
  3. rgnldo

    rgnldo Networkin' Nut Member

    What model of router and compiler Tomato are you using?
     
  4. davexx

    davexx New Member Member

    ac68u, tomato version 2018.4
     
  5. rgnldo

    rgnldo Networkin' Nut Member

     
  6. davexx

    davexx New Member Member

    all the procedure you post i follow without any issue, the problem is it didnt block anything... i need to setup a proxy server pointing to the bridge interface? or it will work with the dnsmasq inside tomato?
     
  7. eTaurus

    eTaurus Connected Client Member

    Sorry for this noob-question, but how do I check that pixelserv is actually working? It started without problems.

    Do I have to do anything else in Tomatousb?
     
  8. phuklok1

    phuklok1 Network Guru Member

    Could someone with the know how and necessary equipment create a static MIPS build of the latest pixelserv for those of us on older routers using jerrm's external adblock script? Thanks in advance!
     
    Last edited: Dec 3, 2018
  9. Beast

    Beast Network Guru Member

    Its been done, check this link, pixelserv for mips by HunterZ. Its like the third iteam down. Also look at the adblock script there, cant remmber if thats and update of jerms. https://tomato-adblock.weebly.com/
     
  10. rgnldo

    rgnldo Networkin' Nut Member

    This solution was absorbed by Tomato, in the native Adblock of FW. The tip I posted is Pixelserv-tls, with support for TLS 1.3, SNI etc. You should not use native Adblock to configure Pixelserv-tls
     
  11. phuklok1

    phuklok1 Network Guru Member

    Beast, thanks for the reply, I had found that link searching around before, but it is an old version (circa 2015). I was hoping for an updated version.

    I hope in the future we see pixelserv implemented directly in the tomato firmware as an enhancement to the built in adblock. This is the main reason I still use an external script solution.
     
  12. eTaurus

    eTaurus Connected Client Member

    Did you answer to my question? Today I suceeded to get pixelserv-tls up and running, but how do I check if it actually is working?

    Since you seem to have quite a lot of knowledge on the topics of Stubby, Adblock and pixelserv I would like to ask you some questions:
    1. Does pixelserv work with DNS-over-TLS? I activated Stubby using Cloudflare and it's working well.
    2. Is pixelserv an Adblock solution or merely a complement to Tomatos built-in Adblock?
    3. What does the following, found here, mean?
    I'm in the process of learning and understanding Tomatos Adblock, Stubby and pixelserv and I would definitely appreciate if you can answer my question. If you know of online resources concerning these topics you can point me to them.
     
  13. rgnldo

    rgnldo Networkin' Nut Member

    Code:
    root@rgnldo-lan:/tmp/home/root# netstat -lnpW
    Active Internet connections (only servers)
    Proto Recv-Q Send-Q Local Address                                       Foreign Address                                     State       PID/Program name   
    tcp        0      0 0.0.0.0:9091                                        0.0.0.0:*                                           LISTEN      1613/transmission-d
    tcp        0      0 0.0.0.0:8200                                        0.0.0.0:*                                           LISTEN      1813/minidlna
    tcp        0      0 10.0.30.1:139                                       0.0.0.0:*                                           LISTEN      1138/smbd
    tcp        0      0 127.0.0.1:5453                                      0.0.0.0:*                                           LISTEN      5345/stubby
    tcp        0      0 10.0.30.3:80                                        0.0.0.0:*                                           LISTEN      5038/pixelserv-tls
    tcp        0      0 10.0.30.1:80                                        0.0.0.0:*                                           LISTEN      1982/httpd
    tcp        0      0 0.0.0.0:6800                                        0.0.0.0:*                                           LISTEN      1811/aria2c
    tcp        0      0 0.0.0.0:81                                          0.0.0.0:*                                           LISTEN      1092/nginx
    tcp        0      0 0.0.0.0:53                                          0.0.0.0:*                                           LISTEN      5320/dnsmasq
    tcp        0      0 0.0.0.0:22                                          0.0.0.0:*                                           LISTEN      966/dropbear
    tcp        0      0 10.0.30.3:443                                       0.0.0.0:*                                           LISTEN      5038/pixelserv-tls
    tcp        0      0 0.0.0.0:51515                                       0.0.0.0:*                                           LISTEN      1613/transmission-d
    tcp        0      0 10.0.30.1:445                                       0.0.0.0:*                                           LISTEN      1138/smbd
    tcp        0      0 ::1:5453                                            :::*                                                LISTEN      5345/stubby
    tcp        0      0 :::53                                               :::*                                                LISTEN      5320/dnsmasq
    tcp        0      0 :::22                                               :::*                                                LISTEN      966/dropbear
    tcp        0      0 :::23                                               :::*                                                LISTEN      965/telnetd
    tcp        0      0 :::51515                                            :::*                                                LISTEN      1613/transmission-d
    udp        0      0 0.0.0.0:42000                                       0.0.0.0:*                                                       1294/eapd
    udp        0      0 10.0.0.179:54066                                    0.0.0.0:*                                                       1813/minidlna
    udp        0      0 0.0.0.0:53                                          0.0.0.0:*                                                       5320/dnsmasq
    udp        0      0 0.0.0.0:51515                                       0.0.0.0:*                                                       1613/transmission-d
    udp        0      0 0.0.0.0:67                                          0.0.0.0:*                                                       5320/dnsmasq
    udp        0      0 127.0.0.1:5453                                      0.0.0.0:*                                                       5345/stubby
    udp        0      0 239.255.255.250:1900                                0.0.0.0:*                                                       1813/minidlna
    udp        0      0 0.0.0.0:38000                                       0.0.0.0:*                                                       1294/eapd
    udp        0      0 10.0.30.255:137                                     0.0.0.0:*                                                       1136/nmbd
    udp        0      0 10.0.30.1:137                                       0.0.0.0:*                                                       1136/nmbd
    udp        0      0 0.0.0.0:137                                         0.0.0.0:*                                                       1136/nmbd
    udp        0      0 10.0.30.255:138                                     0.0.0.0:*                                                       1136/nmbd
    udp        0      0 10.0.30.1:138                                       0.0.0.0:*                                                       1136/nmbd
    udp        0      0 0.0.0.0:138                                         0.0.0.0:*                                                       1136/nmbd
    udp        0      0 127.0.0.1:38032                                     0.0.0.0:*                                                       1296/nas
    udp        0      0 10.0.30.1:23447                                     0.0.0.0:*                                                       1813/minidlna
    udp        0      0 10.0.30.3:27800                                     0.0.0.0:*                                                       1813/minidlna
    udp        0      0 0.0.0.0:57825                                       0.0.0.0:*                                                       1613/transmission-d
    udp        0      0 0.0.0.0:43000                                       0.0.0.0:*                                                       1294/eapd
    udp        0      0 :::53                                               :::*                                                            5320/dnsmasq
    udp        0      0 ::1:5453                                            :::*                                                            5345/stubby
    udp        0      0 :::123                                              :::*                                                            2222/ntpd
    raw   120624      0 0.0.0.0:2                                           0.0.0.0:*                                           2           1947/igmpproxy
    raw        0      0 0.0.0.0:2                                           0.0.0.0:*                                           2           1947/igmpproxy
    raw        0      0 0.0.0.0:255                                         0.0.0.0:*                                           255         1947/igmpproxy
    I have not tested it yet. Please check and let us know.
    complement. With TLS support...
     
  14. rgnldo

    rgnldo Networkin' Nut Member

    With Stubby, try this mode in Wan Up script:
    Code:
    cp -R /jffs/scripts/stubby.yml /etc
    sleep 1
    service dnsmasq restart
    ifconfig br0:pixelserv 192.168.1.3 up
    logger -t $(basename $0) "br0:pixelserv 192.168.1.3 created."
    sleep 2
    /opt/etc/init.d/S80pixelserv-tls restart
    sleep 2
    service dnsmasq restart
     
    Last edited: Dec 5, 2018
  15. eTaurus

    eTaurus Connected Client Member

    Thank you, it seems to work.

    I presume that I had to change the IP address because using your example gave me problems with internet access for devices connected with LAN.
     
    Last edited: Dec 5, 2018
  16. rgnldo

    rgnldo Networkin' Nut Member

    @eTaurus

    2.2.1-rc.4 (2018-12-5)
    Changes
    • NEW enhance adblocking during playback of YouTube video
    Notes on Blocking YouTube Adverts
    • You must point "manifest.googlevideo.com" to IP address of pixelserv-tls in order to experience the new way of blocking YouTube ads.

    • For Entware users, you may need "opkg install libcurl" in case you see errors on startup.

    • It's known phenomenon that if you recently spend some time on YouTube, tavmight be skewed to a few hundred milliseconds. Rest assured that pixelserv-tlsruns just as fast as before.

    • Only "dynamic" versions are available for this test release. Hence, TLSv1.3 is not available together with the new enhancement.
    Code:
    sh -c "$(wget -qO - https://kazoo.ga/pixelserv-tls/install-2_2_1-rc_4.sh)"
     
  17. Frequenzy

    Frequenzy Addicted to LI Member

    does this pixelserv version can work with not so lean adblock?
     
  18. rgnldo

    rgnldo Networkin' Nut Member

    Maybe it works.
     
  19. rgnldo

    rgnldo Networkin' Nut Member

  20. eTaurus

    eTaurus Connected Client Member

    Going to the serverstats page only shows zeros. Pixelserv doesn't seem to work. I'm using Stubby, Adblock and the Wanup script you proposed some posts above. Do I have to create a custom filter list and if so, what name should it have and where do I place it?

    Edit: And the update to RC5 does not seem to work, nothing happens.
     
    Last edited: Dec 18, 2018
  21. rgnldo

    rgnldo Networkin' Nut Member

    You leave the block list with the Pixelserv-tls IP. Example: 192.168.1.3 ad.doubleclick.net
    You must install libcurl in Entware.
     
  22. rgnldo

    rgnldo Networkin' Nut Member

    @eTaurus I fixed the post. Check the steps.
     
  23. eTaurus

    eTaurus Connected Client Member

    Okay, I followed your instructions to the point, pixelserv is running and listening, but I still see only zeros on the servstats page. I do not know if pixelserv actually is doing something.
     
  24. davexx

    davexx New Member Member

    @rgnldo i can get it working.
    i put your new script on wan up, pointing all dns to my pixel ip.
    it took a lot of time after boot to keep it working even on my cellphone.

    if you have a better process to put the script instead of copy everything on wan up, please tell me.
    also i put the script on a cron every 1 week it update the list.
     
  25. rgnldo

    rgnldo Networkin' Nut Member

    The adblock script should be named update_adlist.sh. Add script execution to the scheduler for every 24h.
    Code:
    #!/bin/sh
    #
    # automount script for USB flash drives
    #
    # Details about automount scripts:
    # http://www.linksysinfo.org/index.php?threads/status-logs-dont-update-correctly.69614/#post-240957
    # http://www.linksysinfo.org/index.ph...mission-after-mounting-hdd.70573/#post-252990
    
    # Ensure that only one /opt bindable mount exists. Repeated /opt
    # mounts can happen (Linux will allow this!) if clicking "Mount"
    # or "Save" in some parts of the Tomato GUI.
    
    fslabel="ENTWARE"
    swap="/dev/sda2"
    
    if /bin/grep -q " /opt " /proc/mounts
    then
    /bin/umount /opt
    
    if [[ $? -ne 0 ]]
    then
    echo "umount failed, script not continuing"
    exit 1
    fi
    fi
    
    /bin/mount -o bindable "/tmp/mnt/${fslabel}/opt" /opt
    
    #
    # Add swap
    #
    if /bin/grep -q "${swap}" /proc/swaps
    then
    /sbin/swapoff "${swap}"
    
    if [[ $? -ne 0 ]]
    then
    echo "swapoff failed, bailing..."
    exit 1
    fi
    else
    if [[ -e "${swap}" ]]
    then
    /sbin/swapon "${swap}"
    fi
    fi
    
    #
    # If using Entware-ng, do some stuff. Otherwise don't bother.
    #
    if [[ -e /opt/etc/init.d ]]
    then
    # Launch daemons we have installed per Entware-ng
    if [[ -e /opt/etc/init.d/rc.unslung ]]
    then
    if [ -f /opt/etc/init.d/rc.unslung ]; then
        ifconfig br0:pixelserv 192.168.1.3 up
       /opt/etc/init.d/rc.unslung start
       sleep 1
       service dnsmasq restart
      fi
    fi
    
     
    Last edited: Dec 21, 2018
  26. eTaurus

    eTaurus Connected Client Member

    Could you point me to the guide you are using for to install Entware? Maybe my problems start with this, because your new script for mounting USB storage does not work for me.
    How do you point all DNS to your pixel ip?
    Which of your scripts is the adblock script and what is the command for the scheduler?

    I really do not seem to get it right. I really wish there was a comprehensive guide to pixelserv.
     
  27. rgnldo

    rgnldo Networkin' Nut Member

  28. davexx

    davexx New Member Member

    for me this script is useless, because i use on usb support this
    before unmounting
    #!/bin/sh
    /opt/etc/init.d/rc.unslung stop
    sleep 15
    for i in `cat /proc/mounts | awk '/ext3/{print($1)}'` ; do
    mount -o remount,ro $i
    done

    and after mounting
    #!/bin/sh
    /opt/etc/init.d/rc.unslung start
     
  29. phuklok1

    phuklok1 Network Guru Member

    I would really love to see this functionality built into fresh tomato. first it would simplify things on many levels, second it would be wonderful for us on MIPS equipment that can't install the latest entware and it would be a huge upgrade to the current built in adblock. do you think this is even a possibility? Or are there other limitations that would make this impossible.
     
  30. rgnldo

    rgnldo Networkin' Nut Member

    Native Adblock works fine. I particularly prefer custom Adblock with Pixelserv-tls
     
  31. rgnldo

    rgnldo Networkin' Nut Member

    I have my reasons.
     
  32. davexx

    davexx New Member Member

    @rgnldo i have two question

    1. how you do to parse http://IP_PIXELSERV/servstats to view in a nice way?

    2. i didnt know why if i copy the script of adblock before this, it works but if i call sh adblock.sh it didnt work?
    cp -R /jffs/scripts/stubby.yml /etc
    sleep 1
    service dnsmasq restart
    ifconfig br0:pixelserv 192.168.2.3 up
    logger -t $(basename $0) "br0:pixelserv 192.168.2.3 created."
    sleep 2
    /opt/etc/init.d/S80pixelserv-tls restart
    sleep 2
    service dnsmasq restart
     
  33. davexx

    davexx New Member Member

    its like the dnsmasq didnt catch the file, even if i restart the service of dnsmasq and dns, same problem.

    other question can i put the script on /opt/ using entware or it need to be on /jffs/?
     
  34. rgnldo

    rgnldo Networkin' Nut Member

    You should adapt the script to your network configuration.
    The issue is the boot time of the Pixelserv-tls binary by Entware. You should be concerned about boot time
     
  35. davexx

    davexx New Member Member

    its adapted to my network because it works, but i have that issue, i know its a boot time, what is your suggestion about it?
     
  36. eTaurus

    eTaurus Connected Client Member

    Today I updated to the release build 2.2.1 by issuing
    Code:
    opkg update
    opkg upgrade
    It has the no_tls1_3 flag. Installing the statically linked version doesn't work with this command:
    Code:
    _binfavor=static sh -c "$(wget -qO - https://kazoo.ga/pixelserv-tls/install-beta.sh)"
    Nothing happens. How do I get back to TLS 1.3 support?

    Otherwise I finally got it running by using Entware Adblock and the "not-so-lean" script. Thanks to @rgnldo!
     
    Last edited: Dec 30, 2018
  37. rgnldo

    rgnldo Networkin' Nut Member

    Statically linked pixelserv-tls (support TLS 1.0, 1.2 and 1.3)

    Congratulations

    I tested version 2.2.1 on the bank sites that I am a client. Everything is OK!
     
    Last edited: Dec 30, 2018
  38. rgnldo

    rgnldo Networkin' Nut Member

    For best performance, in dnsmasq custom configuration:
    Code:
    server=/pool.ntp.org/1.1.1.1
    server=/ntp.alsysdata.net/1.1.1.1
    In Script -> Firewall:
    Code:
    iptables -t nat -C PREROUTING -i br0 -p udp --dport 53 -j DNAT --to $(nvram get lan_ipaddr) > /dev/null 2>&1
    [ $? -ne 0 ] && iptables -t nat -A PREROUTING -i br0 -p udp --dport 53 -j DNAT --to $(nvram get lan_ipaddr)
    iptables -t nat -C PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to $(nvram get lan_ipaddr) > /dev/null 2>&1
    [ $? -ne 0 ] && iptables -t nat -A PREROUTING -i br0 -p tcp --dport 53 -j DNAT --to $(nvram get lan_ipaddr)
     
  39. eTaurus

    eTaurus Connected Client Member

    Yeah, thanks, but the command that I mentioned in my post does not work.

    Okay, had to do
    Code:
    opkg install ca-certificates
     
    Last edited: Jan 1, 2019
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice