Viewing 4 posts - 1 through 4 (of 4 total)
  • Author
    Posts
  • #42046
    Marek Kovalcik
    Participant

    Hello, I have a problem while setting up a captive portal.
    Here is a printscreen: https://pasteboard.co/JhBFnyA.png
    i am using this adapter: https://zsecurity.org/product/realtek-rtl8812au-2-4-5-ghz-usb-wireless-adapter/

    I have the dnsmasq.conf and hostapd.conf files. I added the redirecting part to 000-default.conf file for apache2.
    Then I run following (these lines I have in start_captive_portal.sh)
    #!/bin/bash
    service network-manager stop
    echo 1 > /proc/sys/net/ipv4/ip_forward
    iptables –flush
    iptables –table nat –flush
    iptables –delete-chain
    iptables –table nat –delete-chain
    iptables -P FORWARD ACCEPT

    dnsmasq -C dnsmasq.conf
    hostapd hostapd.conf -B
    ifconfig wlan0 10.0.0.1 netmask 255.255.255.0
    service apache2 start

    And got these errors:
    root@kali:~/CaptivePortal# ./start_captive_portal.sh
    iptables: Directory or file does not exist c/sys/net/ipv4/ip_forward

    dnsmasq: failed to bind DHCP server socket: Address is in use
    Configuration file: hostapd.conf
    Using interface wlan0 with hwaddr 54:c9:ff:00:16:57 and ssid “Free WiFi”
    wlan0: interface state UNINITIALIZED->ENABLED
    wlan0: AP-ENABLED
    Job for apache2.service failed because the control process exited with error code.
    See “systemctl status apache2.service” and “journalctl -xe” for details.

    Can you help me?

    #42088
    Diego PérezDiego Pérez
    Participant

    Hi!
    I would recommend to run the commands manually, it would be better.
    The first error is something related to the script you created and the use of >
    The second (dnsmasq) is weired as the address is not being used or you are running the script for a second time.
    For the apache issue use this command before starting it:
    systemctl enable apache2

    At the end of all it saids AP-ENABLED which means that the fake AP should be satrted, but the other errors might be interfering with it.

    Let me know how it goes!
    Diego

    #42098
    Marek Kovalcik
    Participant

    Hello, I run the commands manually but I still get this error after running service apache2 start. I get this error only if I added following to the 000-default.conf file.
    <Directory “/var/www/html”>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ / [L,QSA]
    </Directory>

    root@kali:~/CaptivePortal# service apache2 start
    Job for apache2.service failed because the control process exited with error code.
    See “systemctl status apache2.service” and “journalctl -xe” for details.

    $ systemctl status apache2.service
    OUTOUT: https://pasteboard.co/JhJkeZY.png
    It says there is a syntax error on line 35 of 000-default.conf file. I copied the rewrite rules from course. Are they ok? Is there any mistake in rewrite rules?

    This is my whole 000-default.conf file.
    <VirtualHost *:80>
    ErrorDocument 404 /
    # The ServerName directive sets the request scheme, hostname and port that
    # the server uses to identify itself. This is used when creating
    # redirection URLs. In the context of virtual hosts, the ServerName
    # specifies what hostname must appear in the request’s Host: header to
    # match this virtual host. For the default virtual host (this file) this
    # value is not decisive as it is used as a last resort host regardless.
    # However, you must set it for any further virtual host explicitly.
    #ServerName http://www.example.com

    ServerAdmin webmaster@localhost
    DocumentRoot /var/www/html

    # Available loglevels: trace8, …, trace1, debug, info, notice, warn,
    # error, crit, alert, emerg.
    # It is also possible to configure the loglevel for particular
    # modules, e.g.
    #LogLevel info ssl:warn

    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined

    # For most configuration files from conf-available/, which are
    # enabled or disabled at a global level, it is possible to
    # include a line for only one particular virtual host. For example the
    # following line enables the CGI configuration for this host only
    # after it has been globally disabled with “a2disconf”.
    #Include conf-available/serve-cgi-bin.conf
    </VirtualHost>

    <Directory “/var/www/html”>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC]
    RewriteRule ^(.*)$ http://%1/$1 [R=301,L]

    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)$ / [L,QSA]
    </Directory>

    # vim: syntax=apache ts=4 sw=4 sts=4 sr noet

    #42245
    Diego PérezDiego Pérez
    Participant

    Hi!
    The rules look ok, can you try to reboot kali? Then start apache server again.

    Let me know how it goes!
    Diego

Viewing 4 posts - 1 through 4 (of 4 total)
  • You must be logged in to reply to this topic.
Privacy Overview
ZSecurity logo featuring a stylized red letter Z

This website uses cookies so that we can provide you with the best user experience possible. Cookie information is stored in your browser and performs functions such as recognising you when you return to our website and helping our team to understand which sections of the website you find most interesting and useful.

Strictly Necessary Cookies

Strictly Necessary Cookie should be enabled at all times so that we can save your preferences for cookie settings.

3rd Party Cookies

This website uses Google Analytics and Linkedin to collect anonymous information such as the number of visitors to the site, and the most popular pages.

Keeping these cookies enabled helps us to improve our website.