Zákaznické centrum
 Jméno
 Heslo
 
Zapomněli jste heslo?

Partneři

Nápověda

Co je to FTP?

FTP (File transfer protocol) je protokol, který umožňuje kompletní práci se soubory na vzdáleném počítači jako je kopírování, mazání, přejmenovávání, vytváření adresářů. Pokud máte k počítači plnohodnotný přístup přes FTP, máte v celém systému nebo jen ve vašem uživatelském adresáři možnost dělat všechno, co byste mohli dělat přímo ve správci souborů, přičemž kopírování (souborů i adresářů) můžete provádět mezi adresáři vašeho lokálního disku a adresáři vzdáleného (internetového) počítače.

Z pohledu zákazníka se pak jedná především o přenos internetové prezentace a jiných dat z jejich PC na webový prostor na našich serverech.

Přenos pomocí FTP zajišťuje "FTP klient" viz. další sekce.

Co je to FTP klient a jak jej použít?

Pro práci s FTP je třeba mít nějaký program - ať už je to váš browser, či nějaký ze speciálních FTP klientů bez kterého se stejně pro plnohodnotný FTP přístup neobejdete. FTP klient vám umožní (i hromadné) operace se soubory a adresáři, jako jsou mapř. kopírování, mazání, editace, přejmenování, uploadování dat na server a jejich download ze serveru na Váš počítač. V FTP klientovi je třeba nadefinovat přístup ke vzdálenému serveru. Zpravidla je třeba zadat tři základní údaje:

- Název FTP serveru - obvykle ve tvaru: ftp.jméno_domény.cz
- Uživatele
- Přístupové heslo

Vhodné je též "Použít pasivní režim přenosu (jako WWW browser)". Tato volbu je možno nastavit ve většině FTP klientů buďto přímo při definování spojení nebo někde v nastavení klienta. Pokud tuto volbu nebudete mít zatrženu, může se stát, že budete mít problémy při spojení či při přenosu přes některé internetové rozhraní. Níže je uveden příklad nastavení pasivního režimu přenosu v diskovém manažeru "Total Commander", který má zabudovaného FTP klienta:

- Klikněte v menu na položku "Síť" - "FTP" - "připojit se"

- Objeví se seznam nastavených připojení k FTP serverům. Pokud ještě žádný nemáte nastavený, klepněte na Nové připojení... a nadefinujte přístupové údaje, které jsou uvedeny výše

- V dialogovém okně pro FTP připojení zatrhněte políčko "Použít pasivní režim přenosu (jako WWW browser)".

- Klikněte na OK a zkuste se připojit.

Po připojení jste připraveni na práci s FTP. Operace se soubory a adresáři je možno zajistit pomocí přetažení myší, klávesovou zkratkou, kliknutím na příslušnou volbu atd.. Každý FTP klient nabízí jiné prostředí a proto je jen na Vás, který si vyberete pro pohodlnou práci s FTP. Níže je uvedeno několik odkazů na stránky oblíbených FTP klientů.

Total Commander
CuteFTP
Iron Ware

Nastavení práv pro zápis do adresáře serverem (Linux)

Pokud si přejete na server ukládat jakákoliv data, musíte mít na adresáři, kam budou data ukládána, nastavena práva pro zápis.

Obvykle jsou práva nastavena na odpovídající již při vytvoření adresáře. Pokud práva z nějakého důvodu neodpovídají, je možno provést jejich nastavení přímo z FTP klienta. Někteří novější FTP klienti umožňují zadávání příkazů - pak stačí zadat na adresáři příkaz "site chmod 707 pozadovany_adresar". U jednodušších klientů (leechftp a pod.) je možné nastavit flag "write by others" přímo z kontextového menu. Stejná práva pak musí být nastavena i u souborů do kterých se bude zapisovat.

Upload pomocí PHP (Linux)

Na Linuxových serverech máte možnost využívat PHP scripty pro upload souborů na server. Nejdříve je však nutné připravit server na příjem dat. Pokud chcete na server ukládat jakákoliv data, musíte mít na adresáři, kam budou data ukládána, nastaveno právo zápisu.

Php upload je způsob, jakým pomocí php a metody POST nahrávat soubory na server. Je pomalý a neefektivní, proto je velikost souboru omezena na 2 MB. Má ho možnost využít každý zákazník, pokud je jeho doména umístěna na serverech Linux ve variantě podporující PHP scripty.

