Stream Media Files to PS4 with Media Server | Synology
Obsah:
- Předpoklady
- Nastavte server NFS
- Instalace serveru NFS
- Vytváření systémů souborů
- Export souborových systémů
- Konfigurace firewallu
- Nastavení klientů NFS
- Instalace klienta NFS
- Montáž souborových systémů
- Testování přístupu NFS
- Odpojení systému souborů NFS
- Závěr
Network File System (NFS) je distribuovaný protokol systému souborů, který umožňuje sdílet vzdálené adresáře v síti. S NFS můžete připojit vzdálené adresáře do systému a pracovat se soubory na vzdáleném počítači, jako by to byly místní soubory.
Protokol NFS není ve výchozím nastavení šifrován a na rozdíl od Samby neposkytuje ověření uživatele. Přístup na server je omezen IP adresami nebo názvy hostitelů.
V tomto tutoriálu projdete kroky nezbytné k nastavení serveru NFSv4 na CentOS 8. Ukážeme vám také, jak připojit klientský souborový systém NFS.
Předpoklady
Předpokládáme, že máte server se systémem CentOS 8, na kterém nastavíme server NFS a další počítače, které budou fungovat jako klienti NFS. Server a klienti by měli být schopni komunikovat mezi sebou prostřednictvím soukromé sítě. Pokud váš poskytovatel hostingu nenabízí soukromé adresy IP, můžete použít veřejné adresy IP a nakonfigurovat bránu firewall serveru tak, aby umožňovala provoz na portu
2049
pouze z důvěryhodných zdrojů.
Stroje v tomto příkladu mají následující adresy IP:
NFS Server IP: 192.168.33.148 NFS Clients IPs: From the 192.168.33.0/24 range
Nastavte server NFS
Tato část vysvětluje, jak nainstalovat potřebné balíčky, vytvořit a exportovat adresáře NFS a nakonfigurovat bránu firewall.
Instalace serveru NFS
Balíček „nfs-utils“ poskytuje obslužné programy a démony NFS pro server NFS. Chcete-li jej nainstalovat, spusťte následující příkaz:
sudo dnf install nfs-utils
Po dokončení instalace povolte a spusťte službu NFS zadáním:
sudo systemctl enable --now nfs-server
Ve výchozím nastavení jsou na CentOS 8 NFS verze 3 a 4.x povoleny, verze 2 je zakázána. NFSv2 je nyní docela starý a není důvod jej aktivovat. Chcete-li jej ověřit, spusťte následující příkaz
cat
:
sudo cat /proc/fs/nfsd/versions
-2 +3 +4 +4.1 +4.2
Možnosti konfigurace serveru NFS jsou nastaveny v
/etc/nfsmount.conf
a
/etc/nfs.conf
. Výchozí nastavení je dostatečné pro náš tutoriál.
Vytváření systémů souborů
Při konfiguraci serveru NFSv4 je dobré používat globální kořenový adresář NFS a svázat skutečné adresáře s připojovacím bodem sdílené položky. V tomto příkladu
/srv/nfs4
jako kořen NFS kořenový adresář
/srv/nfs4
.
Abychom lépe vysvětlili, jak lze konfigurovat připojení NFS, budeme sdílet dva adresáře (
/var/www
a
/opt/backups
) s různým nastavením konfigurace.
/var/www/
je ve vlastnictví uživatele a skupiny
apache
a
/opt/backups
vlastnictví
root
.
Vytvořte souborový systém exportu pomocí příkazu
mkdir
:
sudo mkdir -p /srv/nfs4/{backups, www}
Připojte skutečné adresáře:
sudo mount --bind /opt/backups /srv/nfs4/backups
sudo mount --bind /var/www /srv/nfs4/www
Chcete-li, aby vazby byly trvalé, přidejte do souboru
/etc/fstab
následující položky:
sudo nano /etc/fstab
/ etc / fstab
/opt/backups /srv/nfs4/backups none bind 0 0 /var/www /srv/nfs4/www none bind 0 0
Export souborových systémů
Dalším krokem je definování souborových systémů, které budou exportovány serverem NFS, možností sdílení a klientů, kteří mají povolený přístup k těmto souborovým systémům. Otevřete soubor
/etc/exports
:
sudo nano /etc/exports
Exportujte adresáře
www
a
backups
a povolte přístup pouze klientům v síti
192.168.33.0/24
:
/srv/nfs4 192.168.33.0/24(rw, sync, no_subtree_check, crossmnt, fsid=0) /srv/nfs4/backups 192.168.33.0/24(ro, sync, no_subtree_check) 192.168.33.3(rw, sync, no_subtree_check) /srv/nfs4/www 192.168.33.110(rw, sync, no_subtree_check)
První řádek obsahuje
fsid=0
který definuje kořenový adresář NFS
/srv/nfs
. Přístup k tomuto svazku NFS je povolen pouze klientům ze podsítě
192.168.33.0/24
. Možnost
crossmnt
je vyžadována pro sdílení adresářů, které jsou podadresáři exportovaného adresáře.
Druhý řádek ukazuje, jak určit více exportních pravidel pro jeden souborový systém.
/srv/nfs4/backups
adresář
/srv/nfs4/backups
a umožňuje pouze přístup ke čtení do celého rozsahu
192.168.33.0/24
a přístup ke čtení i zápisu do
192.168.33.3
. Možnost
sync
řekne NFS, aby zapisoval změny na disk před odpovědí.
Poslední řádek by měl být samovysvětlující. Chcete-li získat další informace o všech dostupných možnostech, zadejte do svého terminálu
man exports
.
Uložte soubor a exportujte sdílené položky:
sudo exportfs -ra
Pokaždé, když upravíte soubor
/etc/exports
musíte spustit příkaz výše. Pokud se vyskytnou nějaké chyby nebo varování, zobrazí se na terminálu.
Chcete-li zobrazit aktuální aktivní vývoz a jejich stav, použijte:
sudo exportfs -v
Výstup bude zahrnovat všechny sdílené položky s jejich možnostmi. Jak vidíte, existují také možnosti, které jsme v souboru
/etc/exports
nedefinovali. Toto jsou výchozí možnosti a pokud je chcete změnit, budete je muset explicitně nastavit.
/srv/nfs4/backups 192.168.33.3(sync, wdelay, hide, no_subtree_check, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4/www 192.168.33.110(sync, wdelay, hide, no_subtree_check, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4 192.168.33.0/24(sync, wdelay, hide, crossmnt, no_subtree_check, fsid=0, sec=sys, rw, secure, root_squash, no_all_squash) /srv/nfs4/backups 192.168.33.0/24(sync, wdelay, hide, no_subtree_check, sec=sys, ro, secure, root_squash, no_all_squash)
root_squash
je jednou z nejdůležitějších možností zabezpečení NFS. Zabraňuje uživatelům root připojeným z klientů mít oprávnění root pro připojené sdílené položky. Bude mapovat kořenové
UID
a
GID
na
UID
/
GID
na
nobody
/
nogroup
.
Aby uživatelé na klientských počítačích měli přístup, NFS očekává, že se ID uživatele a skupiny klienta shodují s těmi na serveru. Další možností je použití funkce mapování NFSv4, která převádí ID uživatelů a skupin na jména a naopak.
A je to. V tomto okamžiku jste na serveru CentOS nastavili server NFS. Nyní můžete přejít na další krok a nakonfigurovat klienty a připojit se k serveru NFS.
Konfigurace firewallu
FirewallD je výchozí řešení brány firewall na Centos 8.
Služba NFS obsahuje předdefinovaná pravidla pro povolení přístupu k serveru NFS.
Následující příkazy trvale povolí přístup z podsítě
192.168.33.0/24
:
sudo firewall-cmd --new-zone=nfs --permanent
sudo firewall-cmd --zone=nfs --add-service=nfs --permanent
sudo firewall-cmd --zone=nfs --add-source=192.168.33.0/24 --permanent
sudo firewall-cmd --reload
Nastavení klientů NFS
Nyní, když je server NFS nastaven a sdílené položky jsou exportovány, v dalším kroku nakonfigurujte klienty a připojte vzdálené souborové systémy.
Můžete také připojit sdílenou složku NFS na počítačích MacOS a Windows, ale my se zaměříme na systémy Linux.
Instalace klienta NFS
Na klientských počítačích nainstalujte nástroje potřebné k připojení vzdálených systémů souborů NFS.
-
Nainstalujte klienta NFS na Debian a Ubuntu
Název balíčku, který obsahuje programy pro připojení systémů souborů NFS v distribucích založených na Debianu, je
nfs-common
. Chcete-li jej nainstalovat, spusťte:sudo apt update
sudo apt install nfs-common
Nainstalujte klienta NFS na CentOS a Fedora
Na Red Hat a jeho deriváty nainstalujte balíček
nfs-utils
:sudo yum install nfs-utils
Montáž souborových systémů
Budeme pracovat na klientském počítači s IP
192.168.33.110
, který má přístup pro čtení a zápis do systému souborů
/srv/nfs4/www
a přístup pouze pro čtení do systému souborů
/srv/nfs4/backups
.
Vytvořte dva nové adresáře pro připojovací body. Tyto adresáře můžete vytvořit na libovolném místě.
sudo mkdir -p /backups
sudo mkdir -p /srv/www
Připojte exportované souborové systémy příkazem
mount
:
sudo mount -t nfs -o vers=4 192.168.33.148:/backups /backups
sudo mount -t nfs -o vers=4 192.168.33.148:/www /srv/www
Kde
192.168.33.148
je IP serveru NFS. Místo adresy IP můžete také použít název hostitele, ale musí být vyřešen klientským počítačem. To se obvykle provádí mapováním názvu hostitele na IP v souboru
/etc/hosts
.
Při připojování souborového systému NFSv4 je třeba vynechat kořenový adresář NFS, takže místo
/srv/nfs4/backups
musíte použít
/backups
.
Ověřte, zda jsou vzdálené systémy souborů úspěšně připojeny pomocí příkazu mount nebo
df
:
df -h
Příkaz vytiskne všechny připojené souborové systémy. Poslední dvě řádky jsou připojené sdílené položky:
… 192.168.33.148:/backups 9.7G 1.2G 8.5G 13% /backups 192.168.33.148:/www 9.7G 1.2G 8.5G 13% /srv/www
Chcete-li, aby byly přípojky trvalé po restartu, otevřete soubor
/etc/fstab
:
sudo nano /etc/fstab
a přidejte následující řádky:
/ etc / fstab
192.168.33.148:/backups /backups nfs defaults, timeo=900, retrans=5, _netdev 0 0 192.168.33.148:/www /srv/www nfs defaults, timeo=900, retrans=5, _netdev 0 0
Chcete-li najít další informace o dostupných možnostech při připojování systému souborů NFS, zadejte do terminálu
man nfs
.
Další možností připojení vzdálených souborových systémů je použití nástroje
autofs
nebo vytvoření jednotky systemd.
Testování přístupu NFS
Vyzkoušejte přístup ke sdíleným položkám vytvořením nového souboru v každém z nich.
Nejprve zkuste vytvořit zkušební soubor do adresáře
/backups
pomocí příkazu
touch
:
sudo touch /backups/test.txt
Systém souborů
/backup
je exportován jako pouze ke čtení a podle očekávání se zobrazí chybová zpráva o
Permission denied
:
touch: cannot touch '/backups/test': Permission denied
Dále zkuste vytvořit testovací soubor do adresáře
/srv/www
jako root pomocí příkazu
sudo
:
sudo touch /srv/www/test.txt
Znovu se zobrazí zpráva
Permission denied
.
touch: cannot touch '/srv/www': Permission denied
Adresář
/var/www
je ve vlastnictví uživatele
apache
a tato sdílená
root_squash
má nastavenou možnost
root_squash
, která mapuje uživatele root na
nobody
uživatele a skupinu
nogroup
která nemá oprávnění ke zápisu do vzdálené sdílené složky.
Za předpokladu, že uživatelská
apache
existuje na klientském počítači se stejným
UID
a
GID
jako na vzdáleném serveru (což by měl být případ, pokud jste například nainstalovali apache na obou počítačích), můžete vyzkoušet vytvoření souboru jako uživatelská
apache
s:
sudo -u apache touch /srv/www/test.txt
Příkaz nezobrazí žádný výstup, což znamená, že soubor byl úspěšně vytvořen.
Chcete-li jej ověřit,
/srv/www
soubory v adresáři
/srv/www
:
ls -la /srv/www
Výstup by měl zobrazovat nově vytvořený soubor:
drwxr-xr-x 3 apache apache 4096 Jun 23 22:18. drwxr-xr-x 3 root root 4096 Jun 23 22:29.. -rw-r--r-- 1 apache apache 0 Jun 23 21:58 index.html -rw-r--r-- 1 apache apache 0 Jun 23 22:18 test.txt
Odpojení systému souborů NFS
sudo umount /backups
Pokud je přípojný bod definován v souboru
/etc/fstab
, ujistěte se, že jste řádek odstranili nebo jej přidali na začátek řádku #.
Závěr
V tomto tutoriálu jsme vám ukázali, jak nastavit server NFS a jak připojit vzdálené systémy souborů na klientských počítačích. Pokud implementujete NFS do výroby a sdílení citlivých dat, je vhodné povolit autentizaci pomocí kerberos.
Jako alternativu k NFS můžete použít SSHFS k připojení vzdálených adresářů přes připojení SSH. SSHFS je ve výchozím nastavení šifrován a mnohem snadněji konfigurovatelný a použitelný.
Pokud máte nějaké dotazy, neváhejte a zanechte komentář.
terminál centos nfsJak nainstalovat a nakonfigurovat server nfs na Ubuntu 18.04
Network File System (NFS) je distribuovaný protokol systému souborů, který umožňuje sdílet vzdálené adresáře v síti. V tomto tutoriálu se podíváme, jak nastavit server NFSv4 na Ubuntu 18.04.
Jak nainstalovat a nakonfigurovat redis na centos 7
Redis je úložiště datových struktur s otevřeným zdrojovým kódem. Může být použit jako databáze, zprostředkovatel mezipaměti a zpráv a podporuje různé datové struktury, jako jsou řetězce, hash, seznamy, sady atd.
Jak nainstalovat a nakonfigurovat squid proxy na centos 7
Squid je plnohodnotný vyrovnávací server proxy podporující populární síťové protokoly jako HTTP, HTTPS, FTP a další. Tento tutoriál vysvětluje, jak nastavit Squid na CentOS 7