Friday, September 12, 2014

VNCviewer tuning,keyboard fixing,securit - x11vnc und tightvnc

VNC läuft "out of the box" nicht ganz rund - im Detail:

- Keyboard-Tasten falsch "gemapt", speziell das Pipe-Symbol "|"
- langsam
- nicht verschlüsselt
- jeder Window-Manger bringt eine eigene Lösung mit, die zumeist in größeren Firmen nicht erlaubt ist, da man eingeloggt sein muss.

Auf dem entfernten Rechner müssen wir erstmal uns einloggen und eine Passwort Datei erstellen:

x11vnc -storepasswd

und unseren ssh key in ~/.ssh/authorized_keys2 ablegen.

Damit x11vnc auf dem enfernten Rechner über dessen loopback device auf das X11 zugreifen kann, müssen Sie das X ohne "-nolisten tcp" laufen lassen, also z.B. in OpenSUSE 13.1 in /etc/sysconfig/displaymanager DISPLAYMANAGER_XSERVER_TCP_PORT_6000_OPEN="yes" setzen.
Um ungewollten Remotezugriff zu unterbinden einfach den Port in der Firewall zumachen (normal 6000/6001...).


Danach sollten wir per ssh einen Tunnel aufbauen und den vnc server als root user starten können:

mmeiste@linux-540k:~> ssh -t -L 5959:localhost:5959 root@ 'x11vnc -flashcmap -ncache 10 -ncache_cr -display :0 -rfbport 5959 -noxdamage -wireframe -ncache -xkb --rfbauth /root/.vnc/passwd -notruecolor -8to24 -noncache -xwarppointer -geometry 3840x900 -auth guess'
 

(Note: Wenn man beim x11vnc die geometry nicht festlegt, sieht man am unteren Bildschirmrand alte Fenster etc.)

Da Geschwindigkeit alles ist, benutze ich beim client "-bgr233" in Verbindung mit den Encodings tight und copyrect:
mmeiste@linux-540k:~> vniewer -bgr233 -encodings "tight copyrect" -noshared localhost:5959 -geometry 1200x1200

Die geometry gebe ich hier an, damit es auf mein kleineres Display passt ohne großes gezuppel/anpassen.

Da oft - ok sehr oft die Tastaturbelegung nicht passt kann man wichtige Tasten wie folgt fixen:
xev oder
showkey -k
geben den keycode aus - unter X funzt showkey nicht immer, dort xev benutzen, und den Focus dort lassen, dann die Taste drücken.

mit folgenden Befehl könnt ihr dann dem keycode z.B. ein Pipe-Symbol zuweisen:
xmodmap -e "keycode 94 = bar"


Have a nice Day!

Wednesday, December 30, 2009

USB Stick unter Linux

Die meisten USb-Sticks funktionieren einwandfrei unter linux, dennoch muss man ein paar Kniffe kennen:

KNetworkmanager funzt unter openSUSE 11.2 schon sehr gut, man kann die PIN etc. angeben, dennoch kann es sein dass sich nichts tut.

Tipp: Viele USB-Sticks melden sich zusätzlich als Cdrom-Laufwerk, in diesem Status funzt das Modem nicht korrekt. Ein "eject /dev/sr1" hilft. Um das richtige Device herauszufinden in "dmesg |tail -f" die Meldungen verfolgen während sie den Stick einstecken.

Wenn sie mit wvdial eine Verbindung herstellen wollen ist es ratsam eine wvdial konfiguration zu haben die nur die PIN setzt, da diese nur einmal nach dem einstecken des Sticks gesetzt werden kann:

---snip-/etc/wvdial-pin.conf--
Dialer Defaults]
Modem = /dev/ttyUSB0
Baud = 115200
Init1 = ATZ
Init2 = AT +CPIN=1234
Init3 = ATQ0 V1 E1 S0=0 &C1 &D2
Init4 = AT +CGDCONT=1,"IP","surfo2"
Area Code =
Phone = *99#
Username = freedom
Password = freedom
Ask Password = 0
Dial Command = ATDT
Stupid Mode = 1
Compuserve = 0
Force Address =
Idle Seconds = 300
DialMessage1 =
DialMessage2 =
ISDN = 0
Auto DNS = 1
---snap---

Have a lot of fun!

Tuesday, April 24, 2007

PocketPc2003 IPAQ h1940 using Sony Erriccson v800 bluetooth modem for internet connection