pozn: Jméno dočasného adresáře není možné individuálně nastavit jinak.

Příklady použití:

1. Pří safe_mod = on

Pomocí textového editoru vytvořte soubor s názvem upload.php a do něj zapište následující kó;d:


<html>
<head>
<title>Prenos souboru pri safe_mod = On</title>
</head>
<body>
<?php

if ($_POST["odeslano"] == true) {
if (!is_file($_FILES['hloupost']['tmp_name'])) die ("Žádný soubor jste neuploadoval");

$conn_id = ftp_connect('moje.ftp.cz');

if (!$login_result = ftp_login($conn_id, 'muj_ftp_login', 'me_ftp_heslo')) {
die('Pripojeni k FTP serveru se nezdarilo');
}

$local_file = $_FILES['hloupost']['tmp_name'];
$remote_file = $_FILES['hloupost']['name'];

if (!ftp_put($conn_id, $remote_file, $local_file, FTP_BINARY)) {
die('Prenos souboru se nezdaril');
} else {
echo "Soubor <strong>".$_FILES['hloupost']['name']."</strong> z Vaseho PC";
echo " typu <strong>".$_FILES['hloupost']['type']."</strong>";
echo " o velikosti <strong>".$_FILES['hloupost']['size']."</strong> bajtu";
echo " byl na serveru ulozen pod docasnym nazevem <strong>".$_FILES['hloupost']['tmp_name']."</strong>";
echo " a nasledne zpracovan.<br /><br />";
}

ftp_close($conn_id);

}

?>

Nahrani souboru na server
<form method="post" enctype="multipart/form-data">
<table border="1" >
<tr>
<td>Soubor: </td>
<td><input type="file" name="hloupost" accpet="text" /></td>
</tr>
<tr>
<td colspan="2">
<input type="hidden" name="odeslano" value="true" />
<p align="center"><input type="submit" value="Odeslat" /></td>
</tr>
</table>
</form>

</body>
</html>
2. Pří safe_mod = off

Pomocí textového editoru vytvořte soubor s názvem uploadexec.php a do něj zapište následující kó;d:


<html>
<head>
<title>Prenos souboru pri safe_mod = On</title>
</head>
<body>
<?php

if ($_POST["odeslano"] == true) {
if (!is_file($_FILES['hloupost']['tmp_name'])) die ("Žádný soubor jste neuploadoval");

$local_file = $_FILES['hloupost']['tmp_name'];
$remote_file = $_FILES['hloupost']['name'];

if (!move_uploaded_file($remote_file, $local_file)) {
die('Prenos souboru se nezdaril');
} else {
echo "Soubor <strong>".$_FILES['hloupost']['name']."</strong> z Vaseho PC";
echo " typu <strong>".$_FILES['hloupost']['type']."</strong>";
echo " o velikosti <strong>".$_FILES['hloupost']['size']."</strong> bajtu";
echo " byl na serveru ulozen pod docasnym nazevem <strong>".$_FILES['hloupost']['tmp_name']."</strong>";
echo " a nasledne zpracovan.<br /><br />";
}
}

?>

Nahrani souboru na server
<form method="post" enctype="multipart/form-data">
<table border="1" >
<tr>
<td>Soubor: </td>
<td><input type="file" name="hloupost" accpet="text" /></td>
</tr>
<tr>
<td colspan="2">
<input type="hidden" name="odeslano" value="true" />
<p align="center"><input type="submit" value="Odeslat" /></td>
</tr>
</table>
</form>

</body>
</html>

Oba soubory pak nahrejte na server do jednoho adresáře a nynní již múžete funkci otestovat zavoláním prvního ze souborů upload.php ve Vašem oblíbeném internetovém prohlížeči. Po vybrání souboru a kliknutí na tlačítko "Send File" bude soubor za pomocí funkce, definované v souboru uploadexec.php, nahrán na server do adresáře, ve kterém jsou umístěny řídící soubory.

Chráněný přístup na webovou presentaci - HTTP Access (Linux)

V rámci našich služeb můžete využít zajištění chráněného přístupu na určitou část vaší internetové presentace, tedy aby se anonymní návštěvník www stránek nemohl dostat do určitého adresáře vašeho diskového prostoru protokolem HTTP.

