Difference between revisions of "NFS"

From A-Eskwiki
Jump to: navigation, search
(NFS maken)
(NFS-client aanmaken)
 
(22 intermediate revisions by one other user not shown)
Line 14: Line 14:
 
== NFS met Kerberos maken ==
 
== NFS met Kerberos maken ==
 
=== NFS-server aanmaken ===
 
=== NFS-server aanmaken ===
 +
De eerste stap die gedaan moet worden is dat op de ipa-server het volgende commando moet worden uitgevoerd:
 +
<pre>
 +
ipa service-add nfs/<nfs-server-addres>
 +
</pre>
 
(Als root): Zorg dat de volgende packages geïnstalleerd zijn op de nfs-server: rpcbind nfs-utils nfs-utils-lib. Zo niet:
 
(Als root): Zorg dat de volgende packages geïnstalleerd zijn op de nfs-server: rpcbind nfs-utils nfs-utils-lib. Zo niet:
 
<pre>
 
<pre>
Line 20: Line 24:
 
Zorg er vervolgens voor dat nfs, nfslock en rpcbind als deamons goed worden gestart:
 
Zorg er vervolgens voor dat nfs, nfslock en rpcbind als deamons goed worden gestart:
 
<pre>
 
<pre>
chkconfig --level 35 nfs on
+
chkconfig nfs on
chkconfig --level 35 nfslock on  
+
chkconfig nfslock on  
chkconfig --level 35 rpcbind on
+
chkconfig rpcbind on
 
</pre>
 
</pre>
 
Start dan de deamons:
 
Start dan de deamons:
Line 29: Line 33:
 
service nfslock start
 
service nfslock start
 
service nfs start
 
service nfs start
</pre>
 
In het bestand /etc/exports staan welke mappen op de server door welke hosts mogen worden gemount. Elke regel is als volgt:
 
<pre>
 
directory host(options)
 
</pre>
 
De opties die je mee kan geven zijn:
 
*ro: read-only access
 
*rw: read-write access
 
*sync: synchronous access
 
*no_root_squash: Iets met dat root altijd privileges heeft
 
*subtree_check: iets met subtrees
 
*crossmount:
 
Voorbeeld /etc/exports:
 
<pre>
 
/nfs/srv 10.14.0.0/24(ro,sync,no_root_squash,subtree_check,crossmnt)
 
 
</pre>
 
</pre>
 
Vervolgens moeten de juiste poorten in de firewall opengezet worden:
 
Vervolgens moeten de juiste poorten in de firewall opengezet worden:
 
*TCP/UDP 111: voor de portmapper
 
*TCP/UDP 111: voor de portmapper
*TCP/UDP 2049: voor NFSD
+
*TCP 2049: voor NFSD
 +
*TCP 32803
 +
*UDP 32769
 +
*TCP/UDP 892
 +
*TCP/UDP 875
 +
*TCP/UDP 662
 
en verander het volgende in /etc/sysconf/nfs:
 
en verander het volgende in /etc/sysconf/nfs:
 
<pre>
 
<pre>
Line 56: Line 50:
 
STATD_PORT=662
 
STATD_PORT=662
 
STATD_OUTGOING_PORT=2020
 
STATD_OUTGOING_PORT=2020
 +
RDMA_PORT=2049
 
</pre>
 
</pre>
Restart de deamons:
+
Restart iptables en nfs:
 
<pre>
 
<pre>
service rpcbind restart
+
service iptables restart
 
service nfs restart
 
service nfs restart
 
</pre>
 
</pre>
en zet het volgende in /etc/sysconf/iptables:
+
Kopiëer de krb5.keytab:
 
<pre>
 
