昨日の、samba設定周りの話の続き。
<昨日までのお話>
USBメモリに入れたLinux Mint19.3(USBメモリから起動
できるLinux環境)、sambaの設定したらWindows10機
のエクスプローラから見えず、Linux Mintのファイル
マネージャからもWindows10機にアクセスできない
状態。(もちろん、Windows10機同士ならマシン名で
お互いの共有フォルダにアクセスできる状態)
以前のUbuntu / Linux Mintなら、OSインストールした
直後に、Windows同士と同じように、Windows上の
共有フォルダに「名前」で一覧表示されてたし、
WindowsのエクスプローラからもLinux上の共有
ディレクトリにアクセスできてたのに。
だいたいは、Windows10がsmb1/cifsのサポートを
やめちゃったことが原因だろうけど、それなら
smb2なり3なりを使って今までのようにアクセス
してくれればいいのにと思うんだけど、まぁ現状は
そうなっていないので、なんとかして、昔のような
感じで、Windows←→Linux双方でファイル共有が
できるようにしたいなというのが、昨日までの
お話。
<基本的な前提情報>
・Windows10機には、共有ディレクトリを作って公開
していて、別のWindows10からアクセス可能に
なっている
・Linux側は、Debian系(Ubuntu、Linux Mint、Raspbian)
あたりのOSが入ってて、sambaをインストール・設定
済みで、Linux端末同士ではファイル共有が可能に
なっている。
・多分、最近のDebian系ではAvahiが標準でインストール
されてて、標準インストールでも「マシン名.local」
で名前解決が可能になっている。(Avahiが入って
なかったら入れる必要)
・smb.conf自体の設定内容については、ここでは触れない。
pdbeditでsambaアカウントを追加したり、systemctlで
sambaを自動起動設定するなどの、もろもろについては、
適宜ネットでググってほしい。
・個人的なPC環境の都合として、Linuxサーバ周りに
ついては、適宜ポートを閉じたり、アクセスできる
IPアドレスを絞ったりして、セキュリティーホールを
突かれにくい環境にしてある。具体的には、samba周り
については、udpでは137と138が、tcpでは139と445が
それぞれ受付可能なように、ufwで設定を行っている。
(追記:sshのポートと、http用のポートも開けてある)
<Windows10側からLinuxサーバを名前で発見可能にする>
以前、Linux環境からWindows上の共有フォルダが見れた
のは、Linux・Windows双方がsmb1を使って名前解決・
ファイル共有できるようになっていたからだけど、
smb1のセキュリティーホールを突く「WannaCry」の対策
として、smb1が無効化されてしまった。
その結果、IPアドレスを直接指定しないと、共用フォルダ
(共用ディレクトリ)を公開しているマシンにアクセス
できなくなっている。
で、SMB2以降(ここではSMB3)を使ってファイル共有する
ために、双方向で「名前解決」できる必要があって、
そのうちWindows10側からLinux上の共有ディレクトリに
アクセスするための、名前解決に関する手段を組み込む
必要が出てくる。
具体的には、「wsdd」という、Python3で作られた
名前解決のデーモンを導入することで、名前解決を図る。
・wsddが使用するポートを開放する
ufwを使って、ファイアウォールのポートを開ける。
具体的には、TCPとUDPの3702を開けるのと、TCPの
5357番・5358番を開けておく。
sudo ufw allow 3702/tcp
sudo ufw allow 3702/udp
sudo ufw allow 5357/tcp
sudo ufw allow 5358/tcp
・wsddのインストール
http://benedicam-te.blogspot.com/2019/05/samba-wsdd-windows10.html
を参考に、wsddをダウンロード(wget)、設定ファイル
の設定、サービスの登録と起動をおこなう。
その際、ドメインについては、「MYDOMAIN」の
代わりに、Windows標準の「WORKGROUP」を設定
しておけば、ひとまず大丈夫なはず。
設定したら、以下のコマンドでsystemctlコマンド
を使って、systemdにwsddサービスの有効化と起動を
行う。
systemctl enalbe wsdd
systemctl start wsdd
これ以降、Windowsのエクスプローラで共用ファイルに
アクセスすることが可能なはず。
(追記:Linuxサーバに振った名前を指定してアクセス
が可能になったはず)
<Linuxサーバ側からWindows上の共有ディレクトリにアクセス可能に>
Linux Mint19.3など最近のDebian系Linuxでは、Avahi
がデフォルトでインストールされており、mDNSで
名前解決が可能になっている。(入っていない場合は
aptなどでAvahiを導入要)
Avahiが有効であれば、例えばpingコマンドなどでは
「ping (マシン名).local」
のように、「.local」をつけることで、IPアドレスを
直接指定しなくても、そのマシンにアクセス可能に
なっている。(名前の解決ができるようになっている)
しかし、これだけではファイルマネージャからWindows上
の共有フォルダにアクセスできない。アクセスするため
には、「winbind」「libnss_winbind」のインストール
と、設定が必要。
・winbind、libnss_winbindのインストール
sudo apt-get install winbind libnss-winbind
・設定ファイルを修正して、再起動して反映
sudo nano -w /etc/nsswitch.conf
で設定ファイルを開いて、hosts行の「dns」の
手前のところに「wins」を追記する
(ctrl-xで保存して終了)
Linux OSを再起動すると、Linux側からWindows上の
共有フォルダにアクセス可能になっている(はず)。
ただし、ファイルマネージャの「ネットワーク」の
ところを開いても、一覧表示はされないみたい。
(url欄に、smb://(マシン名).local と直接名前で指定
することで、そのマシンの共有ディレクトリにアクセス
が可能に)
というわけで、なんだかんだで、これまでに認識して
いた方法で、Windows←→Linux間でファイルの共有が
可能になったはず。
Ubuntu、Linux Mint、Raspbianそれぞれで、この方法が
適用できると思うんだけど、現状はLinux Mintだけで
しか確認できてないので、他の環境の場合はそれなりの
対処をしていただければと。
(間違えがあったりしたら、こっそり教えてください。
あまりちゃんと検証できてないので)
https://twitter.com/Hoshigamiya/status/1231093464462266368
「頭が赤い魚を食べる猫」
https://twitter.com/erokhairo/status/1230798741915000832
深センのタクシーの状況。
日本でも、近々こういう状況が必要になってくるん
じゃないのかなぁ?
https://twitter.com/gachacomplete/status/1230997070376341504
「アセンブリ、チョットワカル」
https://twitter.com/mizuhasi_yukkie/status/1231068315281281024
かっちょいい!かっちょいい!!
これぞサイバーだな。サイバー感120%。
https://twitter.com/yosizo/status/1230693329655877636
手洗い大事。
ちなみにオイラ、外出から帰ったら、250ppmの塩素
スプレーで手を殺菌してるので、ここ1年以上は
風邪らしい風邪をひいたことがないなぁ。
(訂正:200pmだった。原液が500pmの次亜塩素酸を
2.5倍に薄めて使ってた)
https://toyokeizai.net/articles/-/331558
おでん種店が、東京ですごい減ってるらしい。
https://www.youtube.com/watch?v=6YfULP57Dz4
CPUをトランジスタで作ろう!#11 が来てた。
完成間近だな。



|
 |
|
|
|
|