Stránka 1 z 1

Dude, Linux a HTTP

Napsal: 14 May 2014 18:58
od Petr S.
Zdravím, povedlo se někomu z vás rozjet na linuxu Dude a povolit na něm http? Já když ho povolím, tak to stejně neběží. Podle netstat je port 80 mrtev... :( Mám špatné tušení, že je to tím wine. Škoda, že nemaj verzi přímo pro linux. Díky.

Re: Dude, Linux a HTTP

Napsal: 14 May 2014 21:27
od Majklik
Pokud to pouštíš pod tím wine jako root, tak by ti port 80 měl jet. Pokud jako neprivilegovaný uživatel, tak samozřejmě ne, protože jen privilegovaný uživatle normálně může použít porty pod 1024. Nastav si v nastavení Dude jiný port než 80 a pojede to. Pokud to chceš mít dostupné na 80 a nepoužít roota, tak v dude dej port 8080 a pomocí "iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-ports 8080" si příchozí spojení přehoď. Další možnost je pohrát si s capabilities procesu, kdy se to pustí jako root s přechodem na jiného uživatele beze ztrát všech práv a pak zahodit všechna právy vyjma možnosti použít portu pod 1024. Asi něco jako "sucap <uživatel> <skupina> execcap 'cap_net_bindservice=eip' wine <kde je dude>".

Re: Dude, Linux a HTTP

Napsal: 15 May 2014 08:30
od Petr S.
Spouštím to jako službu přes skript (běží to tedy pod rootem): Zkoušel jsem tedy měnit i číslo portu, ale HTTP mi tam neběží...

Kód: Vybrat vše

#!/bin/bash

### BEGIN INIT INFO
# Provides: dude
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Dude Server
### END INIT INFO

action=${1}

# ----------------------------------------------
# User Options
# ----------------------------------------------
xvfb_pidfile='/var/run/dude-xvfb.pid'
wine_pidfile='/var/run/dude-wine.pid'
virtual_display=':1'
dude_path='/srv/dude'
# ----------------------------------------------

export DISPLAY=$virtual_display
export WINEPREFIX=$dude_path

start ()
{
    echo -n 'Starting Dude virtual display: '
    Xvfb $virtual_display &> /dev/null &
    echo $! > $xvfb_pidfile
    echo 'ok'
    echo -n 'Starting Dude Server: '
    sleep 5
    wine 'c:\program files\dude\dude.exe' --server &> /dev/null &
    echo $! > $wine_pidfile
    echo 'ok'
}

stop ()
{
    echo -n 'Stopping Dude Server: '
    kill $(cat $wine_pidfile)
    rm -f $wine_pidfile
    sleep 5
    echo 'ok'
    echo -n 'Stopping Dude virtual display: '
    kill $(cat $xvfb_pidfile)
    rm -f $xvfb_pidfile
    echo 'ok'
}

case "$action" in
    start)
        start
    ;;

    stop)
        stop
    ;;

    *)
        echo "Usage: $0 {start|stop}"
    ;;
esac

# -----------------------------------------------------------------------

Re: Dude, Linux a HTTP

Napsal: 18 May 2014 19:57
od Petr S.
Žádný nápad?