<pre>
-A INPUT -s 0.0.0.0/0 -m state --state NEW -p udp --dport 111 -j ACCEPT
+
kinit <user>
-A INPUT -s 0.0.0.0/0 -m state --state NEW -p tcp --dport 111 -j ACCEPT
+
ipa-getkeytab -s <ipa-server> -p nfs/<nfs-server> -k /etc/krb5.keytab
-A INPUT -s 0.0.0.0/0 -m state --state NEW -p tcp --dport 2049 -j ACCEPT
+
-A INPUT -s 0.0.0.0/0  -m state --state NEW -p tcp --dport 32803 -j ACCEPT
+
-A INPUT -s 0.0.0.0/0  -m state --state NEW -p udp --dport 32769 -j ACCEPT
+
-A INPUT -s 0.0.0.0/0  -m state --state NEW -p tcp --dport 892 -j ACCEPT
+
-A INPUT -s 0.0.0.0/0  -m state --state NEW -p udp --dport 892 -j ACCEPT
+
-A INPUT -s 0.0.0.0/0  -m state --state NEW -p tcp --dport 875 -j ACCEPT
+
-A INPUT -s 0.0.0.0/0  -m state --state NEW -p udp --dport 875 -j ACCEPT
+
-A INPUT -s 0.0.0.0/0  -m state --state NEW -p tcp --dport 662 -j ACCEPT
+
-A INPUT -s 0.0.0.0/0 -m state --state NEW -p udp --dport 662 -j ACCEPT
+
 
</pre>
 
</pre>
Je kan hierbij ook alleen de ip-adress zetten die je wilt toelaten. Restart iptables:
+
In het bestand /etc/exports staan alle directories die je via nfs wilt delen. Voeg voor iedere dir die je wilt delen de volgende regels aan /etc/exports toe:
 
<pre>
 
<pre>
service iptables restart
+
*path-to-dir*  *(rw,fsid=0,insecure,no_subtree_check,no_root_squash)
 +
*path-to-dir*  gss/krb5(rw,fsid=0,insecure,no_subtree_check)
 +
*path-to-dir*  gss/krb5i(rw,fsid=0,insecure,no_subtree_check)
 +
*path-to-dir*  gss/krb5p(rw,fsid=0,insecure,no_subtree_check)
 +
</pre>
 +
Zet ook het volgende in /etc/sysconfig/nfs:
 +
<pre>
 +
SECURE_NFS=yes
 +
</pre>
 +
Restart de deamons:
 +
<pre>
 +
service rpcbind restart
 +
service nfs restart
 +
</pre>
 +
en vanwege de secure_nfs:
 +
<pre>
 +
chkconfig rpcsvcgssd; service rpcsvcgssd restart
 
</pre>
 
</pre>
  
Line 85: Line 87:
 
<pre>
 
<pre>
 
yum install nfs-utils nfs-utils-lib
 
yum install nfs-utils nfs-utils-lib
 +
</pre>
 +
Zorg ervoor dat de nfs- en rpcbinddaemons zijn gestart:
 +
<pre>
 +
service rpcbind start
 +
service nfs start
 +
chkconfig rpcbind on
 +
chkconfig nfs on
 
</pre>
 
</pre>
 
Nu kan je de map mounten:
 
Nu kan je de map mounten:
 
<pre>
 
<pre>
mount <nfs-servernaam/nfs-server-ip>:<dir die op de server in /etc/exprots staat> <de map waar je de nfs op de client wilt hebben>
+
mount <NFS-SERVER-IP>:<DIR> <MOUNTDIR>
 
</pre>
 
</pre>
 
Ook kan je de nfs automatisch laten mounten bij startup door de volgende regel toe te voegen in /etc/fstab:
 
Ook kan je de nfs automatisch laten mounten bij startup door de volgende regel toe te voegen in /etc/fstab:
 
<pre>
 
<pre>
<NFS-SERVER-IP>:<DIR> <MOUNTDIR>  nfs4   noatime  0 0
+
<NFS-SERVER-IP>:<DIR> <MOUNTDIR>  nfs   rw,noatime,context="selinuxcontext"   0 0
 
</pre>
 
</pre>
 +
Als je de home partitie mount in CentOS, zorg dan voor de juiste SELinuxcontext, system_u:object_r:user_home_t:s0.
 +
 +
Bij Fedora wordt tijdens de kickstart automatisch de nfs in de fstab gezet. Als dit niet zo is, let er dan op dat bij het mounten van de homepartitie geen context meegegeven wordt, de context wordt dan standaard gezet.
 +
 +
