.png)
MacクライアントのリモートUbuntuサーバー上のファイルを検索するためにNFSサーバーを設定しようとしています。
私のクライアントのホスト名/アドレスエントリに何を入力するのかわかりません/etc/exports
。クライアントのIPアドレスでなければならないと思いますが、権限の問題があるようです。動作しているように見える唯一の方法は、*
ホスト名/アドレスにワイルドカードを使用することです。
Mac クライアントで次のコマンドを実行します。
$ ifconfig | grep "inet " | grep -v 127.0.0.1
inet 192.168.1.112 netmask 0xffffff00 broadcast 192.168.1.255
私はUbuntuサーバー/etc/exports
ファイルでこのIPアドレスを次のように使用します。
/home/user 192.168.1.112(insecure,rw,all_squash,anonuid=1000,anongid=1000,no_subtree_check)
Macは/etc/auto_master
こんな感じでした。
/net -hosts -nobrowse,nosuid,locallocks,nfc,actimeo=1
sudo exportfs -vra
サーバーとsudo automount -vc
Macクライアントで実行した後、次を実行しようとすると、依然として「許可を拒否」というメッセージが表示されます。
$ ls /net/<REMOTE IP>/home/user
ls: /net/<REMOTE IP>/home/user: Permission denied
ただし、サーバーをワイルドカードに変更すると、コマンドを正常に実行/etc/exports
できます。ls
/home/user *(insecure,rw,all_squash,anonuid=1000,anongid=1000,no_subtree_check)
しかし、私はこれがセキュリティの観点から最善の選択ではないことを知っています。
Mac IPアドレスのいくつかの他のバリエーションを試しましたが、ワイルドカードを使用して指定しない限り、権限の問題を解決できないようです。これにより、住所を除く残りの設定は問題ありません。
/etc/exports
このエントリに入力する正しいアドレスをどのように見つけることができますか?
答え1
クライアントがファイルシステムをマウントした後、showmount
サーバーで実行されます。これにより、サーバーがクライアントアドレスを理解している内容が表示されます。 (サーバーに名前が表示されますが、アドレスが必要な場合は、サーバーからコマンドまたは同様のコマンドをhost
使用して名前からアドレスを取得します。)その後、ファイルシステムのエクスポート範囲をそのアドレスに絞り込むことができます。
サーバーに表示されるアドレスは随時変更されることがあります。これが発生した場合は、この練習を繰り返す必要があります。
サーバーがインターネット上にある場合は、Webブラウザのシークレット/プライベートページを使用して同様のWebサイトにアクセスすると、クライアントに割り当てられた外部アドレスを見つけることができます。https://www.ipaddress.com/またはhttps://whatismyipaddress.com/またはhttps://showip.net/。これは、NFSエクスポートを絶えず世界中に開き、ファイルシステムをマウントして実行するよりも優れていますshowmount
。