Ebben a leírásban SSH-tunnelezett kapcsolatot állítunk be Windows (desktop vagy notebook) munkaállomásról egy (távoli) Samba szerverre, amelyet elsősorban fájlkiszolgálóként szeretnénk használni.
===== Szerver oldali teendők =====
A szerver oldalon létre kell hozni a (//Samba/Windows mapped//) Linux felhasználót és be kell sorolni a jogosultságainak megfelelő (//Samba/Windows-mapped//) Linux csoportokba. Ennek módja a használt backendtől és adminisztrációs felülettől (pl. tdbsam///Samba Manager//, LDAP/[[http://phpldapadmin.sourceforge.net/wiki/index.php/Main_Page|phpLDAPadmin]], egyéb [[http://www.samba.org/samba/GUI/|Samba GUI]], stb.) függ.
Ezen kívül szükségünk lesz egy SSH-tunnelezésre alkalmas, //passphrase//-zel védett RSA-2 kulcspárra, melynek privát kulcsa legyen //PuTTY .ppk// formátumú, publikus kulcsát pedig a létrehozott (//Samba/Windows mapped//) Linux felhasználó //~/.ssh/authorized_keys2// könyvtárában kell elhelyeznünk, célszerűen az alábbi korlátozásokkal:
command="/bin/false",no-pty,no-X11-forwarding,no-agent-forwarding,no-port-forwarding,permitopen="localhost:139",permitopen="127.0.0.1:139",permitopen="localhost:445",permitopen="127.0.0.1:445" ssh-rsa ...
//Megjegyzés:// a //Samba Manager// a kulcspárt felhasználó létrehozatalakor automatikusan elkészíti.
Ha a felhasználó korábban már létrejött, van kulcspárja és a csoportokba sorolás is megtörtént, szerver oldali tennivaló nincsen.
=== smbm használata esetén ===
//Az alábbiak csak arra az esetre vonatkoznak, ha a szerveren a Samba Manager (smbm) toolkit telepítve van.\\ Feltételezzük, hogy a házirend szerinti Samba/Windows felhasználónév vezeteknev.keresztnev alakú.//
A Samba Managert futtató fájlszerveren //root//-ként adjuk ki ezeket a parancsokat:
smbm -au vezeteknev.keresztnev password # password opcionális
* Létrehozza a felhasználót //vezeteknev.keresztnev// Samba/Windows felhasználónévvel és ha nem adunk meg jelszót, generált jelszóval; valamint a háttérben //smbNNNNN// Linux felhasználónévvel (jelszavas belépés lehetősége nélkül).
* Létrehozza a felhasználó //home// könyvtárát, elhelyez benne egy generált, tunnelezésre használható kulcspárt, amelynek jelszava (//passphrase//) a Samba/Windows jelszóval megegyezik.
A csoportokba soroláshoz:
smbm -lg # Listázza a létező Samba/Windows csoportokat
smbm -aug vezeteknev.keresztnev "Windows csoportnév" # Beteszi a felhasználót a csoportba
smbm -lug vezeteknev.keresztnev # Listázza a felhasználó csoporttagságait
Ha ezzel készen vagyunk, kiléphetünk a szervergépből.
===== Kliens oldali teendők =====
Szükségünk lesz:
* a felhasználó tunnelezésre alkalmas privát kulcsára és annak //passphrase//-ére;
* a felhasználó Samba/Windows felhasználónevére (//vezeteknev.keresztnev//) és jelszavára;
* a felhasználó gépén adminisztrátori jogkörre a szükséges segédprogramok telepítéséhez.
==== Teendők adminisztrátorként ====
A továbbiakhoz adminisztrátorként (rendszergazda jogkörű felhasználóként) lépjünk be a beállítandó munkaállomásra.
=== PuTTY telepítése ===
Kötelező telepítés, ha a felhasználó nem használ titkosított fájlrendszert (pl. BitLockert, TrueCryptet, VeraCryptet), mert ilyenkor a privát kulcs jelszavát nem jegyeztethetjük meg, így kelleni fog a //PuTTYGen// (//passphrase// változtatásra), esetleg a //Pageant//. Ha van titkosított fájlrendszer, akkor telepítése opcionális, de érdemes telepíteni, mert hibakeresésre is jól használható.
[[http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html|Töltsük le]] a PuTTY utolsó stabil verzióját Windows Installer formában és telepítsük. A célmappa legyen //C:\Program Files\Security\PuTTY//, a Start menü mappa //Eszközök\PuTTY// (Windows 10 esetén maradjon //PuTTY//), desktop ikonok nem kellenek.
=== MyEnTunnel telepítése ===
Kötelező telepítés, ezt használjuk a tunnel felépítésére és fenntartására.
[[http://teszt.hu/download/myentunnel/setup_myentunnel-3.4.2.exe|Töltsük le]] a MyEnTunnel 3.4.2-es, stabil (nem Unicode) változatát, és telepítsük.
| **Windows XP** A //service// nem kell, célmappa legyen //C:\Program Files\Security\MyEnTunnel//, a Start menü mappa //MyEnTunnel//. Sajnos a telepítő a Start menü mappát az aktuális felhasználó profiljába teszi, ezt innen mozgassuk át a közös Start menü //Eszközök// mappájába és javítsuk meg a jogokat. Sajnos Windows XP alatt a MyEnTunnel az egyes kapcsolatok profilállományait a program mappájába teszi, ezért adjunk a //C:\Program Files\Security\MyEnTunnel// mappára a //Felhasználók// csoportnak írásjogot (**TODO!**). | **Windows Vista, 7, 8, 10** A //service// nem kell, célmappa legyen //C:\Program Files\Security\MyEnTunnel//, a Start menü mappa //Eszközök\MyEnTunnel// (Windows 10 esetén maradjon //MyEnTunnel//). Ha a telepítő a Start menü mappát az aktuális felhasználó profiljában is létrehozná (üresen), ezt töröljük le. Windows Vista, 7, 8, 10 és bekapcsolt UAC esetén a //Virtualstore// szolgáltatás kezeli a profilállományokat, így a programkönyvtárra nem kell (//nem szabad//) írásjogot adni. |
A telepítés tartalmaz egy //plink.exe// binárist is, ezt //opcionálisan// a PuTTY telepítéssel érkező frissebb változatra cserélhetjük. Sajnos a MyEnTunnel 3.4.2.1 (//non-UTF8//) a //plink// 0.63 verzióját [[https://github.com/feralhosting/feralfilehosting/tree/master/Feral%20Wiki/SSH/SSH%20tunnels%20-%20MyEnTunnel%203.5%20and%20Plink|jelenleg nem támogatja]], így itt az [[http://the.earth.li/~sgtatham/putty/0.62/x86/plink.exe|innen]] letöltött 0.62 verziót érdemes használni.
Ezen kívül [[http://teszt.hu/download/myentunnel/myentunnel_samba.bat|töltsük le]] a //myentunnel-samba.bat// scriptet is, és (a jogokra ügyelve!) helyezzük el a MyEnTunnel programkönyvtárában. Windows 10 esetén szükségünk lehet a //Samba_tunnel_setup.xml// időzített feladatra is.
=== Loopback interface elkészítése ===
Mivel a Windows munkaállomások minden használatban lévő hálózati interface-én fut(hat) a helyi //Server// (Fájl- és nyomtató megosztás) szolgáltatás, amely a tunnelben is használatos Samba portokat és protokollokat használja, egy új hálózati kapcsolatot, nevezetesen egy virtuális (hardverhez nem tartozó) hálózati interface-t ("hálókártyát") definiálunk, amelyen nem fut a Windows fájl- és nyomtatómegosztás szolgáltatása. Ez lesz az SSH tunnel végpontja a munkaállomáson.
Az interface-nek statikus IP-t adunk nem route-olható tartományból (192.168.255.254/24) gateway nélkül, magas metrikával; csak a TCP/IP-t engedélyezzük rajta. Ha több távoli Samba szerverhez is szeretnénk csatlakozni, akkor ugyanezen interface-en minden távoli szerverkapcsolathoz egy-egy külön //dummy// IP címet veszünk fel (célszerűen .254, .253, stb.).
| **Windows XP** Start menü, Vezérlőpult, Hardver hozzáadása, a varázslóban "Igen, már csatlakoztattam a hardvert", a listában legalul Új hardvereszköz hozzáadása, listából kiválasztás, Hálózati kártyák, Microsoft, Microsoft (KM-TEST) visszacsatoló adapter, Befejezés. Start menü, Beállítások, Hálózati kapcsolatok, az adapterhez tartozó kapcsolaton jobbklikk, Tulajdonságok. Általános fül, TCP/IP protokoll, Tulajdonságok, A következő IP cím használata, Speciális nyomógomb IP-beállítások fül, IP-cím hozzáadása 192.168.255.254, netmask 255.255.255.0 Ugyanitt a Csatoló metrikája 9999 legyen. DNS fül, "A kapcsolat címének regisztrálása a DNS-be" ne legyen engedélyezve. WINS fül, NetBIOS tiltása TCP/IP felett, OK, OK. Általános fül, csak a TCP/IP protokoll legyen engedélyezve, a korlátozott kapcsolatról sem kérünk értesítést. **Gyorsteszt:** parancssorban //ping 192.168.255.254// működik. | **Windows Vista, 7, 8, 10** Start, hdwwiz.exe - megnyílik a Hardver hozzáadása varázsló; listából kijelölés, Hálózati kártyák, Microsoft visszacsatoló adapter, Befejezés. Start, Vezérlőpult, Hálózati és megosztási központ, Adapterbeállítások módosítása, az adapterhez tartozó kapcsolaton jobbklikk, Tulajdonságok. Csak a TCP/IP protokoll legyen engedélyezve. A TCP/IP protokoll négyes verziója, Tulajdonságok, Általános fül, IP-cím hozzáadása 192.168.255.254, netmask 255.255.255.0 legyen. Speciális nyomógomb, IP beállítások fül, a Csatoló metrikája 9999 legyen. DNS fül, "A kapcsolat címének regisztrálása a DNS-be" ne legyen engedélyezve. WINS fül, NetBIOS tiltása TCP/IP felett. **Gyorsteszt:** parancssorban //ping 192.168.255.254// működik. |
Válasszunk egy profilnevet, amelyik a továbbiakban az erre a //dummy interface//-re tunnelezett kapcsolatot azonosítja. Ez lesz:
* az ide tunnelezett távoli szerver (virtuális) hostneve;
* a kapcsolatot indító és fenntartó //MyEnTunnel// profil neve.
Jegyezzük be ezt a nevet (jelen példában legyen //geofile//) a munkaállomás //hosts// file-jába, pl. az alábbi módon:
| **Windows XP** Start menü, Futtatás, notepad C:\Windows\system32\drivers\etc\hosts
[...]
# Dummy interface for Samba tunneling
192.168.255.254 geofile
**Gyorsteszt:** parancssorban //ping geofile// működik. | **Windows Vista, 7, 8, 10** Start menü, //cmd//, Futtatás rendszergazdaként (admin konzol)
notepad drivers\etc\hosts
[...]
# Dummy interface for Samba tunneling
192.168.255.254 geofile
**Gyorsteszt:** parancssorban //ping geofile// működik. |
=== Windows Vista, 7, 8, 10 SMB forgalom eltérítése ===
A beállítás csak Windows Vista és újabbak esetén szükséges - Windows XP esetén a TCP/139-es porti forgalom tunnelezése elegendő és minden trükk nélkül működik.
Windows Vista, 7, 8 és 10 esetén a TCP/139-es forgalmat hiába tunneleznénk, mert a fájlkiszolgáló szolgáltatást először a TCP/445-ös porton keresi a kliens (ez a viselkedés nem is módosítható). Sajnos a beépített és alapértelmezetten a rendszerindításkor automatikusan elinduló //smb// (újabban //srv//) driver minden interface TCP/445-ös portjára rátelepszik, vagyis semmilyen helyi TCP/445-ös portot nem tudunk tunnel végpontjaként felhasználni. Az egyetlen működőképes megoldásnak a //dummy interface// 445-ös portjára menő forgalomnak kernel szinten, ugyanezen interface másik portjára történő eltérítése látszik (//portproxy//). Így a helyi szolgáltatás elfoglalja ugyan a //dummy interface// TCP/445-ös portját, de az erre címzett csomagok az eltérítés miatt valójában a másik portra kerülnek, illetve az itt végződő tunnelen keresztül eljuthatnak a távoli gépre (a trükk [[http://www.nikhef.nl/~janjust/CifsOverSSH/VistaLoopback.html|innen]] származik).
Parancssorban (admin konzol) adjuk ki a következő parancsot, amellyel a //dummy interface// TCP/445-ös forgalmának a TCP/44445-ös portra (de használható bármely más szabad port is) átirányítását kérjük:
netsh interface portproxy add v4tov4 listenaddress=192.168.255.254 listenport=445 connectaddress=192.168.255.254 connectport=44445
Ha több távoli Samba szervert kívánunk használni, és emiatt a //dummy interface//-nek több IP címe van, a beállítást mindegyikre el kell végezni.
A //portproxy// beállítás perzisztens (újraindítás után is megmarad), de még az //smb/srv// driver elindítása előtt kell megvalósulnia.
* **Windows 10** alatt gondoskodni kell arról, hogy az //iphlpsvc// (IP-segítő) szolgáltatás, amely a //portproxy// beállítást ténylegesen érvényesíti, korábban induljon és sikeresen elfoglalja a kívánt portot, mint azt SMB fájlrendszer meghajtót elindító //lanmanserver// (Kiszolgáló) szolgáltatás tenné. Jelenleg (//version 1511//) úgy tűnik, hogy a Windows [[https://social.technet.microsoft.com/Forums/windowsserver/en-US/e794910b-9325-4ef9-be82-3e57925e6586/problem-with-adding-a-portproxy-using-netsh?forum=winservergen|belső, időzítési vagy függőségi(?) problémái]] miatt a sikeres foglalás véletlenszerűen meghiúsul, így a kívánt eredményhez a //lanmanserver// tiltása, a rendszerindítás után az //iphlpsvc// újraindítása(!), majd a //lanmanserver// indítása szükséges. Ezt valósítja meg az [[https://teszt.hu/download/Samba_tunnel_setup.xml|innen]] letölthető //Samba_tunnel_setup.xml// időzített feladat, amelyet a Feladatütemezőben (rendszergazda jogosultságokkal) importáljunk, és ezután egyszer, manuálisan futtassunk le. (Gergő átírta és ez most az új változat! Ha valaki a régit szeretné: [[https://teszt.hu/download/Samba_tunnel_setup_kzoli.xml|KZoli féle változat]] .)
* **Windows 8.x** alatt elegendőnek tűnik a a Számítógép, Kezelés, Szolgáltatások listájában a Kiszolgáló (//lanmanserver//) service indítását (Tulajdonságok, Indítás típusa) Automatikus (késleltetett)-re állítani.
* **Windows 7** alatt a késleltetés opcionális (tapasztalat szerint enélkül is működik).
* **Windows Vista** alatt a késleltetés nem látszik elegendőnek, így ehelyett [[http://www.nikhef.nl/~janjust/CifsOverSSH/VistaLoopback.html|az itt olvasható]] leírás alapján a //lanmanserver// indítását manuálisra kell állítani, és elindításáról (a Windows 10-hez hasonlóan) ütemezett feladattal kell gondoskodni.
Ezután **újra kell indítanunk** a munkaállomást.
Újraindítás után parancssorból ellenőrizzük az átirányítást (ehhez már nem szükséges rendszergazdai jogosultság):
netstat -ano | find ":445"
TCP 0.0.0.0:445 0.0.0.0:0 LISTENING 4
TCP 192.168.255.254:445 0.0.0.0:0 LISTENING 3408
TCP [::]:445 [::]:0 LISTENING 4
netstat -tan -p TCP | find "192.168.255"
TCP 192.168.255.254:445 0.0.0.0:0 FIGYEL InHost
netsh interface portproxy show v4tov4
Figyelés ipv4: Csatlakozás ipv4:
Cím Port Cím Port
--------------- ---------- --------------- ----------
192.168.255.254 445 192.168.255.254 44445
azaz a //dummy interface// TCP/445-ös portján nem a helyi //smb// szolgáltatásnak (is) dolgozó //PID 4// rendszerfolyamat figyel, hanem a //portproxy//-t megvalósító szolgáltatás, így az itt megjelenő forgalom valójában a TCP/44445-ös porton keresztül zajlik, ahonnan tovább tunnelezhető.
ha nagy a baj: netcfg -d
==== Teendők korlátozott felhasználóként ====
Kérjük meg a felhasználót, hogy lépjen be a beállítandó munkaállomásra a saját nevében és ha használ VeraCryptet, csatolja fel a titkosított meghajtót.
=== A privát kulcs elhelyezése ===
Ha a felhasználó használ VeraCryptet, privát kulcsát mozgassuk át a titkosított meghajtóra, pl. a //T:\Keys// könyvtárba. Opcionálisan elhelyezhetünk itt egy szövegfájlt, amelyben a kulcshoz tartozó //passphrase// és a Samba/Windows felhasználónév illetve jelszó is szerepel.
Ha nincs titkosított meghajtó, a kulcsot a felhasználó profilkönyvtárának gyökerébe helyezzük át.
== A privát kulcs megszerzése smbm használata esetén ==
//Az alábbiak csak arra az esetre vonatkoznak, ha a szerveren a Samba Manager (smbm) toolkit telepítve van, és a kulcsokat az smbm hozta létre és még nem töltöttük le a felhasználó privát kulcsát.//
Samba Manager használata esetén a felhasználó privát kulcsa annak //home// könyvtárában jön létre, és a tunnel beállításához azt meg kell szerezzük. Ennek érdekében először egy másik, jelszavas belépésre jogosult(!) Linux felhasználó (pl. //admin//) nevében építünk ki tunnelt, de a Samba-hoz a beállítandó felhasználó nevében csatlakozunk, így látjuk a //home// könyvtárát és le tudjuk tölteni a kulcsot.
Parancssorból indítsuk el a //myentunnel.exe//-t a választott profilnévvel (példánkban //geofile//):
"%PROGRAMFILES%\Security\MyEnTunnel\myentunnel.exe" geofile
"C:\Program Files (x86)\Security\MyEnTunnel\myentunnel.exe" geofile
A megjelenő beállítóablak //Settings// fülén az //SSH server// mezőben adjuk meg a távoli szervert (pl. //fileserver.geocom.hu//), //Username// legyen a jelszavas belépésre jogosult másik Linux felhasználó (példánkban //admin//) a //Verbose Logging// legyen bekapcsolva, más beállításokat egyelőre ne kattintsunk be. A //Tunnels// fülön a //Local// mezőbe írjuk be az alábbiakat:
Windows XP : 192.168.255.254:139:127.0.0.1:139
Windows Vista (+) : 192.168.255.254:44445:127.0.0.1:445
Mentsünk (//Save//), lépjünk át a //Status// fülre és //Connect//. Adjuk meg a szerver //admin// (Linux) felhasználójának jelszavát, fogadjuk el a //host key//-t. Sikeres kapcsolódás esetén a //Status// ablakban stabil kapcsolatra és sikeres port továbbításra utaló üzenet jelenik meg. Sikertelenség esetén nézzük át az üzeneteket, esetleg lépjünk ki a MyEnTunnelből és a PuTTY elindításával próbáljuk megkeresni a hibát. Csak akkor menjünk tovább, ha ez a kapcsolat rendben felépül.
Ha a kapcsolat rendben van, hagyjuk nyitva a MyEnTunnel ablakát és az Intézőben nyissuk meg a //\\192.168.255.254// megosztást. Adjuk meg a felhasználó Samba/Windows felhasználónevét a Samba-n használatos domain névvel együtt (pl. //GEOCOM\vezeteknev.keresztnev//) és jelszavát - ezeket az adatokat jegyeztessük is meg. Lépjünk be a //home// könyvtárába és töltsük le az ott lévő (privát) kulcsok közül a //.ppk// kiterjesztésűt. Csukjuk be az Intézőt és a MyEnTunnel ablakának //Disconnect// nyomógombjával bontsuk le a kapcsolatot és lépjünk is ki a MyEnTunnelből.
=== A tunnel beállítása ===
//Ha már használtuk a tunnelt (pl. smbm esetén a privát kulcs letöltésére), akkor az első lépést elhagyhatjuk.//
* Parancssorból indítsuk el a //myentunnel.exe//-t a választott profilnévvel (példánkban //geofile//):
"%PROGRAMFILES%\Security\MyEnTunnel\myentunnel.exe" geofile
"C:\Program Files (x86)\Security\MyEnTunnel\myentunnel.exe" geofile
A megjelenő beállítóablakban semmit ne állítsunk be, csak mentsünk (//Save//) és lépjünk ki //(Exit//). Ezzel létrehoztuk a profil beállító állományát.
* Sajnos a MyEnTunnel felületén a privát kulcs helyének megadására nincs lehetőség (minden mást be tudunk állítani), ezért szerkesszük meg az imént létrehozott beállító állományt (nevében szerepel a profilnév):
Windows XP: notepad "%PROGRAMFILES%\Security\MyEnTunnel\geofile-myentunnel.ini"
(64 bit) notepad "C:\Program Files (x86)\Security\MyEnTunnel\geofile-myentunnel.ini"
Windows Vista (+): notepad "%USERPROFILE%\AppData\Local\Virtualstore\Program Files\Security\MyEnTunnel\geofile-myentunnel.ini"
(64 bit) notepad "%USERPROFILE%\AppData\Local\Virtualstore\Program Files (x86)\Security\MyEnTunnel\geofile-myentunnel.ini"
és a végére írjuk be az elérési utat. A //.ppk// kiterjesztésű privát kulcsfile helye a titkosított meghajtón van, illetve, ha nincs ilyen, a felhasználó helyi //home// könyvtárában; az alábbi példában egy //smbm// által létrehozott nevű kulcsfájlt használunk:
[...]
FullPathKeyfile=T:\Keys\smbNNNNN_AT_fileserver.geocom.hu.ppk
[...]
FullPathKeyfile="C:\Documents and Settings\user\smbNNNNN_AT_fileserver.geocom.hu.ppk"
[...]
FullPathKeyfile="C:\Users\user\smbNNNNN_AT_fileserver.geocom.hu.ppk"
* Parancssorból indítsuk el ismét //myentunnel.exe//-t a választott profilnévvel (példánkban geofile):
"%PROGRAMFILES%\Security\MyEnTunnel\myentunnel.exe" geofile
"C:\Program Files (x86)\Security\MyEnTunnel\myentunnel.exe" geofile
és a tálcaikonra jobbklikkelve (//Show//) hozzuk vissza a beállító ablakot. A //Settings// fülön az //SSH server// mezőben adjuk meg a távoli szervert (pl. //fileserver.geocom.hu//), //Username// legyen a felhasználó Linux felhasználóneve (//smbm// használata esetén //smbNNNNN// alakú), kattintsuk be a //Connect on Startup//, //Reconnect on Failure//, //Use Private Key// és //Verbose logging// checkboxokat; ha a privát kulcs védett tárolóban van, akkor töltsük ki a //Passphrase// mezőt is (alapértelmezésben azonos a felhasználó Samba/Windows jelszavával).
A //Tunnels// fülön a //Local// mezőbe írjuk be az alábbiakat:
Windows XP: 192.168.255.254:139:127.0.0.1:139
Windows Vista (+): 192.168.255.254:44445:127.0.0.1:445
Mentsünk (//Save//), váltsunk a //Status// fülre és //Connect//. Ha nem jegyeztettük meg a kulcshoz tartozó //passphrase//-t, akkor a feljövő ablakban meg kell adnunk azt.
* Sikeres kapcsolat esetén hagyjuk nyitva a MyEnTunnel ablakát és az Intézőben nyissuk meg a //\\192.168.255.254// megosztást. Adjuk meg a felhasználó Samba/Windows felhasználónevét a Samba-n használatos domain névvel együtt (pl. //GEOCOM\vezeteknev.keresztnev//) és jelszavát - ezeket az adatokat jegyeztessük is meg.
* Sikeres Samba kapcsolat esetén csukjuk be az Intézőt, a MyEnTunnel //Settings// fülén vegyük ki a //Verbose Logging// pipát, kapcsoljuk be az //Enable Slow Polling//-ot, majd //Save//, //Disconnect// és //Exit//. Ettől kezdve a fenti parancssorral a tunnel bármikor elindítható.
//Megjegyzés:// ha a felhasználó nem használ titkosított meghajtót, de a gépe saját használatú, helyhez kötött asztali munkaállomás, akkor meggondolhatjuk a //passphrase// megjegyeztetését a MyEnTunnellel. Ha a gépe hordozható vagy közös használatú, akkor NE jegyeztessük azt meg, viszont a telepített //puttygen// program segítségével megváltoztathatjuk a jelszót számára megjegyezhetőre.
=== Tunnel indító script ===
A //myentunnel_samba.bat// scripttel a már beállított és letesztelt MyEnTunnel profil indítható és a tunnel felépülését követően network drive csatolások végezhetőek el.
Készítsünk egy parancsikont a felhasználó asztalán, amelynek célja legyen ez a script a //myentunnel.exe// ikonjával és indítási paraméterekként a csatolandó network drive-ok listájával (//drive:megosztás\pathname// alakban). Pl. az alábbi hívás:
"C:\Program Files\Security\MyEnTunnel\myentunnel_samba.bat" /v geofile g:active h:homes i:archive
"C:\Program Files (x86)\Security\MyEnTunnel\myentunnel_samba.bat" /v geofile g:active h:homes i:archive
a tunnel indítása után //H:// meghajtóként a felhasználó távoli //home// könyvtárát, //G:// meghajtóként a fájlszerver aktív, //I:// meghajtóként az archív megosztását csatolja fel (a fenti csak példa, ügyeljünk arra, hogy létező megosztásokat adjunk meg!).
Ahhoz, hogy a felcsatolás automatikus legyen, érdemes ezeket a meghajtókat az Intézőből egyszer manuálisan csatolni, és a Samba/Windows felhasználói adatokat a géppel megjegyeztetni. Így a script csak a tunnelhez használt és nem titkosított meghajtón tárolt privát kulcs //passphrase//-át kérdezheti meg (munkamenetenként egyszer).
Tippek a //myentunnel.samba.bat// használatához:
* Ha a felhasználó több távoli Samba szerverre is csatlakozik, minden szerverhez javasolt egy-egy parancsikont készíteni;
* Érdemes lehet a parancsikon minden példányához a //myentunnel.exe// ikonját társítani (zöld lakat);
* A parancsikon elindításakor megjelenő terminálablak a sikeres csatlakozás után bezáródik, hibaüzenet esetén azonban billentyűleütésig a képernyőn marad, hogy a hibaüzenet olvasható legyen;
* Ha a //tray// ikon zöld, a kapcsolat fennáll; ha sárga vagy piros, a kapcsolat megszakadt (noha a //MyEnTunnel// igyekszik automatikusan újracsatlakozni). Ilyenkor a parancsikon (azaz a script) ismételt elindítása megkísérli a kapcsolat megjavítását (a script többszöri elindítása nem okoz kárt.)
===== Ha kettő van =====
- hddwiz -> hálózati kártya -> Microsoft KM-TEST
- Vezérlőpult\Minden vezérlőpultelem\Hálózati kapcsolatok -> átnevez: Samba_XXIfile
- beállítás (IP: 192.168.255.252/24) (speciális: metrika, dns, wins)
- notepad drivers\etc\hosts -> 192.168.255.252 xxifile
- netsh interface portproxy add v4tov4 listenaddress=192.168.255.252 listenport=445 connectaddress=192.168.255.252 connectport=44445
- restart
- Samba_tunnel_setup.xml (ez csak egyszer kell, így ez most nem pont)
- "C:\Program Files (x86)\Security\MyEnTunnel\myentunnel.exe" xxifile
- file.xximedia.hu;smbNNNNN;192.168.255.252:44445:127.0.0.1:445
- notepad "%USERPROFILE%\AppData\Local\Virtualstore\Program Files (x86)\Security\MyEnTunnel\xxifile-myentunnel.ini"
- FullPathKeyfile=T:\Keys\smbNNNNN_AT_fileserver.geocom.hu.ppk
- parancsikon: "C:\Program Files (x86)\Security\MyEnTunnel\myentunnel_samba.bat" /v xxifile g:active h:homes i:archive j:foto-active k:foto-archive
===== Irodalom =====
* [[http://www.chiark.greenend.org.uk/~sgtatham/putty/|a PuTTY webhelye]]
* [[http://nemesis2.qx.net/pages/MyEnTunnel|a MyEnTunnel webhelye]]
* [[http://jgranto.dyndns.org/joe/SSH/index.htm|Tunneling over SSH]] (//dummy loopback// és TCP/139)
* [[http://support.microsoft.com/kb/839013|A Microsoft visszacsatoló adapter telepítése Windows XP rendszerben]] (MS support)
* [[http://www.nikhef.nl/~janjust/CifsOverSSH/VistaLoopback.html|Tweaking SMB driver]] (TCP/445 használata Windows Vista/7 esetén)
* [[http://www.shcherbyna.com/?p=121|SMB traffic not captured in TDI filter driver]] (TCP/445 nem fogható el Windows Vista/7 alatt)
* [[http://blog.lococobra.com/how-to-connect-to-samba-shares-over-the-internet-via-ssh-from-mac-os-x|Connect to Windows Samba Shares via SSH Tunneling from Mac OS X]]
* [[http://www.alirezabagheri.com/blog/?p=67|Mapping network drive via SSH on Linux, Windows and Mac]]
* [[http://www.askapache.com/windows/advanced-batch-scripting.html|Advanced Windows Batch Scripting]]
A lap eredeti címe: „[[http://admin.wiki.kzoli.hu/index.php?title=Samba_tunnel_beállítása_smbm-hez_(Windows_XP,_7,_8,_10)&oldid=3219|http://admin.wiki.kzoli.hu/index.php?title=Samba_tunnel_beállítása_smbm-hez_(Windows_XP,_7,_8,_10)&oldid=3219]]”