Als je de home partitie op de mailserver wil mounten, zet dan de lock_method van dovecot op dotlock!

Latest revision as of 19:51, 12 June 2013

NFS is een acronym voor Network File System, een manier om partities over een netwerk te mounten. Binnen A–Eskwadraat gebruiken we dit om de volgende partities te delen tussen de workstations:

Hiervan worden `/home` en `/var/mail` op quota gemonitord.

NFS met Kerberos maken

NFS-server aanmaken

De eerste stap die gedaan moet worden is dat op de ipa-server het volgende commando moet worden uitgevoerd:

ipa service-add nfs/<nfs-server-addres>

(Als root): Zorg dat de volgende packages geïnstalleerd zijn op de nfs-server: rpcbind nfs-utils nfs-utils-lib. Zo niet:

yum install rpcbind nfs-utils nfs-utils-lib

Zorg er vervolgens voor dat nfs, nfslock en rpcbind als deamons goed worden gestart:

chkconfig nfs on
chkconfig nfslock on 
chkconfig rpcbind on

Start dan de deamons:

service rpcbind start
service nfslock start
service nfs start

Vervolgens moeten de juiste poorten in de firewall opengezet worden:

  • TCP/UDP 111: voor de portmapper
  • TCP 2049: voor NFSD
  • TCP 32803
  • UDP 32769
  • TCP/UDP 892
  • TCP/UDP 875
  • TCP/UDP 662

en verander het volgende in /etc/sysconf/nfs:

LOCKD_TCPPORT=32803
LOCKD_UDPPORT=32769
MOUNTD_PORT=892
RQUOTAD_PORT=875
STATD_PORT=662
STATD_OUTGOING_PORT=2020
RDMA_PORT=2049

Restart iptables en nfs:

service iptables restart
service nfs restart

Kopiëer de krb5.keytab:

kinit <user>
ipa-getkeytab -s <ipa-server> -p nfs/<nfs-server> -k /etc/krb5.keytab

In het bestand /etc/exports staan alle directories die je via nfs wilt delen. Voeg voor iedere dir die je wilt delen de volgende regels aan /etc/exports toe:

*path-to-dir*  *(rw,fsid=0,insecure,no_subtree_check,no_root_squash)
*path-to-dir*  gss/krb5(rw,fsid=0,insecure,no_subtree_check)
*path-to-dir*  gss/krb5i(rw,fsid=0,insecure,no_subtree_check)
*path-to-dir*  gss/krb5p(rw,fsid=0,insecure,no_subtree_check)

Zet ook het volgende in /etc/sysconfig/nfs:

SECURE_NFS=yes

Restart de deamons:

service rpcbind restart
service nfs restart

en vanwege de secure_nfs:

chkconfig rpcsvcgssd; service rpcsvcgssd restart

NFS-client aanmaken

(Als root:) Zorg ervoor dat de juiste package zijn geïnstalleerd:

yum install nfs-utils nfs-utils-lib

Zorg ervoor dat de nfs- en rpcbinddaemons zijn gestart:

service rpcbind start
service nfs start
chkconfig rpcbind on
chkconfig nfs on

Nu kan je de map mounten:

mount <NFS-SERVER-IP>:<DIR> <MOUNTDIR>

Ook kan je de nfs automatisch laten mounten bij startup door de volgende regel toe te voegen in /etc/fstab:

<NFS-SERVER-IP>:<DIR> <MOUNTDIR>   nfs   rw,noatime,context="selinuxcontext"   0 0

Als je de home partitie mount in CentOS, zorg dan voor de juiste SELinuxcontext, system_u:object_r:user_home_t:s0.

Bij Fedora wordt tijdens de kickstart automatisch de nfs in de fstab gezet. Als dit niet zo is, let er dan op dat bij het mounten van de homepartitie geen context meegegeven wordt, de context wordt dan standaard gezet.

Als je de home partitie op de mailserver wil mounten, zet dan de lock_method van dovecot op dotlock!