Hogyan kell elindítani FreeBSD-n az xdm-et, hogy az figyeljen a 177-es udp porton?
xdm-config-ban az utolsó sor kikommentezve:
!DisplayManager.requestPort: 0
Xaccess-ben:
* #any host get a login window
Xservers-ben az utolsó sor kikommentezve (lokálisan ne futtasson X szervert):
#:0 local /usr/local/bin/X :0
Elindítom root-ként az xdm-et, az xdm fut, de a 177-es port mégis zárva:
nmap -sU -p177 localhost
Starting Nmap 5.50 ( http://nmap.org ) at 2012-12-09 11:02 CET
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000050s latency).
PORT STATE SERVICE
177/udp closed xdmcp
Nmap done: 1 IP address (1 host up) scanned in 1.17 seconds
Linuxon ez menne.
- 5087 megtekintés
Hozzászólások
Gyarilag -nolisten tcp opcioval van az X inditva. Ezt speciel a "ps auxww|fgrep X" kimeneteben latnod is kell.
Jav: es persze a /usr/local/lib/X11/xdm/Xservers fajlban tudod atirni
Jav2: most ezt nemertem. Ha lokalisan nem futtatsz X-szervert, akkor ki a banat hallgatna azon a porton?
- A hozzászóláshoz be kell jelentkezni
Az xdm-nek kellene figyelnie, abból a célból, hogy amikor egy (távoli) workstation-on futó X (X server) jelentkezik nála, akkor indítsa neki a sessiont (a login képernyőt). Az X program futásáról tehát még nincs szó.
--
ulysses.co.hu
- A hozzászóláshoz be kell jelentkezni
Ja, igazad van, a nolisten az a 6000-s port. (Asziszem.) Hogy inditod az xdm-et? standard /etc/ttys-bol? strace-ld man meg, hogy jo konfig fajlbol olvasod-e az infot.
Mellesleg van LISTEN az Xaccess-ben? (Ja, latom.) Hany interfesz, meg ne nmap-pal nezd elsokent, hanem netstat -tal.
- A hozzászóláshoz be kell jelentkezni
xterm-ből rootként, simán: xdm
Ugyanezeket a dolgokat Linuxon ellenőriztem. Linuxon: xdm fut <-> udp/177 open. xdm nem fut <-> udp/177 closed. FreeBSD-n viszont mindig closed.
- A hozzászóláshoz be kell jelentkezni
Azt is próbáltam, hogy explicite megadom neki a config fájlt (hátha magától nem szedi fel)
#xdm -config /usr/local/lib/X11/xdm-config
Ettől nem változott. A /etc/ttys-ről úgy gondolom, hogy az csak a lokális X sessionra vonatkozik, ami most pont nem érdekes.
- A hozzászóláshoz be kell jelentkezni
Csak a /etc/ttys -re vonatkozo reszre reagalok. FreeBSD-n mostansag az xdm indtasanak a standard modja a ttys fajlban az off on-ra allitasa. Az, hogy ettol futtat-e lokalis X session-t, az nyilvan az xdm-konfig alapjan dol el.
A masik fele a dolognak, hogy valtozatlanul azt mondom, hogy strace / ktrace kene, mert ha Linuxon megy ugyanigy, es FreeBSD-n meg nem, akkor az nekem konfig kulonbseget kelent. Trace-bol konnyebb kinyerni, hogy pontosan milyen fajlokat akar megnyitni, azaz hol nem veszel eszre valamit, amit alap Linuxban maskent allitanak be, mint FreeBSD-n.
- A hozzászóláshoz be kell jelentkezni
Jó, egyelőre feladtam. Leírom azért, hogy mit akartam volna.
A FreeBSD-t qemuban futtatom. Az X is prímán megy, startx-szel indítom konzolból.
A qemuval viszont az a baj, hogy a VGA emulációja kis képernyőfelbontást tesz csak lehetővé, azaz egy kis ablakban kell kínlódni. Ezért azt gondoltam, hogy indítok (a qemus) FreeBSD-ben egy xdm-et, és a qemu hostról X -query-vel (vagy Xephyr -query-vel), vagyis egy nem emulált x szerverrel megyek fel rá, ami akármekkora lehet. Azt gondoltam, hogy ehhez elég, ha az xdm portját (udp/177) forwardolom. Már ott elakadt a dolog, hogy nem látom, hogy megnyílna a 177-es port. A hostból és a questből nézve sem nyílik meg. Aztán lehet, hogy más akadályok is vannak. Ezért megpróbáltam ugyanezt eljátszani FreeBSD helyett egy Debiánnal, de egyelőre az sem sikerült.
- A hozzászóláshoz be kell jelentkezni
Megütközést észlelek, ezért egy kicsit terjeszteném a kultúrát.
Azért használok xdm-et az újabb gdm, kdm stb. helyett, mert ebben könnyen hozzáférhető az alábbi konfiguráció. A konfiguráció 3 helyen tér el a defaulttól:
1) xdm-config-ban az utolsó sor kikommentezve. Az xdmcp egy hálózati szolgáltatás. Kikommentezés nélkül ez a sor letiltja a hálózati szolgáltatás hálózaton keresztül történő elérését. Persze, lehet a biztonságra hivatkozni, de alapvetően mégis csak nevetséges.
!DisplayManager.requestPort: 0
2) Xaccess-ben:
* #any host get a login window
Ez a sor az eredeti konfig fájlban ki van kommentezve, ami megint csak azt jelenti, hogy a hálózati szolgáltatás nem elérhető.
3) Xservers-ben az utolsó sor kikommentezve
#:0 local /usr/local/bin/X :0
E sor hatására az xdm azonnal elindít egy X szervert a lokális gépen. Erre általában nincs szükség, mert különösebb erőfeszítés nélkül egyedül is be tudok gépelni egy startx-et, és ami még fontosabb, a gépek egy részén nincs monitor, tehát teljesen felesleges dolog sehol sem látszó X szervereken login képernyőket futtatni.
- A hozzászóláshoz be kell jelentkezni