• Jak na to? > Linux > V rytmu Samby 4 >
V rytmu Samby 4
Vzhledem k tomu, že démoni většiny služeb jsou v 7.1 CZ (nevím jak je tomu u ostatních distribucí, ale
Rozhodně doporučuji vyplnit soubory /etc/hosts.deny a /etc/hosts.allow . U mne vypadají takto:
soubor /etc/hosts.deny
#
# hosts.deny This file describes the names of the hosts which are
# *not* allowed to use the local INET services, as decided
# by the '/usr/sbin/tcpd' server.
#
# The portmap line is redundant, but it is left to remind you that
# the new secure portmap uses hosts.deny and hosts.allow. In particular
# you should know that NFS uses portmap!
ALL:ALL
konec souboru
soubor /etc/hosts.allow
#
# hosts.allow This file describes the names of the hosts which are
# allowed to use the local INET services, as decided
# by the '/usr/sbin/tcpd' server.
#
ALL: LOCAL 10.10.10.30 10.10.10.32
konec souboru
Mimochodem, už jste si postavili paketový filtr?:-)
Některé rady z čarodějné kuchyně
Nejprve na vysvětlenou: Vlastní sambu samozřejmě musíte spustit pod konkrétním uživatelem. A již tento uživatel již obvykle bývá kamenem úrazu. Ptáte se proč? Inu, protože tento uživatel má jisté pravomoci a to je ta potíž. Když bude mít příliš omezené pravomoci, můžete ochromit běh aplikací, které jsou pod ním spuštěny. Pokud mu naopak přidělíte pravomoci příliš rozsáhlé (třeba spustíte Sambu pod rootem), může se stát, že nějaký šikula toho využije (pardon, zneužije) a malér je hotov.
Na druhou stranu, nic se nemá přehánět. Pokud Sambu používáte doma a okruh lidí, k ní přistupujících, je vám dobře znám, není třeba volat Scotland Yard:-)) Pokud se ovšem Samba nachází v komplexu, který je tak či onak připojen k Internetu, pak je opatrnost na místě.
A teď ty úpravy:
.bash_profile
Skript SMB (pro distribuci Linux Red Hat 7.1 CZ) se nachází v adresáři /etc/rc.d/init.d.
Asi nebudete překvapeni, když zde naleznete veškeré skripty, které lze začlenit do tzv. runlevels a spouštět je tak při startu systému. Do adresáře /etc/rc.d samozřejmě sahat nebudeme (to by se nemuselo vyplatit), nicméně si upravíme jiný konfigurační soubor a to .bash_profile. Tento soubor se nachází v domovském adresáři vašeho uživatele. Tedy, pokud máte Sambu v tzv. "nerizikovém" prostředí a rozhodli jste se ji spouštět pod uživatelem root, pak upravte soubor .bash_profile (ta tečka před názvem souboru je dosti podstatná, nezapomínejte na ni!) v adresáři /root.
Před úpravou vypadal soubor .bash_profile takto:
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
.~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
ENV=$HOME/.bashrc
USERNAME="root"
export USERNAME ENV PATH
mesg n
konec souboru
A po úpravě
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin:/etc/rc.d/init.d
ENV=$HOME/.bashrc
USERNAME="root"
export USERNAME ENV PATH
mesg a
konec souboru
Ano, upravili jsme tedy proměnnou PATH a ta nyní ukazuje i do adresáře /etc/rc.d/init.d. Po úpravě skriptu se ještě musíme odhlásit a znovu přihlásit (v našem případě tedy jako uživatel root) a naše úprava již nabude platnosti.
Takže nyní, když budeme chtít Sambu nastartovat, můžeme si rovnou zavolat skript smb (ano, malými písmeny) a zadat mu jeden z těchto parametrů:
start spustí Sambu
stop ukončí Sambu
restart napřed ukončí a pak znovu spustí Sambu (stop - start)
reload znovu načte smb.conf
status zobrazí status Samby
Kontrola portů na SAMBA serveru
Ano, podle hesla důvěřuj, ale prověřuj, se raději podíváme, které portíky máme na našem počítači se SAMBA serverem aktivní. Můžeme to provést pomocí utility nmap (tu budete určitě znát), ale pozor! Přihlašte se k SAMBA serveru z jiného počítače (nejlépe skrze ssh) a z vaší vzdálené stanice nyní spusťte nmap s IP adresou vašeho SAMBA serveru jako parametrem, pro náš příklad tedy takto:
nmap 193.10.10.32
Obdržíte podobnou tabulku:
Starting nmap V. 2.54BETA22 ( www.insecure.org/nmap/ )
Interesting ports on michal2.hom (10.10.10.32):
(The 1538 ports scanned but not shown below are in state: closed)
Port State Service
22/tcp open ssh
139/tcp open netbios-ssn
901/tcp open samba-swat
6000/tcp open X11
No exact OS matches for host (If you know what OS is running on it, see http://www.insecure.org/cgi-bin/nmap-submit.cgi).
Pokud provozujete paketový filtr (např. ipchains), pak s největší pravděpodobností obdržíte v tabulce i výraz "filtered".
Verze Samby
Ano, to nesmíme opomenout. Tak tedy, výše uvedené řádky se týkají verze Samby 2.0.8-1.7.1. Konkrétní distribuce Linuxu je Red Hat 7.1 CZ na platformě Intel.
Soutěžní otázka
A ještě něco pro gurmány. Může se samozřejmě stát, že nemáte k dispozici vzdálenou stanici, ze které by jste spustili utilitku nmap. Nu nevadí, víte jak nmap spustit tak, aby ukázal i "filtrované" položky? Pustíte-li totiž nmap "normálně" z terminálu, pak "filtrované" položky neukáže, protože je nevidí. Ale nmap lze "přivést k rozumu". Víte jak? Inu, fíglem. Není to, pravda, příliš čisté, ovšem pokud není jiná možnost po ruce... Zkuste zauvažovat. Ale, aby to moc nebolelo, zkuste nmap spustit skrze proces, který se bude chovat jako vzdálená stanice. Už víte?
Michal Vymazal
www.linuxservices.cz
Akce:
Otevřít verzi pro tisk