SAMBAに関する一般情報。 SAMBAとは?
この商品 サーバーとクライアントのセットです ソフトウェア UNIXマシンをMicrosoftおよびLanManagerネットワークと通信するためのものですWindowsでは、 共有アクセス Fedora側では、nmbdとsmbdの2つのサービスがサービスを担当しています(winbinddサービスもありますが、それがない場合もあります) すべて正常に動作しますが、サーバがドメイン内で動作するために必要です)。
- SMBD それぞれのSambaサーバーデーモン
- NMBD ホスト名の解決を担当するNetBIOSデーモンと、コンピュータがネットワーク環境で見つかることを確認します。起動されていないか正しく設定されていないと、コンピュータはip-personだけが見ることができます。
- ウィンバインド このサービスは、Sambaをより完全にWindowsドメインに統合するために設計された新しいツールです。 それはSamba 2.2.0から始まりました。 このサービスは/etc/samba/smb.confから設定を読み込み、PDCドメインと動的にやりとりし、ドメインとSambaマシンのユーザとグループのリストを自動的に同期させます。 したがって、winbindはSambaワークステーションへのドメインユーザーベースの関連性を自動的に維持するための非常に便利なツールです。
SMBネットワークで作業するには、以下が必要です。
- 顧客
- サーバー
- 管理ツール
SMBを使用する場合、次のリソースが利用できます。
- ネットワークドライブ
- ダイレクトドライブパス
- プリンタ
- ドメインの承認と管理
必要なパッケージのインストール
次のコマンドを入力します。
Su -c "yum -yインストールするsamba samba-client samba-common"
必要なデーモン(smbdとnmbd)と追加ソフトウェアパッケージの両方がインストールされます。 追加のパッケージをインストールして、グラフィカルモードでサーバーを構成することもできます。
Yum -yはsambaをインストールしますsystem-config-samba
その後、サーバーを構成する必要があります。
サーバー構成
ほとんどの場合、Sambaを設定するには、main 設定ファイル /etc/samba/smb.confを開き、smbpasswdを使用してユーザーを管理します。 これが珍しい場合は、SWAT Webインターフェース(Samba Web Administration Tool)を使用してみてください。 これを行うには、samba-swatパッケージをインストールし、URL http:// localhost:901 /をブラウザで開きます。
あるいは、通常のグラフィックスであるsystem-config-sambaパッケージを使ってすべてを設定することもできます。
まず、バックアップファイルを保存して、返すことができる場合は次のようにします。
Cp smb.conf smb.conf.backup
スケジュールカスタマイズ
典型的なsmb.confの設定
Sambaサーバの設定は、サイズと機能が大きく異なる可能性があります。 このファイルでは、膨大な数の異なるディレクティブを使用できます。 さらに記事では、最も一般的な構成のみを検討し、それらに含まれる指令を検討します。
通常のサーバー
ワークグループ= OFFICEセキュリティ=ユーザーOSレベル= 65ドメインマスター=いいえドメインログオン=いいえサポート=いいえ=パブリックスタッフパス= /ホーム/ samba /パブリック公開=はい書き込み可能=なし書き込みリスト= @staffセクション定義 一般設定 Sambaのサーバー側は一般的にすべてのリソースを対象としています。
- ワークグループ:ワークグループ名。
- セキュリティ:ユーザーアクセスレベル定義レベル。
- oSレベル:ワーキンググループの他のコンピュータの中でこのサーバの優先順位:ネットワークリソースのマッピングを担当するメインマシンを正確に決定します。 比較のため、Win9Xはosレベル= 34、NT4はosレベル= 64です。
- ドメインマスター :マスターサーバードメインを定義します。 この場合、ディレクティブは無効になります。
- ドメインログオン :近くのマシンのパスワードサーバにならないでください。 したがって、近隣のNTサーバーの激しい管理者が、自分のサーバーで彼を放棄していないと不平を言って走った場合、ドメインログオン=いいえ
- サポートを獲得するA:通常、最も簡単なネットワークでは、WINSは必要ありません。WINSは無効にして、自分自身で同じことをします。
- コメント :コメント、リソースへのコメントとしてWeb上に表示
- パス :リソースディレクトリへのパス
- 公開 :許可されたすべてのユーザー(定義されている場合はゲストユーザーを含む)
- 書き込み可能な :すべてのユーザーへの書き込み禁止
- 書き込みリスト = @staff:システム・スタッフ・グループ内のすべてのユーザーに対する書き込み許可
拡張された定期的な設定
この設定では、最も頻繁に使用される指示文が使用されます。 それを完全にコピーする必要はありません。通常のサーバーの場合、この設定は明らかに不要であり、ドメイン内のサーバーでは不十分です。 しかし、通常の設定でサーバを起動できなかった場合は、このサーバの仕組みや何かが動作していない場合のデバッグ方法を理解できます。
ワークグループ=サーバーグループサーバー文字列= Sambaサーバーのバージョン@netbios名前のレジストリ解像度= mmsの解像度bmkドメインドメイン名=ドメインなしログオン= noインターフェイス= lo eth0 192.168.1.0/24ログレベル= 10 passdb:5認証:10 winbind:10ログファイル= /var/log/samba/log.%m最大ログサイズ= 50勝サポート=無しサーバー= 192.168.1.1 winsプロキシ=はいdnsプロキシ=はいsmb passwdファイル= / etc / samba / smbpasswd ソケットオプション= TCP_NODELAY SO_RCVBUF = 8192 SO_SNDBUF = 8192 IPTOS_LOWDELAY IPTOS_THROUGHPUTローカルマスター=はいunix charset = utf8 dos charset = cp1251ディスプレイ文字セット= UTF8セキュリティ=ユーザpassdbアカウント= 0 damdアカウント番号、hr、数字、hr郡アカウント番号 =パブリックスタッフパス= / home / samba browseable =はいpublic = yes writable = yes printable = no write list = + staffパス= / pub browseable = yes public = yes writable = yes
- サーバー文字列 :ネットワーク環境を表示するときにコンピュータ名の後に来る文字列(たとえば、MYSERVER Samba Server Version 3.3.4)。
- ネットビオス名 これはネットビオスのコンピュータ名です。
- 名前解決順序 :このディレクティブは、サーバーがホスト名を解決しようとする順序を指定します。
- インタフェース :ディレクティブは、sambaサーバが待機するインタフェースとサブネットを設定します
- ログレベル :ログレベルの詳細、多くのデバッグクラスをサポートします。 このディレクティブの詳細については、smb-conf.ruを参照してください。
- ログファイル :ログファイルへのパスを示します。 サーバーは、さまざまなユーザーまたはコンピュータ用のさまざまなイベントファイルを保持します(これに注意してください)。
- 最大ログサイズ :最大ログサイズ(キロバイト)。 ファイルサイズに達すると、回転したログが実行されます。
- サポートを獲得する :SambaのnmbdがWINSサーバの場合、このパラメータはyesに設定されます。 すなわち wins serverはnmbデーモンの一部です。 WINSの詳細はもう少し後になります。
- サーバーを獲得する :winsサーバーのアドレス。
- プロキシに勝つ :このパラメータは、他のコンピュータからの名前を解決するためのブロードキャスト要求に応答するかどうかにかかわらず、nmbdの動作を制御します。 一部の古いクライアントでは、このパラメーターをyesに設定する必要があります。
- dNSプロキシ :Sambaは、通常のDNS nslookupでNetbiosの名前を解決しようとするかどうかを言います。
- smb passwdファイル :このパラメータは、暗号化されたパスワードファイルsmbpasswdへのパスを指定します。 デフォルトでは、このパスはSambuでコンパイルされます。
- ソケットオプション :クライアントにサービスを提供するために使用されるソケットのパラメータを設定できます。 sambaの作業を「加速」するために使用されます。
- ローカルマスター :このオプションを使用すると、nmbdデーモンはこのサブネット上のローカルマスターブラウザになることができます。
- unix charset :Sambaが* nix-clientsと対話するエンコーディング
- dOS文字セット :Windowsクライアントと対話するためのエンコーディング
- 文字セットを表示する :sambaがstdout(出力ストリーム)とstderr(エラーストリーム)にメッセージを出力するために使用する文字セットを指定します。
- セキュリティ :クライアントとのやりとりのモードを決定するか、クライアントにサーバーにアクセスするためのユーザー名とパスワードを送信するように指示します。
- passdbバックエンド :このパラメータを使用すると、管理者はユーザーに関する情報や場合によってはグループに関する情報を格納するメカニズムを選択できます。 デフォルトはsmbpasswdです。
- ゲストアカウント :通常ユーザーまたはゲストユーザーがSambaサーバーに接続するときは、適切なサーバーユーザーと一致する必要があります。 Sambaゲストアカウントになるシステムの既存ユーザーの1人を選択します。
重要な指示
指令 セキュリティ
- ADS - Sambaサーバは、Active Directoryドメイン(Active Directoryドメイン、ADS)のドメイン内のドメインメンバーとして動作します。 これを行うには、サーバーにKerberosをインストールして構成する必要があります.Sambaは、samba-clientパッケージに含まれているnetコマンドを使用して、ADSレルムのメンバーになる必要があります。 詳細については、net manページを参照してください。 このオプションを選択した場合、SambaはADSコントローラにはなりません。 Kerberosドメイン(Kerberos Realm)フィールドにKerberosサーバーの有効範囲を指定します。
- ドメイン - Sambaサーバは、プライマリおよびバックアップのWindows NTドメインコントローラに依存して、ユーザを検証します。 サーバーはユーザー名とパスワードをコントローラーに送信し、コントローラーからの応答を待ちます。 [認証サーバー]フィールドにプライマリまたはバックアップドメインコントローラのNETBIOS名を入力します。このオプションを選択すると、[暗号化されたパスワード]パラメータは[はい]になります。
- サーバー - Sambaサーバは、別のSambaサーバを使用してユーザ名とパスワードの組み合わせを検証しようとします。 これが失敗すると、サーバーはユーザー認証モードを使用してサーバーの検証を試みます。 認証サーバー(認証サーバー)フィールドに、別のSambaサーバーのNETBIOS名を入力します。
- リソース(共有) - Sambaユーザーは、Sambaサーバーに接続するときにユーザー名とパスワードを入力する必要はありません。 Sambaサーバは、このサーバの特定の共有ディレクトリに接続しようとするまで、名前とパスワードを要求しません。
- ユーザー - (デフォルト)Sambaユーザは、Sambaサーバに正しいユーザ名とパスワードを提供する必要があります。 Windowsユーザー名オプション(Windowsユーザー名)を使用する場合は、このオプションを選択します。
指令 WINS
WINS(Windowsインターネットネームサービス)は、ノードIPアドレスを持つNetBIOSコンピュータ名のマッピングサービスです。 WINSサーバーが指定されていない場合、wins経由のresolvメソッドは無視されます。 winsサーバーとwinsクライアントがあります。 クライアントがネットワークにログオンすると、彼はNetbiosの名前をサーバーに伝え、サーバーを使用して他のシステム名を解決します。 ブロードキャストトラフィックの量を減らすには、WINSサーバーが必要です。 サブネットが十分な大きさであれば、ブロードキャストは大量になる可能性があります。
サーバーの起動
サーバが設定されたら、サーバのsmbサービスをautoloadに設定し、サーバ自体を起動する必要があります。
Systemctl enable smb systemctlを有効にするnmb systemctl start smb systemctl start nmb
systemdのない古いシステムでは、
Chkconfig - レベル235 smb 235 chkconfig - レベル235 nmb 235サービスsmb開始サービスnmb start
smb.confを変更するたびに、サーバを再起動します。
Systemctl restart smb
古いシステムの場合:
Smbdの再起動
また、正しいディレクトリが共有ディレクトリにあることを確認してください。 SElinuxはユーザーのホームフォルダ内のボールにアクセスできないことを覚えておいてください。
iptablesファイアウォールの設定
クライアントからsambaリソースにアクセスできるようにするには、Iptablesファイアウォールを設定する必要があります。ポート137-139と445を開く必要があります。 次の例では、サブネット192.168.1。*からのSAMBAサーバーへのアクセスが許可されています。必要に応じて、-s 192.168.1.0/24オプションを削除して、サーバーへのすべてのアクセスを許可します
iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp -dport 137 -m状態 - 状態NEW -j ACCEPT iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp - dport 138 -m状態 - 状態NEW -j ACCEPT iptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp -dport 139 -m状態 - 状態NEW -j ACCEPT iptables -A INPUT -s 192.168 .1.0 / 24 -p tcp -m tcp -dport 445 -m状態 - 状態NEW -j ACCEPT iptables-save\u003e / etc / sysconfig / iptables
SAMBAのユーザーを作成する
まず、システムに通常のユーザを作成してから、特別なコマンドsmbpasswdを使ってユーザをデータベースに追加する必要があります。Samba-server一般ユーザを作成します。
Useradd -M(ホームフォルダなし)-l -s / sbin / nologin(ssh経由でログインしないようにする)username
ユーザーパスワードを指定する:
パスワードトム
Sambaユーザを作成する:
Smbpasswd -a tom
サーバーの診断
サーバを起動した後、smbclientを使ってサーバから接続することができます:
Smbclient //
置換
Smbclient -L hostname - ホスト上の共有リソースを参照
ネットワーク環境でコンピュータが見えない場合は、nmblookupユーティリティを使用してネームサービスの動作を確認する必要があります。まず、クライアントでユーティリティが実行され、次にクライアントがサーバでresolv-runエラーを発行します。 サーバが何も提示しない場合、問題はnmb-daemonにあり、サーバを処理する必要があります。 クライアントまたはサーバー上のファイアウォールも干渉する可能性があります。
Nmblookup<имя_компьютера> nmblookup -A IP
findsmbコマンドを使用して、ネットワーク上のサーバーを検索することもできます。
類似のスクリューコマンド:
ネットビュー\\\\ NBNAME nbtstat -a
何も動作しない場合は、ファイアウォールを無効にするとどうなるかを確認する目的があります。
サービスiptables stop
サーバーを操作するためのユーティリティ
サーバーを操作するには、いくつかの追加ユーティリティがあります。
smbstatus ::サーバへの現在の接続に関するレポートを表示します。
smbpasswd :: Sambaユーザのパスワードを設定または変更するために使用されます。
findsmb ::ネットワーク上のSambaコンピュータを見つけるために使われます。
nmblookup :: NetBIOS over TCP / IPを使用してコンピュータ名をIPアドレスに変換します。
net :: Sambaサーバを遠隔管理するために使用されます。
smbclient :: UNIX / Linuxクライアントコンピュータがサーバーに接続するために使用します。
smbtar ::このユーティリティは、サーバに格納されたデータのバックアップを作成するために使用されます。
testparm ::ユーティリティーは、サーバー構成ファイル(smb.conf)の構文を検査します。
便利なコマンド
smb.confを変更した後、サービスを再起動する必要があります。
Systemctl restart smb
Sambaリソースをディレクトリにマウントするには、ディレクトリがまだ存在しない場合は作成し、rootとして次のコマンドを実行します。
マウント-t cifs -o username =
このコマンドは、リソースをマウントします。
ユーザー名でホストに接続し、ホストホスト上のボールを参照してください:
Smbclient -L host -U username
新しいユーザーを作成する:
Smbpasswd -a
既存のユーザーパスワードの変更:
Smbpasswd
既存のユーザーを削除する:
Smbpasswd -x
サスペンション アカウント 削除せずに:
Smbpasswd -d
このコンピュータを既存のドメインに接続する:
Smbpasswd -j
関連Webサイト
- http://smb-conf.ru/ロシア語のSambaに関するすべての情報
あるいは興味と好奇心があって、ユーザーがさまざまな適切なソフトウェアを検索するようになっているかもしれません。 このソフトウェアはSambaです。 Sambaをどのように設定するかを知る必要があります Ubuntuサーバーあなたのコンピュータからデータベースまたはファイルストレージを作成する場合。
Ubuntu ServerにSambaをインストールすると、データベースを作成できます。
そのページがダンスの研究に専念していると思ったら、あなたは少し間違っています。 Sambaはフリーソフトウェアです。 プリンタとファイルへのアクセスを提供します。 そしてそれは様々な オペレーティングシステムああ
それは何のためですか?
同様の目的の他のソフトウェアパッケージと比較して、Sambaにはいくつかの利点と特長があります。
- Unixライクなシステム、つまり、Linux上のシステムとWindowsを互いに接続することができます。 そして、Windowsだけでなく。 このプログラムは、MacOS、Solaris、その他の人気度の異なるオペレーティングシステムなど、非常に「雑食的」なものです。
- Sambaは、WindowsユーザーがUbuntu上のコンピューターをサーバーとして使用できるようにします。 つまり、アクセスが確立されたファイル、および接続されているデバイスの一部を使用します。
- これは、NTドメインのドメイン構造をサポートし、NTユーザーを管理し、参加者の機能をサポートし、プライマリコントローラです。
おそらく多くの場合、これはWindows上のマシンとの接続です。 この場合、それらはクライアントとして機能し、Ubuntu上のコンピュータとして機能します。 一方、UbuntuユーザーはWindowsネットワークフォルダにアクセスすることもできます。
サンバは1992年以来生産されています。 そして、最も重要なことに、新しいバージョンはまだ出ています。 後者は2017年3月7日にリリースされました。毎年、開発者は多数の異なるバージョンのオペレーティングシステムとの互換性を確立しようとしていますが、主なチップはLinuxシステムとマイクロソフトの接続です。 Windows Serverと比較すると、Sambaはいくつかのプロトコルとノードのインフラストラクチャのサポートが不足しているため、それよりも劣っている可能性があります。 しかし、多くの人は、Sambaの速度がはるかに高いと主張しています。
Sambaの設定
直接セットアップする前に、プログラムをインストールする必要があります。 Sambaのインストールは、他のプログラムの場合と同じ方法で - 端末にコマンドを入力することによって実行されます:
sudo apt-get install samba
直ちに注意してください:プログラムのインストールを含め、説明されるすべてのアクションは、単純なUbuntuとUbuntuの両方のサーバーで実行できます。 後者の場合のみ、テキストベースのインターフェースだけが利用可能です。
インストール後、設定ファイルをバックアップする必要があります:
$ sudo mv /etc/samba/smb.conf /etc/samba/smb.conf.bak
$ sudo vi /etc/samba/smb.conf
あるいは、既存のものを編集します。 このファイルには、Sambaサーバーの主なインストールが含まれています。 私たちが次に何をするかを理解するには、異なる行が何を意味するのかを理解する必要があります。
- ワークグループ - ワーキンググループ。 このパラメータの値は、Windowsではデフォルトのワークグループドメインがまったく同じように見えるため、ワークグループになることがよくあります。
- Netbiosの名前はWindowsユーザーが見るUbuntuコンピュータの名前です。 ここでは、その裁量で値を入力できます。
- セキュリティ - ユーザー認証モード。 デフォルトはUser(ユーザーレベルの認証)です。 今のところ、残しておく方がいいです。
- Osレベル - Sambaがローカルまたはインターネットネットワーク上の他のクライアント(PC)よりも優先順位が高いことを示します。
- 名前解決順序 - NetBIOS名でIPアドレスを解決する順序。
- 読み取り専用 - ディレクトリを読み書きする特権。 値は "yes" - 読み込み専用、 "no" - 書き込むことができます。
ユーザーを作成する
これはSambaの作業を開始するための最も簡単なアクションです。
OS自体にユーザを追加する:
$ useradd -M -l -s / sbin / nologin username
パスワードを作成する:
ユーザーをSambaデータベースに連れて行く:
$ smbpasswd -a username
$ smbpasswdコマンドを使用して、さまざまな他のアクションを実行できます。
- $ smbpasswd username - パスワードの変更
- $ smbpasswd -x username - ユーザを削除する
- $ smbpasswd -d username - ユーザー禁止
構成ファイルを変更する場合は、サーバーを再起動する必要があります。 これは、次のコマンドを使用して行います。
$ systemctl restart smb
これがSambaの基本設定です。 これでプログラムを実践しようとすることができます。
フォルダへのアクセス
まず、フォルダを作成しようとします。そのフォルダへのアクセスは、Sambaで承認されていないユーザを含めて、すべてのユーザに公開されます。
2つのコンピュータで作業するためのフォルダを作成します。
$ sudo mkdir -p / samba / access
今、私たちはこのフォルダの拡張アクセスを行って、私たちのクライアントがそれを開くことができるようにしています。 ローカルネットワーク:
$ cd / samba
$ sudo chmod -R 0755アクセス権
$ sudo chown -R誰も:nogroupアクセス/
コードに従う所有者は誰もいません。
今度はサーバー構成ファイルで、2つのセクションを実行する必要があります。最初のセクションは、基本情報を含んでいます。
ワークグループ=ワークグループ
サーバー文字列= Sambaサーバー%v
netbios name = srvr1
セキュリティ=ユーザー
ゲスト=悪いユーザーにマップする
名前解決順序= bcastホスト
dns proxy = no
#==============
そして2番目には、アクセスフォルダのデータが入っています:
パス= /サンバ/アクセス
閲覧可能=はい
writable = yes
ゲストok =はい
読み取り専用=いいえ
同じ順序で次々とセクションをたどります。
サーバーの変更を更新する:
$ sudoサービスsmbd restart
Windowsでのコンピュータの操作
Windowsでは、新しい共有フォルダーを簡単に開いて編集できるように、いくつかのアクションを実行する必要もあります。
- 開く コマンドライン。 これは、管理者に代わって、拡張権利で行うことをお勧めします。
- 次のコマンドを実行します。
- メモ帳C:\\ Windows \\ System32 \\ drivers \\ etc \\ hosts
- ファイルが開き、次の行を入力します。
- 168.0.1 srvr1.domain.com srvr1
彼女のフォルダーに感謝します。 - あなたは "実行"行の助けを借りてそれを開くことができます。 Win + Rキーを押すと入力します。その後、フォルダを開きます。
閉じたフォルダ
カスタマイズされた サンバサーバー 作成に使用することができます ネットワークフォルダ アクセスが制限されています。 このフォルダも最初に作成してからSambaの設定に追加する必要があります。
名前が「Closed」のフォルダを作成します。
$ sudo mkdir -p / samba / allaccess / closed
このフォルダにアクセスできる特別なグループを作成します。
$ sudo addgroup securedgroup
私たちはさまざまなグループに特別な権利を創造します:
$ cd / samba / access
$ sudo chown -R richard:securedgroup closed
$ sudo chmod -R 0770 closed /
オープンフォルダの場合と同様に、設定に情報を追加します。
パス= /サンバ/アクセス/クローズ
有効なユーザー= @securedgroup
ゲストok =いいえ
writable = yes
閲覧可能=はい
サーバーを再起動します。
ご覧のとおり、Access内でClosedを作成しました。 したがって、ローカルネットワークの各ユーザーがAccessを開くことができますが、Closedを表示および編集するには特別な権限が必要です。
私たちが設定した通りにすべてが正しく動作するようにする バッチファイルいくつかの簡単な手順を実行できます。
まず、パッケージをインストールします。 サンバ:
Sudo aptはSambaをインストールする
これでSambaを共有するように設定できます。
Sambaのセットアップ
Sambaの設定ファイルは/etc/samba/smb.confにあります。 オリジナルの設定ファイルには、さまざまな設定ディレクティブを記述するための重要なコメントがあります。
すべての可能なオプションがデフォルト設定ファイルに含まれているわけではありません。 詳細については、man smb.confまたはSamba Helpマニュアルを参照してください。
まず、次の値を変更するか、セクションに追加します。 /etc/samba/smb.confファイル:
ワークグループ= WORKGROUPセキュリティ=ユーザー
設定に応じてワーキンググループの名前を変更します(Windowsでは、デフォルトでワーキンググループの名前はWORKGROUPです)。
新しいセクションを追加 ファイルの最後に、または共有するディレクトリの例の1つをコメント解除します。
コメント= 共有フォルダ Ubuntuパス= / home / samba / share browsable = yesゲストok = yes読み取り専用= no create mask = 0644
コメント - 共有の説明。
path - 共有ディレクトリへのパス
ブラウズ可能 - クライアントは共有ディレクトリの内容を表示できます。
guest ok - クライアントはパスワードを指定せずに共有に接続できます。
読み取り専用 - リソースが「読み取り専用」かどうか。
マスクセットファイルのパーミッションを作成します。
ディレクトリを作成する必要があります:
Sudo mkdir -p / home / samba / share
-pオプションは、mkdirに存在しない場合は完全なディレクトリツリーを作成するように指示します。
それに対するパーミッションを設定する:
Sudo chown誰も:nogroup / home / samba / share / sudo chmod 755 / home / samba / share /
最後に、sambaサービスを再起動して新しい設定を適用します。
Sudoサービスsmbd restart
Ubuntu共有がネットワーク上に表示され、共有ディレクトリを参照できます。 クライアントが共有リソースを自動的に表示しない場合は、そのIPアドレス(たとえば、\\\\ 192.168.0.1)でサーバーに問い合わせてください。 ファイルサーバーが動作していることを確認するには、共有リソース内にディレクトリを作成してみてください。
追加の共有を作成するには、新しいセクションを作成します。 /etc/samba/smb.confにコピーし、Sambaを再起動してください。 共有ディレクトリが作成され、適切なアクセス権を持っていることを確認してください。
Sambaとは何ですか?
Windowsを実行しているコンピュータからLinuxマシン上のファイルにアクセスするために、SMB / CIFSプロトコルを使用してネットワークドライブやプリンタにアクセスできる特別に設計されたソフトウェアパッケージが開発されました。 Sambaパッケージには、クライアントとサーバーの部分があります。 それはGPLライセンスのもとでリリースされたフリーソフトウェアです。 Sambaは、Microsoftがファイルと印刷サービスを分離するために使用するプロトコルです。 このプロトコルは1987年に開発され、その後Andrew TridgellによってLinuxプラットフォームに転送されました。 コンピュータのネットワークにおける相互作用 実行中のウィンドウ SMB(サーバーメッセージブロック)プロトコル - サーバーメッセージブロックの使用に基づいて構築されています。 Sambaパッケージは、ファイルのオープン、クローズ、読み取り、書き込み、ファイルの検索、ディレクトリの作成と削除、印刷ジョブの設定、およびそこからの削除に必要なすべてのタスクを提供します。 その機能は、Windowsクライアント用のリソース(プリンタとファイルへのアクセスを意味する)とクライアントリソースへのアクセスの2つのカテゴリに分けられます。 つまり、Linuxを実行しているコンピュータは、サーバーとしてもクライアントとしても動作することができます。 Sambaパッケージの大きな利点は、共有レベル、リソースにパスワードとそれに対応する使用規則が割り当てられている場合、または各ユーザーの作成時にユーザーレベルでより高度で柔軟な組織のいずれかで実装できるアクセス制御です アカウントには、名前とパスワードに加えて、リソースへのアクセス権に関するすべての必要な情報が含まれています。 必要なリソースにアクセスする前に、各ユーザーが認証され、その後、アカウントに応じて権利が付与されます。
SambaサーバーSambaサーバが動作するためには、Windowsオペレーティングシステムの制御下にあるSambaサーバクライアントのための印刷サービスとファイル共有を提供するsmbdと、NetBIOSネームサービスを提供するnmbdの2つのデーモンが起動される必要があります。 クライアントへのアクセスには、TCP / IPプロトコルが使用されます。 Sambaは通常、 linuxディストリビューション。 次のコマンドを実行して確認できます。 $ whereis samba。 インストールされていない場合 $ yumはsamba-serverをインストールする |
![]() |
SambaクライアントLinuxからWindowsネットワークリソースにアクセスするには、Sambaクライアントが必要です.Windowsリソースの可用性を評価するには、コマンドを実行してください / usr / bin / smbclient -Lホスト名。 さらに、行はパスワードを要求しますが、ほとんどの場合はEnterキーを押します。 Sambaクライアントの肯定的な側面は、ネットワーク名が$記号で終わっている隠れたネットワークリソースを完全に見ていることです。)さらに作業は、すべての必要なファイル操作を実行するために使用できるコマンドを入力することによって行われます。 助けを求めるには、ちょうど実行する smb:\u003eヘルプ。 |
非常に多くの1c Enterpriseのユーザーがデータベースをファイルバージョンで使用しています。まあまあです。:)したがって、データベースとの有能なユーザーのやりとりのためにSambaサーバーを使用できます。 これにより、アクセスを制限したり、データベース1cに完全に閉じたりすることができます。
Sambaサーバーの設定
Samba構成ファイルはsmb.confと呼ばれ、ルートディレクトリ/ etcまたは/ etc / sambaにあります。 Sambaサービスはそれを60秒ごとに読み取ります。したがって、設定の変更は再起動せずに有効になりますが、すでに確立されている接続には適用されません。 構成ファイルには、4つのセクションが含まれています。 mcedit /etc/samba/smb.confこのセクションには、どこでも使用される最も一般的な特性が含まれていますが、各リソースのセクションで上書きすることができます。 このセクションのいくつかのパラメータは、Sambaクライアントの設定にも関係しています。セクションオプション
ワークグループ#group_name in windowsネットワーク。 netbios name#ローカルネットワーク内のサーバーのnetbios名。 サーバー文字列#コメント文字列。ローカルネットワークのブラウズプロパティウィンドウに表示されます。 guest ok = yes#ゲストログインをサーバに有効にします。 guest ok = noゲストログインは許可されません。 ゲストアカウント#アカウント。このアカウントでは、ゲストへのログインが許可されます。 security =ユーザーレベルの認証を使用したユーザー#アクセス。 セキュリティ=共有#入場は無料です。 hosts allow#は、サーバーへのアクセスが許可されているクライアントを指定します。 interfaces#は、サーバが動作するネットワークを示します。セクションオプション
コメント#ネットワークのプロパティウィンドウのコメント。 browseable#は、リソースが参照リストに表示されるかどうかを決定します。 writable#は、ホームディレクトリへの書き込みを許可または拒否します。 create mode#は新しく作成されたファイルのアクセス権を定義します。 directory mode#ディレクトリのアクセス権を定義します。smb.confを操作するためのSWAT Webインターフェイス(Samba Web Administration Tool)をインストールします。
ほとんどの場合、Sambaの設定は、メインの/etc/samba/smb.conf設定ファイルを編集し、smbpasswdを使用してユーザを管理することです。 変更はmcedit、nanoまたはkwriteエディタで行うことができます。 これが珍しい場合は、SWAT Webインターフェース(Samba Web Administration Tool)を使用できます。これは便宜上 linuxユーザー Sambaパッケージの開発者によって作成されました。次のコマンドでsamba-swatパッケージをインストールできます。
yum install samba-swatデフォルトでは、セキュリティ上の理由から、SWATは無効になっているので、
mcedit /etc/xinetd.d/swatを開き、パラメータの値を変更します。
disable = noリモート管理を有効にするには、有効なipをonly_fromパラメータに追加する必要があります。 そして再起動する:
サービスxinetd restartそれだけです! Samba-swatはhttp:// localhost:901 /にあり、セキュリティ上の理由からファイル内でポート番号を変更することができます:
mcedit /etc/xinetd.d/swat
フォルダを共有し、Sambaディレクトリへのアクセスを変更する:
私たちのファイルサーバの設計は次の構造に従います:- 1cのデータベースが格納され、ipによるアクセスが制限されているディレクトリ。
- ユーザー権限のレベルでアクセスできる他のディレクトリは、多くの場合、すべてがタスクに依存します。 sudo mkdir samba#Sambaルートフォルダを作成する2つのファイルを作成し、パラメータにsmb.confを設定します。
security = share#ユーザーは認証システムに合格しません。 ここで、私たちはipに制限を設けています:
hosts allow 10.4.8.32 10.4.8.33#ディレクトリへのアクセスを許可する10.4.8.32と10.4.8.33 guest ok = yes#ディレクトリへのゲストアクセスを許可するディレクトリに進み、ユーザ名とパスワードでアクセス制限を設定します。
valid user = glavbuh geo#これは、リソースへのアクセスを許可されたユーザのリストです。 username = glavbuh geo#glavbuhディレクトリのユーザ名。
変更されたパラメータの構文は、次のコマンドで確認できます。
testparm /etc/samba/smb.confディレクトリを入力するためのパスワードを指定することによって、ユーザーglavbuhとgeoを作成する必要があります。 Sambaにユーザーを追加する smbpasswd -aそしてSambaのユーザを許可する
smbpasswd -e
SAMBAは、UNIXマシンをMicrosoft™およびLanManagerネットワークと通信するための一連のサーバーおよびクライアントソフトウェアであり、それ自体がSMBネットワークのサブクラスです。
当初、SMBネットワークは、NetBIOSプロトコルをベースにしたIBM™によって開発されたもので、主にトークンリング・ネットワーク向けであり、OS / 2 Warp LanServerに完全に実装されていました。 Windows 95の後半では、このプロトコルはNetBEUI(NetBIOSのやや単純化されたバージョン)に置き換えられました。
以前のOS / 2 WarpとNT 3.5では、複雑な異機種ネットワークに対してTCP / IP(NetBIOS over TCP / IP)のより便利な実装が実装されました。 このアプローチの明白な利点のために、それは今日でもまだ使用されています。 WindowsのどこかでTCP / IP経由でネットワーク共有リソースを使用して作業を行うと、実際には「NetBIOS over TCP / IP」が使用されます(たとえば、NetBIOSタブのTCP / IPプロパティのWin95に対応するマークがあります) 。
Sambaは、OS / 2 3-4、Windows 9X-ME、NT3.5-4 / 2000 / XP、UNIXシステムに含まれるSMB実装との間で正常に対話するための「NetBIOS over TCP / IP」プロトコルも使用しています Sambaとおそらくそれを好む他の人と。 TCP / IP(NetBIOSとNetBEUI上)を使用せずにSambaを動作させることはできません。 これは、ネットワークを設計するときに忘れてはいけません。
したがって、SMBネットワークで作業するには、次のものが必要です。
顧客;
サーバー;
管理ツール。
すべてこれは、配布に含まれるsamba-client、samba-client-cups、samba-common、samba、samba-swatパッケージにあります。
SMBを使用する場合、次のリソースが利用できます。
ネットワークドライブ;
ドライブへの直接パス。
プリンタ;
ドメインの承認と管理
ディレクトリとファイルの概要
すべてのSamba設定ファイルと認可ファイルは、/ etc / sambaディレクトリとそのサブディレクトリにあります。 それらをより詳細に検討してください。
MACHINE.SID
マシンのシステム識別子。サーバの起動時に自動的に生成され、Microsoft™ネットワークドメイン内のコンピュータを識別するためのものです。
コードページ/
lmhosts
/ etc / hostsと同じですが、NetBIOS IPを変換することを意図しています。 通常、エントリは1つだけです。
127.0.0.1 localhost
他のサブネットからホストを持ち出すことも考えられます(いくつかの理由でブロードキャスト要求またはWINSを使用してIP-NetBIOSを確実に変換することが不可能な場合)またはその逆 - 自分のドメインの主要サーバー。
秘密.tdb
キーファイルを使用して、Microsoft(登録商標)ネットワークドメイン内のマシンを識別する。 セキュリティの観点からは、/ etc / tcb / * / shadowファイルと同じ値を持つため、アクセス権はroot.root 0600でなければなりません。
sambaのメイン設定ファイル。 サーバー側だけでなく、このシステムの他のすべてのコンポーネントも必要です。
smbpasswd
パスワードを持つSambaサーバユーザの/ etc / passwdと/ etc / tcb / * / shadow-fileのアナログ。 セキュリティの観点からは、/ etc / tcb / * / shadowと同じ値を持つため、アクセス権はroot.root 0600でなければなりません。Sambaユーザとシステムユーザは共通のUIDに基づいて一致します。 このファイル Sambaは、PDC上のユーザーデータがない場合、またはPDC自体が存在しない場合に使用されます。
smbusers
sMBネットワークとローカルユーザー名マッピングファイル。 これは、管理ログインとゲストログインをサーバーに編成する便利な方法です。 Sambaユーザーとシステムユーザーの対応は、記号名に基づいて行われます。
/ var / log / samba / *
sambaサーバー側のログファイル。 これらのうち、log.smbd、log.nmbd、log.winbindは対応するプロセスのログであり、その他はすべて、個々のクライアントホストとのサーバー対話のログで、デフォルトの命名形式のログです。
/ var / spool / samba
動的スプーリングプリントサーバーSambaのカタログ。 負荷の軽いプリントサーバーでは、通常は空です。 クライアントが何も印刷しないときに複数のファイルが存在することは、プリントサーバーが故障したことを示す明確な兆候です。
/ var / cache / samba / *
さまざまなSambaコンポーネントの操作中に形成されるファイル(原則としてバイナリデータベース)。 最も注目すべきは:
browse.datとwins.dat
テキストファイル彼らの名前は自分のために語ります。
winbindd * .tdb
winbindによって形成されたドメインユーザーのデータベース(「winbindの使用」を参照)。 アップグレード中にサーバを移動または再インストールすると、winbindはこれらのファイルを最初から生成し、システムとドメインの記号名と数値名の対応が変わり、アーカイブから復元されたファイルへのアクセス権が混乱することがあります。 したがって、ファイル/var/cache/samba/winbindd*.tdbをアーカイブすることを強くお勧めします。
/ var / lib / samba / *
サーバー管理者用のサービスディレクトリ。
Samba実行可能ファイルのリストは、次のコマンドで取得できます。
$ rpm -ql `rpm -qa | グレープ・サンバ| grep bin /
ドキュメントの関連するセクションを読んで、それぞれに慣れてください。
ここでは、最も重要で最も頻繁に使用されるコンポーネントにのみ焦点を当てます。
1.サーバーコンポーネント:
/ usr / sbin / nmbd
名前と住所の翻訳サーバー。
/ usr / sbin / smbd
ファイルサーバー。
/ usr / sbin / winbindd
pDCを使用したユーザーおよびグループのサーバーインポート。
/ usr / sbin / swat
samba設定ツール(Webインターフェイス付き)
/etc/init.d/smbと/etc/init.d/winbind
サービス初期化制御スクリプト。
/etc/init.d/smbスクリプトには、再起動と再読み込みという2つの再起動モードがあります。再起動と再読み込みは、以下の機能では根本的に異なります。
再開 現在の接続をリセットしてsmbdおよびnmbdプロセスを完全に再起動します。 原則として、クライアント自体は自動的にリソースに再接続しますが、再起動時にファイルが開かれた場合は、クライアントアプリケーション(MS Officeや1Cなど)の問題が発生する可能性があります。
リロード smbdとnmbdは接続を再起動したり削除したりせずに設定ファイルを再読み込みします。 同時に古いルールは古いルールに従って古い接続が存在し続け、新しいルールが新しいコンフィギュレーションファイルに基づいてすべての接続に適用されます。
2.クライアントコンポーネント:
/ usr / bin / smbclient
ネットワークリソースを表示するためのインタラクティブアプリケーション。
/sbin/mount.smb、/sbin/mount.smbfs、/ usr / bin / smbumount、/ usr / sbin / smbmnt、/ usr / bin / smbmount
ネットワークファイルシステムをマウント/アンマウントする手段。
ユーティリティ:
/ usr / bin / smbpasswd
ユーザーとドメインの接続管理
/ usr / bin / wbinfo
winbinddによってインポートされたユーザーの一覧を表示します。
/ usr / bin / testparm
構成ファイルの構文チェック。
/ usr / bin / smbstatus
smbdおよびnmbdプロセスのステータスを表示します。
/ usr / bin / nmblookup
wINS名前解決プログラム(DNSのnslookupに似ています)。
カスタマイズ
ほとんどの場合、Sambaの設定は、メインの/etc/samba/smb.conf設定ファイルを編集し、smbpasswdを使用してユーザを管理することです。 これが珍しい場合は、SWAT Webインターフェース(Samba Web Administration Tool)を使用してみてください。 これを行うには、samba-swatパッケージをインストールし、URL http:// localhost:901 /をブラウザで開きます。
通常のサーバー
これは、ネットワークにファイルリソースを提供するコンピュータを意味します。 実際、これは独自のユーザー認証データベースを持つ最も単純な独立ファイルサーバーです。
このようなサーバーを作成するには、標準のsmb.conf構成ファイル(必要なワークグループ名とリソース名の代わりに)を調整し、後述のようにユーザーアカウントを作成するだけで済み、記事の末尾に記載されているセキュリティ推奨事項を検討する必要があります 。
以下は、 "普通のサーバー"を作るための基本的なsmb.confエントリです。
#このセクションでは、Sambaサーバの一般的な設定を
#すべてのリソース全体。
#ワーキンググループの名前オフィス
ワークグループ=オフィス
#ユーザーレベルでのアクセス権の決定レベル
#ワーキンググループの他のコンピュータの中で、このサーバの優先順位:
#は、担当するメインマシンを正確に決定します。
#マッピングネットワークリソース。 比較のため、Win9X os level = 34、および
NT4レベルでは64です。
#明らかに、ドメインがないので、マスターはありません。
ドメインマスター=いいえ
#近くのマシンのパスワードサーバにならないでください。 だから何
#近くのNTサーバの激しい管理者が
#自分自身のサーバーでは許可されていないという苦情
#domain logons = no ;-)
ドメインログオン=いいえ
#通常、最も単純なネットワークでは、WINSは必要ありません。それを無効にしてから
勝利=いいえ
さて、我々はネットワークに提供するディレクトリを決定する必要があります。 各リソースには別のセクションがあります。
通常のリソースの最も簡単なオプションは、publicという名前の通常のディレクトリです。
#ネットワーク上に見られるリソース名
コメント=パブリックスタッフ
#リソースディレクトリへのパス
パス= / home / samba / public
#すべての許可されたユーザーへの読み取りアクセス権(
#定義されている場合はゲストを含む)
#すべてのユーザへの書き込み禁止
#システム内のすべてのユーザーの書き込み権限
#グループスタッフ
リストを書く= @staff
同様に、異なるアクセス権を持つ異なるネットワークサーバーリソースを作成することもできます。 ディレクティブとその構文の詳細については、リファレンスマニュアルを参照してください。
Sambaはchrootで実行されないため、リソース内では、ローカルやネットワーク(NFS、SMB、Codaなど)ファイルオブジェクトへのシンボリックリンクを使用することができ、システム管理の点で非常に便利です。
特別なリソース - たとえば、ユーザーのホームディレクトリ:
#自動的に名前に置き換えられるリソースの名前
#クライアントが接続されているユーザのホームディレクトリ
#そして自分のホームディレクトリの名前がネットワークに表示されます
#をリソースの名前として使用します。
#このリソースにアクセスするには、クライアントは、
#サーバー名とパスワード、他のすべてのユーザー
#このリソースにはアクセス権がまったくありません。
#コメントは、リソースのコメントとしてオンラインで見られる
コメント=ホームディレクトリ
#不可視のサイン - このリソースはネットワーク内でのみ見ることができます
#所有しているユーザーに#。 これに
#リソースは、その名前を指定することによって直接アクセスできますが、
#ネットワークを参照すると、所有者だけが見ることができます。
#書き込み権限。
writable = yes
プリンタ:
#ネットワーク上で表示されるリソースの名前。 彼のほかに、ネットワークは
#も目に見える ローカルプリンタ 〜と同じ名前で
lpqコマンドによる#システム。
#コメントは無視されます。
コメント=すべてのプリンタ
#プリンタスプールが配置されているディレクトリへのパス
#Samba経由でネットワークに提供
パス= / var / spool / samba
#閲覧不可能なリソースは、システムのものと置き換えられます
#リソース。
#ゲスト呼び出しのために印刷する権限。
Sambaはスプール自体に書き込むため、書き込み禁止
#ユーザー。
#これはプリンタであり、ファイルリソースではないことを示す
#印刷ジョブファイルを作成するためのマスク
作成モード= 0700
#Sambaが文書を印刷するために実行するコマンド。
#クライアントドライバを使用し、非UNIX
#顧客。
printコマンド= lpr-cups -P%p -o raw%s -r
#サーバ側でCUPSドライバを使用する(側
#クライアントは汎用PostScriptドライバを使用します)。
; 印刷コマンド= lpr-cups -P%p%s
#次のコマンドは、printing = cups、
#必要に応じて変更することができます。
lpqコマンド= lpq -P%p
lprmコマンド=キャンセル%p-%j
既存のNTドメインの一部としてのサーバー
新しく作成したSambaマシンをCOMP名で既存のDOMドメインに接続します。管理者は管理者ユーザーであり、このドメインのPDCは別のコンピュータに実装されています。
まず、接続しようとしているものと同じ名前のマシンがまだドメインにないことを確認する必要があります。 それ以外の場合は、このマシンをPDC自体でドメインから削除するか、別の名前を選択する必要があります。
/etc/samba/smb.confのCOMPマシンで、次の変更を行う必要があります。
ワークグループ= DOM
netbios name = COMP
セキュリティ=ドメイン
パスワードサーバー= *
信頼できるドメインを許可する=はい
nt acl support = yes
その後、Sambaサーバが実行されている場合は、サービスsmb stopコマンドを使用してSambaサーバを停止する必要があります。
ここで、次のコマンドを使用してPDCにドメインの新しいメンバーを承認するリクエストを送信する必要があります。
$ smbpasswd -j DOM -r DOMPDC -U管理者
このユーザーがドメインに登録されている管理者ユーザーのパスワードを入力する要求に応答して、ユーザーを認証します。
メッセージが受信された場合:
結合されたドメインDOM。
すべてがうまくいく。 それ以外の場合は、smb.confで次のように記述する必要があります。
ログレベル= 4
最後のコマンドを繰り返し、詳細なログによって何が間違っているかを調べます。 このログレベルでは、log.smbdにはPDCに関する詳細な交換レポートが含まれています。 名前の綴りに間違いがあったり、誤ってパスワードが入力された可能性があります。 PDC側の誤動作も可能です。
この時点から、ユーザ "user123"がパスワード "passw"でSambaにアクセスしたときは、次のようになります。
まず、パスワードと名前が一致すればそれを許可し、それ以外の場合は許可を拒否したり、ゲストとみなします(設定に応じて)/ etc / samba / smbpasswdでパスワードを検索します。
上記のファイルにそのような名前がない場合、/ etc / passwd(/ etc / samba / smbusersファイルを使って一致をチェックする)と
そのようなユーザが存在する場合、PDCは、受信したパスワードが「passw」であるかどうかを尋ねる。
そうでない場合は、設定に従って、ゲストエントリの許可または切り替えを拒否します。
通常、通常のワークステーション上のドメインで作業する場合、/ etc / samba / smbpasswdは完全に空であるか、ドメインに関連しない管理アカウントのみを含むべきです。
この操作ロジックは、winbindが使用されていない場合にのみ適用されます。 最初の成功したアクセスでドメインユーザーが/ etc / passwdに自動的に入るようにするには(パスワードの正確性がPDCによって確認されている)、/ etc / samba / smb.confに1行を書き込む必要があります
ユーザの追加スクリプト= / usr / sbin / useradd -d / home / domain /%u -g 600 -m \\
K / etc / skel_domain -s / bin / false%u
したがって、ディレクトリ/ home / domainおよび/ etc / skel_domain、およびグループ600は、すでに存在していなければなりません。 useraddのすべての特定の名前とオプションは、特定のアプリケーションに応じて変更できます。
ユーザがまだこのマシンに登録されていない場合に起動されるディレクティブadd userスクリプトによって、/ usr / sbin / useraddだけでなく、他のプログラムも呼び出すことができます。 ファンタジーを思いついたら、このディレクティブの助けを借りて、とても面白いことをすることができます。
セキュリティを忘れないでください - add userスクリプトを使って起動されたプログラムは、rootユーザシステム内の全能から実行され、その呼び出しのパラメータはユーザによって部分的に決定され、潜在的に危険です!
これで、service smb startというコマンドでSambaサーバの電源を入れることができ、通常のドメインメンバとしてWindowsネットワークドメインで作業できます。
PDCドメインとしてのサーバー
プライマリドメインコントローラ(PDC)を作成するには、smb.confの次のエントリを作成または変更する必要があります
#サーバー名。 このパラメータが定義されていない場合、
#それはホスト名に対応する値をとるでしょう。
netbios name = COOLSERVER
#ドメイン名
ワークグループ= COOLDOMAIN
#サーバー認証システムのモード。
#暗号化されたパスワードを使用する権限
パスワードを暗号化する=はい
#ローカルパスワードファイルへのパス
smb passwd file = / etc / samba / smbpasswd
#ドメインマスターブラウザになる
ローカルマスター=はい
#Be PDC
ドメインマスター=はい
#直ちにドメインマスタブラウザになるようにしてください
優先マスター=はい
#ドメインパスワードサーバにする
ドメインログオン=はい
#ドメインユーザープロファイルの場所
ログオンパス= \\\\%L \\ Profiles \\%U
#管理グループドメイン、リスト内のプレゼンス
#user "administrator"は必須ではありません。
#このユーザーは管理者を受け取りません
Windowsクライアントマシンの#権利。
ドメイン管理グループ= root @wheel管理者
#WINSサーバーになります。 WINSサーバーは、ネットワーク上に10以上存在する場合に意味があります
#SMBマシン。 そのようなサーバーが複雑に存在する
#ネットワーキングは、ブロードキャストトラフィックを大幅に削減します。
勝利サポート=はい
#NetBIOSの名前解決の順番は、
#DNS名解決のための/etc/host.conf。 勝つ価値
#ネットワーク上に勝利サーバーがある場合にのみ意味がありますが、
#それ以外の場合は作業が遅くなります。
名前解決の順序=勝利lmhostsのbcast
また、ドメインの操作のためのリソースを作成する必要があります。
Netlogonリソースは、PDCとドメイン全体の操作に必要です。 彼はただ存在しなければならない。
コメント=ネットワークログオンサービス
パス= / var / lib / samba / netlogon
ゲストok =はい
書き込み可能=いいえ
書き込みリスト=管理者、管理者
このリソースは、ドメインユーザープロファイルの作成と格納に必要です。
パス= / var / lib / samba / profiles
browseable =いいえ
読み取り専用=いいえ
作成マスク= 0600
ディレクトリマスク= 0700
/ var / lib / samba / profilesにドメインユーザーを作成すると、同じ名前のディレクトリが自動的に作成されます 作成されたユーザー 彼に属している(権利0700)。 このディレクトリには、ユーザーの個人設定が保存されます。
クライアントマシンをドメインに有効にするには、次の手順を実行する必要があります。
まず、ドメインに接続されているマシンのNetBIOS名に対応する名前を持つローカルシステムユーザを作成する必要があります。 記号 "$"が末尾の名前に追加されます。 machine_nameという名前のマシンを追加するには、rootとして以下のコマンドを実行する必要があります。
#/ usr / sbin / useradd -g machines -d / dev / null -c "マシンニックネーム" -s
/ bin / false machine_name $
#passwd -l machine_name $
これでユーザーが作成されました(名前の末尾にある "$"記号は、ユーザー名ではなくコンピュータのNetBIOS名を意味します)。smbpasswd -a -m machine_nameコマンドを実行してドメインに追加できます。
これで、コンピュータはドメインに接続されます。
smb.confに次のエントリを含めることによって、マシンアカウントの作成をSambaに移すことができます:
ユーザースクリプトを追加する= / usr / sbin / useradd -d / dev / null -g machines -s
/ bin / false -M%u
Sambaはクライアントマシンからのドメインメンバーシップの要求を受け入れ、NT Serverと同じ方法で自動的に登録します。
この時点から、ドメインとSambaサーバーに基づくPDCが存在し始めます。 ユーザーは、設定を保存したドメインマシンから自分の名前とパスワードでログインし、ネットワーク管理者の助けを借りずにユーザーパスワードを個別に変更することができます。
ユーザーアカウント
すべてのアカウントは/ etc / samba / smbpasswdファイルに格納されています。
Sambaが使用するユーザーアカウントは、次の2つのカテゴリに分類されます。
ドメイン内のコンピュータのレコード。
このサーバーに登録されているユーザーのレコード。
/ etc / samba / smbpasswdにアカウントを作成して使用するには、最初に/ etc / passwdに対応するエントリを作成する必要があります。 一般的な規則は、/ etc / samba / smbpasswdの各ユーザには/ etc / passwdにユーザがいなければならないということです。 逆は真実ではない。
smbpasswdユーティリティはアカウントの管理に使用されます。 その機能の完全なリストは、対応するmanページにありますが、ここでは最も頻繁に使用される方法を見ていきます。
新しいユーザーを作成する:
#smbpasswd -a
既存のユーザーパスワードの変更:
#smbpasswd
既存のユーザーを削除する:
#smbpasswd -x
削除せずにアカウントを停止する:
#smbpasswd -d
このコンピュータを既存のドメインに接続する:
#smbpasswd -j
winbindを使用する
winbindサービスは、SambaをWindowsドメインに完全に統合するための新しいツールです。 それはSamba 2.2.0から始まりました。 このサービスは/etc/samba/smb.confから設定を読み込み、PDCドメインと動的にやりとりし、ドメインとSambaマシンのユーザとグループのリストを自動的に同期させます。 したがって、winbindはSambaワークステーションへのドメインユーザーベースの関連性を自動的に維持するための非常に便利なツールです。
このサービスの動作は/ etc内の許可ファイルの内容を変更することなく行われ、マシンが再起動されるとwinbinddの起動後にのみドメインユーザーがシステムに表示されます。 操作中にwinbinddを停止すると、リブートする前にドメインユーザーとグループがシステムから消えず、名前とパスワードの一覧が動的に更新されません。
コンピュータ(またはwinbinddサービスのみ)を再起動するときに、内部UIDとドメインSIDが違反しないようにするには、リストの現在の状態を/var/cache/samba/winbindd*.tdbファイルに保存します。
winbinddが正常に動作するためには、/etc/samba/smb.confファイルで次のディレクティブを宣言する必要があります。
#ローカルユーザ番号の範囲
ドメインユーザーを動的に作成するために使用されます。
winbind uid = 10000-20000
#ローカルユーザグループの番号範囲
#ユーザグループを動的に作成するために使用
#ドメイン
winbind gid = 10000-20000
#ドメイン名を構成するために使用されるセパレータ記号
#ユーザーとドメイン名と名前の間にある
#ユーザー。
winbindセパレータ= +
#PDCへのwinbind要求の間隔(秒単位)
#ユーザとグループのリストを同期させるため#。
winbindキャッシュ時間= 10
#ドメインユーザーのホームディレクトリ名のテンプレート、
各ユーザーに自動的に割り当てられます。 ディレクトリ自体、
#ただし、動的には生成されません。 変数%Dの代わりに代入されます
#はドメイン名で、%Uの代わりにユーザー名が使用されます。
テンプレートhomedir = / home /%D /%U
#のためのデフォルトのコマンドインタープリタ
winbinddで許可されたユーザー数。
テンプレートシェル= / bin / bash
/etc/nsswich.confファイルをpasswdセクションとgroupセクションに変更するには、winbindディレクティブを入力する必要があります。たとえば、次のようにします。
passwd:ファイルwinbind
グループ:ファイルwinbind
この時点から、/ etc / samba / smb.confのドメインユーザー名をファイルとディレクトリのアクセス権のアクセス制御の目的で他のホストがこのホストのネットワークリソースに接続することができます。
CUPSプリントサーバー
デフォルトでは、SambaはCUPSを印刷スプーラとして使用するように設定されています。 その意味は、CUPSがすでに設定され実行されていることです。 /etc/samba/smb.confには、次のディレクティブがあります。
printcap name = lpstat
プリンタをロードする=はい
印刷=カップ
また、リソースを作成する必要があります。 その作成とディレクティブの割り当てについては、「特別なリソース」の節の「正規サーバ」のセクションで詳しく説明しています。
クライアントとサーバーのローカリゼーションの特殊性
すべてのSambaコンポーネントがファイルオブジェクトとリソースのロシア語名で正しく動作するためには、/etc/samba/smb.confに次の指示文を追加する必要があります。
クライアントコードページ=
$ LANG = ru_RU.KOI8-R
クライアントコードページ= 866
キャラクターセット=コイ8-r
$ LANG = ru_RU.CP1251
クライアントコードページ= 866
キャラクターセット= 1251
$ LANG = be_BY.CP1251
クライアントコードページ= 866
文字セット= 1251
$ LANG = uk_UA.KOI8-U
クライアントコードページ= 1125
文字セット= koi8-u
$ LANG = uk_UA.CP1251
クライアントコードページ= 1125
文字セット= 1251U
$ LANG = ru_UA.CP1251
クライアントコードページ= 1125
文字セット= 1251U
最後の2つのケースでは、1251Uはローカルで "1251 - 遠隔的に1125"という組み合わせのためのSamba内の特別な指定です。 Sambaでは、リモートエンコーディングの定義はローカル名で行われます。
それを確認することも必要です windowsコンピュータSambaを介して対話するはずのもの、対応する システム設定 ローカリゼーション。 さもなければ、それはキリル文字の代わりに、 "?"記号または招待されていない他の文字が表示される可能性があります。
指定された/etc/samba/smb.confディレクティブは、すべてのSambaコンポーネント(サーバーとクライアントの両方)の動作に影響します。 現在、キリル文字の名前のスペルがサポートされています(ファイル、ディレクトリ、リソース)。
セキュリティ上の問題
このセクションでは、主にSambaサーバー側について説明します。
まず、接続要求を待っている間にSambaがどのインタフェースをlistenするべきかを判断する必要があります(デフォルトでは、システム上で利用可能なものすべてが聴かれます)。
例えば、ローカルホストと第1のホストとの間のリッスンを制限するために ネットワークカード/etc/samba/smb.confに書き込む必要があります:
interfaces = 127.0.0.1 eth0
バインドインターフェイスのみ=はい
さらに、このサーバーにアクセスできるアドレスの範囲を制限できます。 これらの指令の効果は、xinetdとsshに対する/etc/hosts.allowと/etc/hosts.denyの効果に似ています。ホストのIPアドレスが許可ルールに該当しない場合、接続はまったく確立されません。 2つのサブネットとローカルシステムへのアクセスを制限し、さらに1つのホストを除外するには、次のように記述します。
ホストは192.168.1を許可します。 192.168.2。 127。
hosts deny = 192.168.1.12
上記のディレクティブはすべて、承認前にインターフェイスとIPアドレスレベルでの接続を制限します。 次のディレクティブは、ユーザー認証モードを制御します。
機密データをネットワークを介して平文で送信する際に機密データの傍受を避けるために、パスワードを暗号化するのが通例です。 サンバとすべて windowsのバージョンWin98版からは、デフォルトでパスワードの暗号化が使用されています。 このディレクティブはSambaにそれを含みます:
パスワードを暗号化する=はい
ユーザー名オーバーライドファイルは、ユーザーアカウントを管理するための非常に強力なツールですが、不当に使用された場合、このツールは危険であり、既定では無効になっています。 使用する前に/ etc / samba / smbusersファイルの内容を注意深く読んでください。
; username map = / etc / samba / smbusers
通常の顧客
Sambaのクライアント機能は、ネットワーク環境を参照し、それぞれ/ usr / bin / smbclientと/ usr / bin / smbmountファイルシステムをマウントすることによって表現されます。 / usr / bin / smbountへのシンボリックリンクであるmount.smbとmount.smbfsも利用できます。
起動時に、これらのプログラムは/etc/samba/smb.confファイルから現在の設定を読み取り、マシンがWindowsドメインに接続されている場合にドメイン機能を使用します。
また、システムコマンドmountを使用してファイルシステムをマウントし、そのタイプを次のように指定することもできます。 ファイルシステム smbfsを実行し、システム起動時に自動マウントするために/ etc / fstabにこれらのエントリを使用します。
たとえば、SMALLLSERVERマシンの/ mnt / diskディレクトリにpublicリソースをcooluserとしてマウントするには、次のコマンドを実行します。smbmount // smallserver / public / mnt / disk -o username = cooluser
コンピュータの名前、リソース、ユーザーの登録は重要ではありません。 このマシンのSambaリソースのリストとワークグループまたはドメインマシンのリストを取得するには、次のコマンドを実行してください:smbclient -L localhost -N
詳細は、smbclientとsmbmountのマニュアルページを参照してください。
このディストリビューションには、LinNeighborhoodとgnombaという2つのグラフィカルクライアントアプリケーションが付属しています。これらは、smbclientユーティリティとsmbmountユーティリティの上で動作します。
http://www.public.iastate.edu/~chadspen/homepage.htmlでは、非常に高品質なグラフィカルクライアントアプリケーションxSMBrowserを入手できます。
既存のNTドメインの一部としてのクライアント
p。「既存のNTドメインの一部としてのサーバー」で説明されている接続と同じです。 さらに、すべての作業は、前の段落で説明したのとまったく同じです。
Samba 3.0の使用の特徴
Samba 3.0は以前のバージョンとの大きな違いがあります。 これらの中で最も際立っているのは、smbpasswdの代わりに設計された新しいネット管理ユーティリティである、コードページのはるかに多くのバージョンのサポート、バージョン2.2と比較して改善されたUnicodeサポートです。
パッケージには、samba3-client、samba3-client-cups、samba3-common、samba3、samba3-swatパッケージが含まれています。
コードページの指定
以下の新しいsmb.confパラメータを使用して、エンコードを設定します。
unix charset =
dos charset =
ディスプレイ文字セット=
どこで
クライアントコードページと文字セットのパラメータはサポートされなくなりました。 unix charsetパラメータは、ディスク上のファイルが格納されるエンコーディングを指定します。パラメータはsmb.confで指定されます。 最後に、ファイル名をUTF-8に保存することも可能です。
dos charsetパラメータは、SambaがUnicodeをサポートしていないクライアントと通信するエンコードを指定します。 95から始まるWindowsのすべてのバージョンはUnicodeを理解していますが、以前のバージョンではクライアントコードページ= 866に対応するdos charset = cp866を設定する価値はあります。
display charsetパラメータは、プログラム情報を出力するか、smbclient、net、wbinfoなどのユーザと直接通信するかを指定します。
ユーティリティネット
netユーティリティはsmbpasswdの代わりに設計されており、ネットワークとネットワーク管理に関する情報を得るためのより多くの機会を提供します。 ユーティリティーのコマンド形式は、同じ名前のWindows NT / 2000コマンドの形式と非常によく似ています。
netコマンドの主な用途:
ユーザの作成と削除:ネットユーザ
ドメイン内のマシンを含む:ネット広告が参加する - Active Directory。 net rpc join - NTドメイン。
ドメイン、車、 ファイルを開くセッション:ネット情報、ネット広告ステータス、ネットrpcステータス。
リモートマシン上の共有リソースの作成と削除:ネット共有。
windowsサーバーとの時刻同期:ネット時間
Microsoft管理コンソールからSambaマシンを制御する
バージョン2.2以降、SambaにはMicrosoft管理コンソール(MMC)からのリモート管理機能があります。 この機能は、SambaがNTドメインまたはADのメンバーである場合に便利です。 ドメイン管理者は、Sambaを実行しているUNIXマシン上でネットワークリソースを作成、削除、変更することができます。
リモート管理のためにSambaを設定するには? リソースを管理するには、/ etc / samba / smb.confパラメータを使用します。
add shareコマンド=
このパラメータは、MMCで新しいリソースを作成しようとするときに呼び出されるスクリプトを指定します。 スクリプトには4つのパラメータが渡されます。
設定ファイルの名前(例えば、/etc/samba/smb.conf)。
作成されているリソースの名前。
ディスク上の既存のディレクトリへのパス。