Jedná se o odebrání práv anonymního uživatele v rámci vaší domény na určité adresáře či soubory. Je také možné přiřadit další uživatelská jména pro chráněný přístup. Zobrazit obsah stránek nebo dokumentů v této složce pak bude možné až po zadání přihlašovacích údajů ve zvláštním dialogovém okně.

Ochrana heslem je jedna z nejužitečnějších funkcí souboru .htaccess. Toto je nejspolehlivější ochrana ze všech. Vytvoření zaheslované složky vyžaduje vytvoření 2 souborů .htaccess a .htpasswd. Jsou to skryté soubory, které nemají jméno, ale jenom extenzi (příponu). Oba soubory lze editovat textovým editorem.

.htaccess

Nejdříve přidáme do souboru .htaccess požadované příkazy a uložíme do složky, kterou chceme zaheslovat:

AuthUserFile /cesta/.htpasswd
AuthGroupFile /dev/null
AuthName "Název sekce"
AuthType Basic

require valid-user

Zde "Název sekce" je libovolný titulek složky, kterou si přejeme zaheslovat, například "Přátelé".

Pak /cesta je absolutní cesta k souboru .htpasswd. Soubor .htpasswd můžete umístit do libovolné složky a ani se nemusí jmenovat .htpasswd. Z bezpečnostních důvodů se ale doporučuje .htpasswd umístit nad Vaši hlavní složku. To proto, aby soubor nešlo nalézt výpisem složek Vaší domény. Jestli máte placený www protor, na serveru by pro Vás již měla být zvláštní složka k uložení citlivých údajů.

Pokud neznáte cestu na svoji doménu, můžete spustit PHP funkci phpinfo(), která vypíše na monitor nastavení serveru. Vytvořte si stránku s příponou .php (např. phpinfo.php) a do ní vložte tento kó;d:

<?php phpinfo () ?>

Stránku uložte na server a spusťte v prohlížeči. Měly by se zobrazit tabulky s nastavením serveru. V tabulce "PHP variables" by měla být položka _SERVER["DOCUMENT_ROOT"] nebo podobná. Toto je absolutní cesta k hlavní složce vaší domény.

.htpasswd

Soubor .htpasswd obsahuje uživatelská jména a hesla, která budou mít přístup k chráněné složce.

Do souboru .htpasswd se uživatelská jména a hesla přidají v tomto formátu:

uživatel1:heslo1
uživatel2:heslo2
uživatel3:heslo3

Hesla si musíte sami zašifrovat PHP funkcí crypt(). Zde je hotový skript, který tohle provede. Vytvořte si stránku s příponou .php (např. sifrovak.php) a do ní vložte tento kó;d:

<html>
<head>
<meta http-equiv='Content-Type' content='text/html; charset=windows-1250' />
<title>Šifrovák</title>
</head>
<body>
<h1>Šifrovák</h1>
<form action="<?php echo $PHP_SELF ?>" method="post">
Heslo k zašifrování:
<br /><input type=text name=heslo />
<input type="submit" name="submit" value=" jdi " />
</form>
</body>
</html>

<?php
$submit = $_REQUEST['submit'];
if (isset ($submit)) {
$heslo = $_REQUEST['heslo'];
$zasifrovane = crypt ($heslo);
if (crypt ($heslo, $zasifrovane) == $zasifrovane)
echo "<br />Heslo: $heslo = <span style='background:yellow;color:black;'>$zasifrovane</span>";
else
echo "<br />Došlo k chybě v šifrování.";
}
?>

Zašifrování musíte provést na svém internetovém serveru, na kterém budete mít zaheslovanou složku. Nemá význam to dělat na nějakém jiném serveru, protože různé servery šifrují různě. Stránku sifrovak.php uložte na server a spusťe v prohlížeči. Zašifrujte si jedno heslo po druhém a vždy zkopírujte klipem do souboru .htaccess.

uživatel1:zasifrovane_heslo1
uživatel2:zasifrovane_heslo2
uživatel3:zasifrovane_heslo3

Další uživatele lze přidávat jako další řádky souboru .htpasswd.

Když se potom někdo pokusí o přístup k zaheslované složce, prohlížeč zobrazí výzvu k vložení uživatelského jména a hesla. Existují též serverové moduly, které zobrazují tento dialog jako součást stránky. Lze také odeslat uživatelské jméno a heslo (nezašifrované) v URL:

http://uzivatel:heslo@www.server.cz/slozka/