Hi,

as every time I use windows I encountered again a strange problem...

If you would try to use your mobile phone as modem you could get the same trouble:

Problem: the bluetooth connection works but the dialing doesn't.

Solution:
1. Install a registry editor on your pda (TRE was my choice www2r.biglobe.ne.jp/~tascal/)
2. change the entries under:
HKEY_LOCAL_MASCHINE
->Drivers -> Unimodem -> Init
change the first at command named "1" to 'at +cgdcont=1,"IP","surfo2"'
where surfo2 is your Internetprovider host name - be carefully here to add the correct one -
if not you would not correct charged!
Delete the second init command as it is not necessary

Thats it, have fun!

Thursday, March 16, 2006

disk full?

Hi falls ihr einen Server zu überwachen habt und nicht ständig nachschauen wollt, ob noch genügen Speicherplatz frei ist, könnte dieses Script für euch nützlich sein. Es prüft nach ob auf den Devices noch genügen Platz in MB vorhanden ist:


---snip---
#!/bin/sh

if [ "x$2" == "x" ] ; then
echo "usage: $0 "
echo "example: $0 \"^/dev/sda\" 50"
exit 1
fi

OLD_IFS=$IFS
IFS=$'\n'
for i in $(df -h|grep "$1"|grep -v boot|sed -e "s/ */ /g"|cut -d ' ' -f 1,4,6)
do
DEVICE=$(echo $i|cut -d ' ' -f 1)
SPACE=$(echo $i|cut -d ' ' -f 2)
MOUNTPOINT=$(echo $i|cut -d ' ' -f 3)

if [ "G" == ${SPACE:$(expr ${#SPACE} - 1):$( expr ${#SPACE} - 1)} ] ; then
#there are gigabytes free...
continue
fi

j=${SPACE:0:$(expr ${#SPACE} - 1)} #2>/dev/null
if [ $? != 0 ] ; then
echo "usage: $0 "
echo "example: $0 "^/dev/sda" 50"
exit 1
fi

if [ $2 -ge $j ] ; then
echo "WARNING: disk full on $HOST! just $j MB left on device $DEVICE mounted to $MOUNTPOINT!"
fi
done

IFS=$OLD_IFS
---snap---


Example:
bash~> diskfull.sh "^/dev/hda" 100

Monday, February 06, 2006

Bashing Teil 2 - Dateien zeilenweise einlesen

Viele stoßen schnell darauf über mehrere Segmente iterieren zu wollen z.B.:


for i in `ls -1 --color="none"`
do
echo -n $i
test -d "$i" && echo -n " ist ein verzeichnis..."
echo
done


Das funktioniert auch soweit kein Leerzeichen oder ein anderes Whitespace in dem Dateinamen der
Ausgabe von "ls" vorhanden ist (Die Ausgabe von ls, ist wie eine Datei - es könnte hier auch z.B.
"ls -1 --color="none>/tmp/ls_ausgabe.txt;cat /tmp/ls_ausgabe.txt" stehen.

#wenn man es also "sicherer" haben will, sollte man den IFS zuvor richtig setzen:

IFS_SIK=$IFS #originalen IFS sichern
IFS=$'\n'


#folgender Befehl zeigt den Inhalt von IFS an:

set|grep IFS


#Danach sollte/muss man den alten IFS wieder setzen, damit nachfolgende Anweisungen korrekt #funktionieren:

IFS=$OLD_IFS

Thursday, February 02, 2006

wol + wlan = wow oder wowl?

Hallo,

lieber Reisender :). Manch einer hat vielleicht schonmal was von wol (wake on lan) gehört. Schöner ist es es aber, wenn man einen Rechner, z.B. seinen Server per Funk (WLAN) aufwecken könnte. Gesagt und getan, hier die Info, wie WOW mit der SUSE Linux 10.0 funktioniert.


  • wol rpm-paket installieren
  • damit auch das etherpaket seinen weg findet muss man die Routen ins eigentliche Netz setzen:
    linux:~ # route add -net 10.2.0.0 netmask 255.255.255.255 dev wlan0
    linux:~ # route add -net 0.0.0.0 netmask 0.0.0.0 gw 10.2.0.0 dev wlan0
  • danach kann man mit:
    linux:~ # wol 00:30:05:3B:AC:8F
    den entfernten Rechner aufwecken.


Have a lot of fun!