Berkongsi akses kepada sumber rangkaian. Melawan virus dan infrastruktur, atau melumpuhkan SMB v1

Terdapat banyak pelaksanaan yang berbeza untuk mengedarkan "saham rangkaian" dalam rangkaian tempatan, tetapi kami berjaya mendapatkan sesuatu yang pertengahan bajet dan dilindungi.

Zyxel Keenetic

Mereka menyambungkannya dan menyimpannya... baik, sebagai contoh, dalam almari.

Konfigurasi

Mula-mula anda perlu membuat tatasusunan.
Mari buat RAID mudah pada CFI B8253-JDGG dengan cakera 4TV dipasang.

Di bahagian belakang peranti terdapat suis DIP dan gambar rajah jelas pengawal RAID perkakasan. Saya menetapkan RAID5 pada cakera 4 TB. Kami memulakan cakera dengan hanya menyambungkan pemacu ke PC yang menjalankan Win 7. Pada peringkat ini, konfigurasi DAS selesai. Kami menerima GPT NTFS dengan saiz 16TB.

Sekarang mari kita beralih kepada konfigurasi penghala Zyxel Keenetik
Mari pergi ke WebUI dan tandai beberapa kotak.

Kami mendayakan CIFS pada penghala, pemasangan automatik supaya peranti kami tidak jatuh dan membenarkan akses tanpa kebenaran (kemudian kami akan memuat turun dan memasang pakej untuk penghala yang akan membolehkan kami membezakan hak akses mengikut akaun)
Penghala memberi kami keupayaan untuk mengkonfigurasi hak akses pemacu rangkaian. Kami boleh membuat akaun protokol akses rangkaian kami sendiri untuk fail, pencetak dan lain-lain sumber rangkaian pada rangkaian Windows. Anda boleh mengkonfigurasi hak akses untuk setiap pengguna dan folder. mungkin jenis berikut hak akses:

Apabila menyambungkan DAS ke penghala kami melihat bahagian kami:

Sekarang mari kita bezakan hak akses untuk ini saya memasang beberapa komponen:

Komponen ini membolehkan anda pergi ke tab "Hak Akses".

Penciptaan pengguna dan kawalan akses juga disediakan.

Mengedarkan hak akses

Mengapa kita perlu menyambungkan DAS ke penghala sama sekali?
Mudah sahaja, penghala mempunyai klien bittorrent terbina dalam, yang mana anda boleh memuat turun filem/muzik, dsb. ke DAS dengan segera. dan mengedarkannya ke seluruh rangkaian.
Kami memberikan hak pentadbir untuk torrent

Mari dayakan fail swap, yang mana ia diterangkan dalam tangkapan skrin.

Penghantaran sudah dipasang dalam penghala saya, mari pergi ke 192.168.1.1 :8090/ dalam penyemak imbas dan log masuk sebagai pentadbir

Mari suapan fail torrent.

Seperti yang kita lihat, sistem berfungsi dan Transmisi yang dipasang pada penghala berjaya menggunakan kapasiti luaran yang disediakan untuk menyimpan kandungan yang diterima.
Dan sekarang kepada perkara yang paling penting, semuanya berfungsi, tetapi apakah kelajuan baca/tulis apabila mengakses DAS melalui rangkaian?
Mari cuba rakam/muat naik fail melalui SAMBA
Keputusan:

Anda mesti faham bahawa kelajuan pertukaran rangkaian yang terhasil secara langsung bergantung pada prestasi pemproses dan antara muka penghala. Iaitu, dalam dalam kes ini kita tidak melihat kelajuan DAS CFI, tetapi kelajuan yang Zyxel Keenetic dapat "mencerna dan mengeluarkan" melalui USB ke rangkaian melalui SAMBA. Penunjuknya tidak bagus, tetapi untuk penyelesaian rumah dan belanjawan ini sudah cukup. Walaupun pada hakikatnya kelajuan akses terus adalah rendah, walaupun ia juga boleh diterima, ia lebih daripada mencukupi untuk menerima aliran video daripada DAS ke TV atau pemain media, atau tablet di sekitar apartmen melalui Wi-Fi.

Mari sambungkan DAS ke PC melalui USB3.0 dan pastikan kelajuannya dihadkan oleh lebar jalur Keupayaan USB Antara muka Zyxel Keenetic.
Keputusan:

DAS itu sendiri, apabila disambungkan terus ke PC, memberi saya lebih daripada 200MB/s dengan RAID5. Oleh itu, dengan peningkatan dalam prestasi penghala atau hanya memilih penghala yang berbeza (jika boleh, sudah tentu, saya akan menyemak dan melampirkan UPD), kelajuan mungkin berubah dan saya ingin berharap lebih baik.

Nah, bahagian komersial sistem yang dipasang pada masa penulisan:
CFI-B8253JDGG - daripada 10,756 rubel, ZyxelKeenetic – 990 rubel. Jumlahnya kurang daripada 12,000 rubel. Dan jika anda bandingkan dengan 4 cakera NAS(harga bermula dari 18,000 rubel) faedah ekonomi adalah jelas.
Penyelesaian kepada masalah itu bukan satu-satunya, tetapi ia sangat berkesan dan menghiburkan.

Salah satu cara untuk mengakses fail yang terletak pada komputer rangkaian daripada STB ialah protokol akses awam SMB, yang merupakan protokol Microsoft Windows standard dan menyediakan fungsi "Rangkaian Microsoft Windows» dan "Perkongsian Fail dan Pencetak".
Samba - pelaksanaan percuma protokol SMB untuk sistem pengendalian seperti UNIX dan lain-lain.

Penggunaan protokol SMB / Samba membolehkan akses daripada STB (menjalankan OS Linux) ke folder dan fail yang terletak pada komputer rangkaian (menjalankan OS Linux, Windows, dll.). Oleh itu, pengguna STB berpeluang memainkan fail media (video, audio, imej) pada STB, yang terletak pada komputer rangkaian yang menjalankan salah satu jenis OS yang menyokong protokol SMB atau SAMBA.

Protokol SMB/Samba ialah protokol aplikasi(dari segi model rangkaian OSI). Ia menggunakan protokol pengangkutan TCP/IP untuk pertukaran data.
Protokol SMB / Samba menggunakan seni bina pelayan-klien: PC bertindak sebagai pelayan, di mana sumber rangkaian tertentu (folder) dengan fail media terletak, dan STB bertindak sebagai klien, dari mana fail media dimainkan.

Sumber rangkaian dipaparkan dalam STB, dalam menu, mengikut seni bina rangkaian LAN standard OS Windows: Rangkaian / Kumpulan Kerja / Komputer / Folder.

Secara lalai, akses kepada sumber komputer disekat oleh tetapan pada bahagian komputer. Jika perlu untuk mendapatkan akses dari luar ke folder rangkaian tertentu, pengguna komputer yang diperlukan membuka akses kepada folder ini. Untuk mengawal akses kepada folder, gunakan prosedurOS Windows" Perkongsian fail".

Terdapat dua jenis akses rangkaian kepada folder (jenis akses ditentukan pada bahagian komputer):

  • dengan kata laluan - untuk mengakses folder rangkaian dari sisi STB, prosedur Kebenaran digunakan (anda mesti memasukkan nama (log masuk) pengguna tertentu komputer dan kata laluannya;
  • tanpa kata laluan - akses kepada folder rangkaian dibuka untuk semua pengguna, tanpa perlu memasukkan kata laluan.

Penemuan sumber rangkaian yang dikongsi di bahagian STB berlaku secara automatik (melainkan jika ia dilarang pada bahagian komputer atau kecuali dalam kes yang berkaitan dengan kerja yang tidak betul rangkaian). Sambungan ke folder rangkaian diwujudkan apabila pengguna STB membuka folder rangkaian. Jika akses kepada folder menggunakan kata laluan digunakan, pengguna digesa untuk menunjukkan log masuk Dan kata laluan.

Ia juga mungkin untuk menyambung folder rangkaian secara manual (jika ia tidak dikesan secara automatik). Mengkonfigurasi dan mengakses sumber rangkaian menggunakan protokol SMB/ Samba pada STB dijalankan dalam menu Rumah media .

Di bawah ialah contoh cara menyambungkan folder rangkaian pada PC Windows 10 untuk memainkan fail media daripada STB.
Catatan. Sokongan protokol SMB Sistem pengendalian Windows 10 didayakan secara lalai.

Contoh menyediakan sambungan antara STB dan PC dengan Windows 10

Parameter asas yang digunakan dalam contoh

Komputer (pelayan fail):

  • Sistem operasi - Windows 10 64-bit;
  • Nama komputer - saya_ komputer(dipilih sebagai contoh);
  • Kerja berkumpulan - KUMPULAN KERJA (nama kerja berkumpulan“lalai” dalam OS “Windows»);
  • IPAlamat PC: 192.168.1.186.
  • Sumber untuk "berkongsi" (folder dengan fail media) - folder Video_ E1.
  • Nama pengguna - Usr.

STB (pelanggan)

  • IPalamatSTB: 192.168.1.230

Menyemak ketersediaan sambungan rangkaian antara PC dan STB

Sebelum menyediakan sambungan, pastikan sambungan rangkaian antara PC dan STB tersedia - "ping" STB daripada PC.

Menyediakan pada bahagian PC (membuka akses kepada folder)

  1. Kongsi folder Video_E1: Hartanah Akses⇒ Perkongsian.
  2. Jika anda perlu menyediakan akses kepada folder hanya untuk pengguna PC semasa, biarkan hanya pengguna semasa dalam senarai pengguna ( Usr). Dalam kes ini, akses kepada folder akan diberikan menggunakan kata laluan - untuk menyambung ke folder pada STB, log masuk (nama pengguna komputer) dan kata laluan (kata laluan pengguna komputer) akan diminta.

Sila ambil perhatian! Jika akses terhad kepada pengguna semasa, anda mesti menggunakan nilai kata laluan khusus untuk akaun pengguna. Kekurangan kata laluan akan mengakibatkan ketidakupayaan untuk mengakses folder!

Rajah di bawah menunjukkan pilihan untuk menyediakan akses tanpa kata laluan kepada folder Video_E1 untuk semua pengguna rangkaian.

5. Pada PC buka "Pusat rangkaian dan Perkongsian" dan konfigurasikan tetapan perkongsian untuk tiga profil ( Persendirian, Tetamu atau Awam Dan Semua rangkaian):

Persendirian

Tetamu atau orang ramai

Semua rangkaian

Sambungan ke folder rangkaian di sebelah STB

  1. Dalam portal terbina dalam, pergi ke Tingkap utama RumahMedia Rangkaian KUMPULAN KERJA

2. Dalam folder KUMPULAN KERJA komputer rangkaian dalam kumpulan kerja dipaparkan.
Buka pintasan ke komputer rangkaian yang dikehendaki - saya_ Komputer(dalam folder saya_ Komputer folder yang dikongsi dipaparkan).

3. Untuk kawalan pengesanan automatik sumber rangkaian dan jenis protokol, anda perlu memilih folder dan menggunakan butang "i" (INFO) pada alat kawalan jauh:

4. Buka folder Video_E1. Di dalam folder, ikut laluan di mana fail media yang anda ingin mainkan terletak.

5. Jika akses kata laluan ditetapkan untuk folder, atau atas sebab tertentu STB tidak boleh "melekapkan" folder (iaitu, mendapatkan akses kepadanya - lihat bahagian), maka apabila anda cuba membuka folder ini tetingkap terbuka "Sambungan rangkaian".

6. Lancarkan fail media.

Paksa sambungan ke folder rangkaian

Dalam sesetengah kes (jika terdapat masalah dengan sambungan automatik), konfigurasi manual akses kepada folder rangkaian disediakan:
  • Untuk masuk Tingkap utamaRumahMediaRangkaianKUMPULAN KERJA
  • Tetingkap panggilan operasi (operasi) - butang Menu pada alat kawalan jauh.
  • klik GunungKongsi (Sambungkan sumber).
  • Dalam tingkap" Menyambung folder rangkaian" ("Sambungkan folder rangkaian") masukkan parameter sambungan
    • Alamat Pelayan – Alamat IP PC (pelayan fail) di mana folder rangkaian yang diperlukan terletak;
    • Folder pada pelayan (Folder pelayan) – nama folder "dikongsi" pada PC;
    • Folder tempatan – nama folder pada STB (biasanya sama dengan nama folder pada pelayan);
    • Jenis sambungan – SMB.
    • Log masuk – sama dengan nama pengguna PC - dimasukkan jika akses kata laluan digunakan untuk folder;
    • Kata laluan – kata laluan akses folder - dimasukkan jika akses kata laluan digunakan untuk folder.

Melumpuhkan folder rangkaian, menukar tetapan sambungan pada STB

Untuk memaksa folder rangkaian tertentu dilumpuhkan, gunakan arahan untuk folder itu Lumpuhkan NFS/SMB.

Jika anda perlu membuat perubahan pada tetapan sambungan di sebelah, gunakan arahan untuk folder ini Edit bahagian.

Memasang folder

Mewujudkan sambungan ke folder tertentu, diterangkan dalam subseksyen dan , disertakan dengan pemasangan automatik folder pada STB. Jika folder tertentu "dilekapkan" pada STB, pintasannya muncul pada tingkat atas menu Media rumah.

Pengguna juga boleh memasang folder yang diperlukan secara manual (ini juga membawa kepada sambungan folder), arahan digunakan untuk tujuan ini bahagian lekapkan.
Untuk "nyahlekap" folder dalam STB (ini juga membawa kepada memutuskan sambungan folder daripada STB), gunakan arahan Nyahlekap bahagian.

Masalah mendapatkan akses kepada sumber rangkaian

  1. Di tingkap « Media rumah » penanda halaman tidak akan dibuka "Rangkaian", "Kumpulan Kerja":
    • Semak tetapan rangkaian dan status rangkaian pada bahagian STB dan komputer;
    • Pastikan pelayan (PC dari mana akses dikonfigurasikan) mempunyai sokongan untuk protokol SMB versi 1 dan 2 didayakan.
    • But semula STB dan PC.

2. Jika bahagian "Rangkaian", "Kumpulan Kerja" dipaparkan, tetapi pintasan ke komputer rangkaian yang diperlukan tidak dipaparkan:

    • Semak bahawa komputer anda disenaraikan di bawah "Bersih" pada komputer;
    • Ping STB dari bahagian PC (pastikan kedua-dua peranti boleh berkomunikasi melalui rangkaian).
    • Untuk memulakan semula komputer.

3. Jika folder yang tersedia tidak dipaparkan pada STB atau akses kepada folder ditolak:

    • Semak bahawa folder kongsi muncul dalam "Bersih" pada komputer;
    • Jika boleh, semak sama ada folder itu boleh diakses daripada komputer rangkaian lain;
    • Pada komputer anda, semak tetapan perkongsian dalam sifat folder dan « Pilihan tambahan akses umum. Profil".
    • But semula STB.

4. Jika, semasa membuka folder rangkaian pada STB, anda digesa untuk melaksanakan kebenaran, tetapi akses kata laluan belum diberikan kepada folder:

    • Semak bahawa sifat folder ditetapkan kepada boleh diakses pengguna "Semua";

5. Jika, semasa membuka folder pada STB, anda digesa untuk melaksanakan kebenaran (masukkan log masuk, kata laluan), tetapi nilai kata laluan tidak dinyatakan (kata laluan kosong):

    • Tetapkan nilai khusus untuk kata laluan pengguna komputer;
    • Jika akses tidak dipulihkan, but semula STB.

6. Jika fail tidak dibuka:

    • semak sama ada fail dimainkan secara tempatan pada PC;
    • cuba lancarkan fail lain dari STB dari folder rangkaian yang sama, dari folder rangkaian lain;
    • cuba mainkan fail dalam format yang berbeza (adalah dinasihatkan untuk menyemak fail yang pernah dimainkan pada STB, sebagai contoh, dari pemacu USB). Format fail ini mungkin tidak disokong oleh pemain STB.

1.3 Teknologi CIFS dan SMB

Protokol Akses Fail Internet Biasa Sistem fail- CIFS) berhutang asalnya kepada teknologi Server Message Block (SMB), yang pertama kali muncul dalam MS DOS 3.3. Standard SMB menerangkan protokol untuk menghantar arahan sistem fail(buka fail, baca, tulis, kunci dan tutup) dari klien ke pelayan fail.
Sebelum membincangkan butiran teknikal teknologi CIFS dan SMB, adalah penting untuk memahami perbezaan utama antara mereka. Pada mulanya, hanya ada teknologi SMB, yang digunakan sebagai protokol fail pelayan-pelanggan di dunia komputer peribadi. Pada pertengahan 1980-an, Microsoft menamakan pelaksanaan protokol SMB CIFS dan mula meletakkan CIFS sebagai pesaing langsung Piawaian WebNFS dan NFS. Microsoft menyerahkan RFC pengenalan kepada IETF (Pasukan Petugas Kejuruteraan Internet), dan dokumen itu kemudiannya tamat tempoh tanpa cuba menukar RFC kepada spesifikasi IETF.
Vendor NAS bebas daripada Microsoft telah mula membangunkan spesifikasi CIFS dan telah menganjurkan beberapa acara untuk mempromosikan CIFS. SNIA (Persatuan Industri Rangkaian Penyimpanan) telah mengambil tugas untuk menerbitkan CIFS. Microsoft juga mengeluarkan spesifikasi CIFS (dipanggil Common Internet Filesystem Protokol Akses), diedarkan secara percuma.
Spesifikasi SNIA CIFS dan Microsoft CIFS yang serupa menerangkan protokol yang digunakan oleh klien Windows NT 4.0 untuk mengakses sumber pada pelayan Windows NT. Kedua-dua spesifikasi tidak menangani SMB, yang digunakan dalam versi Windows yang lebih baharu (contohnya, ia tidak menangani caching klien, yang disokong dalam Windows 2000). Di samping itu, spesifikasi tidak menerangkan semua protokol komunikasi antara pelayan. Piawaian SMB baharu, yang bukan spesifikasi percuma, diterangkan dalam spesifikasi sepadan yang diedarkan oleh Microsoft dengan bayaran, yang dimungkinkan oleh keputusan mahkamah daripada Kesatuan Eropah dan kerajaan AS.
Oleh itu, Microsoft sekali lagi mula memanggil pelaksanaan teknologi yang diterangkan sebagai blok SMB. Pada asasnya, SMB Microsoft adalah protokol tertutup, yang merupakan versi lanjutan standard industri CIFS.
Selain itu, perhatikan hubungan sejarah antara SMB/CIFS dan NetBIOS. Antara muka pengaturcaraan NetBIOS (lapisan sesi dalam model OSI) dihidupkan masa ini ketinggalan zaman. Antara muka melaksanakan lapisan abstraksi yang membolehkan aplikasi berfungsi dengan pelbagai protokol pengangkutan, seperti TCP/IP, NetWare atau protokol XNS (Sistem Rangkaian Xerox) yang kini dilupakan. Diperlukan untuk antara muka perisian aplikasi, yang menyediakan keupayaan untuk mencipta aplikasi yang tidak bergantung pada protokol rangkaian, masih wujud hari ini. Walau bagaimanapun, dalam pada masa ini Untuk tujuan ini, antara muka soket biasanya digunakan, khususnya dalam dunia Windows - antara muka Winsock.
Microsoft menggunakan NetBIOS untuk resolusi nama (menterjemah nama pelayan ke dalam alamat rangkaian), tetapi inilah perkhidmatan DNS standard yang direka untuk sekarang.
Pada mulanya, Microsoft tidak menggunakan TCP/IP sebagai a protokol pengangkutan, yang berubah secara mendadak dari semasa ke semasa, tetapi sokongan NetBIOS terus hadir. Walau bagaimanapun, peranan NetBIOS telah semakin berkurangan. Selepas menetapkan port TCP/IP untuk pelayan fail Kebergantungan SMB pada NetBIOS telah "sembuh" sepenuhnya sekurang-kurangnya dalam konteks protokol asas. Tetapi keadaan tetap mengelirukan kerana beberapa perkhidmatan sekunder pada klien dan pelayan Windows masih memerlukan protokol NetBIOS. Satu contoh yang baik ialah untuk pelayan mengiklankan kehadiran mereka pada rangkaian dan menyediakan senarai perkhidmatan yang tersedia, dan untuk pelayan lain menghantar iklan ini kepada pelanggan. Lama kelamaan, perkhidmatan telah direka bentuk semula dan NetBIOS telah dihapuskan sepenuhnya. Keluaran Windows 2000.
Akhirnya, warisan SMB boleh dilihat dalam setiap permintaan CIFS, kerana setiap permintaan dan respons mesti bermula dengan nilai "0xFF" diikuti dengan aksara ASCII seperti "SMB".

1.3.1 Variasi piawaian CIFS

Malangnya, tiada definisi yang tepat bagi piawaian CIFS. Pelbagai jenis Protokol SMB dipanggil dialek. Berikut ialah beberapa pilihan yang mungkin:
■ digunakan oleh pelanggan DOS dan Windows 3.x;
■ digunakan apabila menyambung ke pelayan yang tidak menjalankan Windows;
■ digunakan oleh pelanggan yang menjalankan Windows NT.
Selalunya, pelanggan menghantar permintaan kepada pelayan untuk menubuhkan sesi dan menghantar senarai semua pilihan protokol yang disokong. Pelayan memilih pilihan yang paling berfungsi dan menghantar permintaan yang sepadan kepada klien. Bergantung pada protokol yang telah "dipersetujui" oleh klien dan pelayan, beberapa permintaan dan respons yang sepadan mungkin tidak sah. Versi protokol yang dipersetujui tidak mentakrifkan dengan jelas pelaksanaan sebenar fungsi protokol, yang menambah kekeliruan lagi; Sesetengah bendera boleh ditetapkan atau dikosongkan untuk menunjukkan sokongan untuk ciri tertentu. Dalam erti kata lain, walaupun ketika memilih protokol, ada pelbagai pilihan ciri yang disediakan: contohnya, salah satu bendera mungkin menunjukkan sokongan untuk nama fail yang panjang.
Seperti yang diterangkan dalam Microsoft RFC (kini usang oleh peraturan IETF), CIFS menyediakan interaksi pelayan-pelanggan untuk mengakses dan mengurus fail. Ciri-ciri seperti mengiklankan ketersediaan pencetak dan pelayan pada rangkaian adalah di luar keupayaan protokol CIFS.
SNIA terus mengusahakan spesifikasi CIFS. Di samping itu, SNIA menganjurkan persidangan tahunan CIFS dan acara lain untuk membincangkan kebolehoperasian CIFS.
Spesifikasi SMB telah menjadi standard sejak 1992 (X/Open CAE Specification C209) dan menerangkan SMB sebagai protokol untuk menyediakan interaksi antara komputer yang menjalankan DOS, Windows, OS/2 dan UNIX.

1.3.2 Penerangan mengenai protokol CIFS

Permintaan dan respons CIFS mempunyai struktur yang jelas dan boleh difahami. Medan dalam paket SMB juga diseragamkan, dan perbezaan bergantung pada rasa CIFS yang dipilih dan ciri yang disokong oleh kedua-dua pelanggan dan pelayan.
Ambil perhatian bahawa hanya elemen biasa untuk semua varian SMB ditunjukkan. Butiran struktur setiap varian pakej SMB berada di luar skop artikel ini.
Sesetengah medan dalam jadual memerlukan lebih banyak penerangan penuh. Medan arahan adalah bersaiz satu bait dan menerangkan jenis permintaan. Pelayan menyalin nilai ini ke dalam respons, membolehkan pelanggan menghuraikan yang terakhir. Spesifikasi CIFS mengandungi makna dan takrifan untuk medan ini. Perintah yang diterangkan membolehkan anda melakukan operasi seperti membuka fail, membaca, menulis dan mengunci julat tertentu fail. Semua operasi ini dilakukan sebagai tindak balas kepada permintaan aplikasi.
Selain itu, permintaan klien CIFS (dan respons pelayan yang berkaitan) dimulakan oleh kod pengarah semula tanpa campur tangan aplikasi yang jelas. Contohnya ialah caching dan penguncian oportunistik. Spesifikasi CIFS RFC dan SNIA, serta Kumpulan Terbuka, mentakrifkan makna dan semantik kod arahan CIFS 1-bait.

Jadual Struktur pengepala SMB

Padang

Saiz

Penerangan

Sentiasa mempunyai nilai 0 xFFSMB

Menentukan jenis permintaan

Kod ralat 32-bit (dihasilkan oleh pelayan Windows NT dan dikembalikan sebagai kod ralat 32-bit kepada pelanggan yang menyokong kod Ralat Windows NT) ATAU

Untuk pelanggan lama yang tidak menyokong kod ralat 32-bit, mesej ralat ditukar kepada jenis berstruktur lama. Jenis lama termasuk:

■ Kelas ralat 8-bit, yang menunjukkan jenisnya, i.e. sama ada ralat ini dilaporkan oleh sistem pengendalian pelayan atau oleh pelayan itu sendiri; Sebagai alternatif, ia boleh menjadi perkakasan atau ralat protokol SMB;

■ 8 digit diabaikan;

■ Kod ralat 16-bit yang hanya bermakna dalam kelas ralat tertentu

Semantik dibentangkan dalam jadual. 3.2

Semantik dibentangkan dalam jadual. 3.3

Pengisian/

Mengisi/menandatangani. Dalam pertimbangan

dalam teks bahagian

Tid-value

Digunakan untuk mengenal pasti sumber pelayan yang diminta oleh klien. Ditentukan menggunakan permintaan SMB TreeConnect

Penerangan

Pengecam

2 bait, tetapi

Dipasang oleh pelanggan. Nota pada

proses (Pid)

jika perlu

proses klien yang dijalankan

permintaan. Digunakan oleh pelayan untuk

Mungkin

mod pembukaan fail penjejakan

diperluaskan kepada

dan untuk menyekat. Dihantar oleh pelayan

kembali kepada pelanggan bersama-sama dengan pengecam pemultipleks (pertengahan) untuk yang unik. mengenal pasti permintaan yang pelayan bertindak balas

Pengecam

Dipasang dan digunakan oleh pelanggan.

pemultipleks

Pelayan mengembalikan Pertengahan yang diterima dalam tindak balas

atas permintaan. Pelanggan menggunakan nilai Pertengahan dan Pid untuk mengenal pasti permintaan yang menerima respons

Nilai Uid

Ditugaskan oleh pelayan selepas pengesahan pelanggan. Pelanggan mesti menggunakan Uid dalam semua permintaan

Pilihan

Pembolehubah

Terdiri daripada pembilang perkataan 16-bit, yang menunjukkan bilangan perkataan 16-bit yang mengikuti pembilang. Untuk setiap arahan SMB, pembilang ini biasanya merupakan nilai tetap dengan satu pembilang perkataan untuk arahan dan satu kedua untuk respons. Biasanya kaunter ini mempunyai nilai 5 atau kurang

Pembolehubah

Terdiri daripada pembilang perkataan 16-bit yang menunjukkan bilangan bait (perkataan 8-bit) data yang mengikuti pembilang. Berbanding dengan medan parameter, medan data boleh mempunyai banyak saiz yang lebih besar, contohnya 1 KB atau lebih. Dalam permintaan baca dan tulis SMB, medan ini mengandungi data sebenar yang sedang dibaca atau ditulis

Sila ingat bahawa nilai medan dan semantik baharu mungkin muncul tanpa amaran dengan keluaran baharu Versi Windows, kerana protokol CIFS terus berkembang.
Terdapat beberapa arahan untuk melaksanakan operasi asas yang sama; sebagai contoh, terdapat beberapa kali arahan peribadi untuk buka, baca dan tulis. Sesetengah arahan tidak lagi digunakan, dan dalam beberapa kes arahan alternatif boleh digunakan, bergantung pada dialek protokol yang dipilih.
Berikut adalah contoh fungsi yang diterangkan dalam medan arahan.
■ Pemilihan jenis SMB.
■ Mewujudkan sesi komunikasi.
■ Menavigasi direktori dan menyenaraikan fail dan direktori.
■ Buka, cipta, tutup atau padam fail.
■ Mengunci dan membuka kunci bahagian tertentu fail.
■ Operasi pencetakan.
■ Pemberitahuan tentang perubahan pada fail dan direktori.
■ Transaksi di mana data, parameter dan operasi ditentukan. Pelayan CIFS melaksanakan operasi yang diminta dan mengembalikan hasil - data dan parameter. Contoh urus niaga termasuk pautan dalam sistem fail yang diedarkan dan pengurusan atribut lanjutan.

Jadual Semantik medan Bendera

Maknanya

Penerangan

Terpelihara. Digunakan oleh pertanyaan warisan

Terpelihara. Mesti sifar

Menunjukkan bahawa nama fail mestilah sensitif huruf besar

dan katalog

Terpelihara

Terpelihara. Digunakan oleh pertanyaan warisan

Terpelihara. Digunakan oleh pertanyaan warisan

Menunjukkan bahawa ini adalah respons SMB

Medan Flag2 menerangkan lebih banyak fungsi pilihan. Nilai medan ini ditunjukkan dalam jadual di bawah.
Medan Isi/Tandatangan pada asalnya ialah jujukan bait tiruan. Dari masa ke masa, makna bidang ini telah berubah. Medan isian kini boleh memasukkan elemen berikut:

Jadual Semantik medan Flags2

Maknanya

Penerangan

Pelanggan menyokong nama fail yang panjang. Pelayan boleh mengembalikan nama fail yang panjang

Pelanggan menyokong atribut lanjutan OS/2

Penandatanganan paket SMB didayakan

Terpelihara

Terpelihara

Terpelihara

Setiap nama laluan dalam permintaan ialah nama yang panjang

Terpelihara

Terpelihara

Terpelihara

Terpelihara

Petunjuk penggunaan mekanisme keselamatan lanjutan, yang dibincangkan dalam bahagian 3.3.3

Laluan dalam permintaan mesti diterjemahkan menggunakan sistem fail yang diedarkan

Halaman I/O yang menunjukkan bahawa bacaan harus dibenarkan apabila klien mempunyai kebenaran yang sesuai

Menunjukkan bahawa kod ralat 32-bit dikembalikan. Jika bendera tidak ditetapkan, kod ralat gaya DOS digunakan

Jika bendera ditetapkan, laluan dalam paket SMB adalah dalam format Unicode. Jika tidak berlaku Pengekodan ASCII

■ 2 bait ID proses, membenarkan ID proses 32-bit ditentukan;
■ 8 bait untuk menyimpan tandatangan paket SMB, jika fungsi ini didayakan (lihat penerangan medan Flags2);
■ 2 bait yang tidak digunakan.

1.3.3 Keselamatan CIFS

Protokol CIFS menyediakan keselamatan bahagian pelayan. Pentadbir boleh melumpuhkan keselamatan CIFS terbina dalam, yang mungkin tidak diperlukan, jadi keselamatan didayakan secara lalai.
Versi lama CIFS membenarkan penghantaran tidak disulitkan kata laluan teks dari pelanggan ke pelayan, yang sama sekali tidak disyorkan. Protokol CIFS membenarkan sumber pelayan dilindungi menggunakan kata laluan pengguna individu (ini dipanggil keselamatan peringkat pengguna). Untuk memastikan keserasian ke belakang, pelayan CIFS menyokong perlindungan perkongsian berasaskan kata laluan yang sama untuk semua pengguna. Memandangkan sumber akan dikongsi, kaedah ini dipanggil keselamatan peringkat sumber. Keselamatan peringkat sumber tidak disyorkan dan tidak tersedia dalam Pelayan Windows 2000. Paket SMB pertama yang dihantar ke pelayan oleh pelanggan dipanggil SMB_NEG0TIATE_PR0T0C0L. Pakej digunakan untuk memilih jenis CIFS. Sebagai tindak balas kepada permintaan SMB_NEG0TIATE_PR0T0C0L, pelayan melaporkan mekanisme keselamatan yang digunakan (peringkat pengguna atau sumber).
Bermula dengan Windows NT4 SP3 dan Windows 2000, Microsoft menyediakan keupayaan untuk meletakkan tandatangan digital dalam pakej SMB. Pelayan boleh dikonfigurasikan untuk memerlukan tandatangan digital daripada pelanggan; jika tidak, pelanggan akan dinafikan akses kepada sumber. Menggunakan tandatangan digital menjejaskan prestasi pelayan dan pelanggan, tetapi ini adalah harga yang perlu anda bayar untuk keselamatan. Sila ambil perhatian bahawa penandatanganan dan pengesahan adalah dua arah, i.e. klien menandatangani permintaan yang dihantarnya, pelayan mengesahkan tandatangan klien dan menandatangani respons yang dihantarnya, dan kemudian klien mengesahkan tandatangan pelayan. Tandatangan paket SMB disimpan dalam medan Isi/Tandatangan.
Respons kepada permintaan SMB_NEG0TIATE_PR0T0C0L digunakan untuk memberikan klien maklumat tentang sokongan pelayan untuk menandatangani paket SMB dan sama ada menandatangani paket SMB diperlukan.

1.3.4 Pengesahan CIFS

Protokol CIFS membolehkan anda menentukan tahap keselamatan antara pelayan dan pelanggan. Pelayan mungkin dikonfigurasikan untuk menolak perkhidmatan kepada pelanggan yang menawarkan terlalu banyak Level rendah keselamatan.
Protokol CIFS menyediakan mekanisme pengesahan yang diperlukan untuk pelayan untuk mengesahkan klien. Kaedah untuk mengesahkan pelayan oleh pelanggan juga disediakan. DALAM peringkat asas Untuk pengesahan, pelanggan menyediakan nama pengguna dan kata laluan yang tidak disulitkan. Atas sebab yang jelas, pendekatan ini tidak diingini. Selain itu, pelayan boleh dikonfigurasikan untuk menolak perkhidmatan kepada pelanggan yang menghantar kata laluan dalam teks yang jelas.
Pengesahan boleh dilakukan menggunakan teknologi yang dipanggil protokol cabaran/tindak balas. Apabila pelanggan menghantar paket SMB_NEGOTIATE_PROTOCOL untuk memilih jenis CIFS, bendera dalam respons pelayan menunjukkan bahawa protokol permintaan/tindak balas boleh digunakan. Jika pelayan menyokong protokol ini, cabaran 8-bait disediakan dalam respons pelayan. Pertanyaan ialah nilai rawak dengan kebarangkalian yang sangat rendah untuk dijana semula. Kedua-dua pelanggan dan pelayan menjana kunci daripada kata laluan pengguna. Selepas ini, permintaan disulitkan menggunakan kunci dan algoritma DES (Data Encryption Standard). Pelanggan menghantar permintaan kepada pelayan, dan pelayan membandingkan respons dengan nilai yang dikira sendiri. Jika kedua-dua nilai sepadan, pelanggan membuktikan pengetahuan tentang kata laluan dan mengesahkan kesahihannya.
Selain itu, protokol CIFS menyokong keselamatan lanjutan (anda mungkin tidak menjangkakan bahawa pembaca yang meneka petunjuk sokongan keselamatan lanjutan dalam respons pelayan kepada permintaan SMB_NEGOTIATE_PROTOCOL akan menerima ganjaran). Mekanisme keselamatan lanjutan menyediakan keupayaan untuk menyokong protokol pengesahan tersuai dalam protokol CIFS. Apabila anda memilih keselamatan lanjutan, gumpalan keselamatan pertama disediakan sebagai tindak balas kepada permintaan SMB_NEGOTIATE_PROTOCOL. Objek binari keselamatan tidak diproses oleh protokol CIFS. Untuk melakukan ini, ia bergantung pada mekanisme klien dan pelayan untuk menjana dan memproses objek binari. Gumpalan keselamatan seterusnya boleh dihantar dengan data SMB.
Menggunakan mekanisme Keselamatan Dipertingkat membenarkan Microsoft menyediakan sokongan untuk protokol Kerberos dalam Windows 2000 dan versi yang lebih baru. Pelaksanaan Windows 2000 Kerberos ialah contoh penggunaan elemen peribadi. Contohnya, beberapa medan kelayakan Kerberos digunakan untuk menyampaikan maklumat tentang kumpulan yang menjadi milik klien. Pelaksanaan Kerberos oleh Microsoft membolehkan pengesahan bersama, di mana bukan sahaja pelayan mengesahkan klien, tetapi sebaliknya, klien mengesahkan pelayan.
Microsoft menawarkan cara lain untuk mewujudkan sesi antara pelanggan dan pelayan, dipanggil Netlogon. Ini menggunakan data tentang komputer (bukan pengguna). Netlogon diperlukan untuk mewujudkan sesi RPC yang selamat dan lebih berkebolehan kerana ia menyokong token akses pengguna, yang tidak disokong oleh log masuk CIFS. Biasanya Netlogon digunakan untuk komunikasi antara pelayan (satu pelayan bertindak sebagai pelanggan pelayan lain).
Akhir sekali, pelayan CIFS tidak semestinya perlu menyediakan mekanisme pengesahan. Protokol CIFS menyokong pengesahan hujung ke hujung, di mana pelayan menerima permintaan daripada pelayan lain, menghantar permintaan itu kepada klien dan mengembalikan respons klien kepada pelayan pengesahan. Dalam kes ini, jika pelayan pengesahan bertindak balas secara positif, pelanggan diberikan akses kepada sumber yang diminta. Mekanisme ini dikenali sebagai pengesahan hujung ke hujung.

1.3.5 Pilihan pengoptimuman CIFS

Protokol CIFS mempunyai pelbagai keupayaan untuk mengoptimumkan interaksi antara klien dan pelayan.

1.3.5.1 Fungsi CIFS AndX

Protokol CIFS membolehkan anda menjana urutan permintaan yang saling bergantung antara satu sama lain, jadi pengoptimuman operasi ini membolehkan anda melengkapkan permintaan dalam satu panggilan ke pelayan. Ciri ini dipanggil AndX; Sistem fail versi NFS 4 menyediakan fungsi yang serupa dalam bentuk prosedur KOMPOUND. Contohnya adalah menghantar permintaan OpenAndRead atau WriteAndClose ke pelayan CIFS. Daripada menghantar dua permintaan berasingan, seperti Buka dan kemudian Baca dan menerima dua respons, satu permintaan OpenAndRead dihantar dan satu respons diterima. Ini amat penting apabila permintaan/masa respons terlalu lama.

1.3.5.2 Penyekatan oportunistik

Protokol CIFS menyokong teknologi pengoptimuman prestasi yang dipanggil penguncian opportunistik (atau oplock). Terdapat dua sebab utama untuk menggunakan penyekatan oportunistik.
Yang pertama ialah mengunci fail dan memulakan caching setempatnya. Apabila keadaan penyekatan tidak dapat dikekalkan lagi, protokol membenarkan kelewatan tertentu di mana pelanggan mesti mengosongkan cache. Mengunci dan membuka kunci dilakukan secara telus kepada aplikasi menggunakan klien CIFS dan sistem pelayan. Walau bagaimanapun, pengubahsuaian aplikasi tidak diperlukan untuk meningkatkan prestasi.

Bayangkan aplikasi yang membuka fail pelayan rangkaian baca-tulis dan tulis rekod 128-bait ke fail. Tanpa oplock, setiap penulisan 128-bait memerlukan data untuk dipindahkan ke seluruh rangkaian. Menggunakan oplock membolehkan anda membuat cache fail secara setempat pada sistem klien dan menggabungkan berbilang penulisan menjadi satu yang mengakibatkan data dipindahkan melalui rangkaian. Sebagai contoh, katakan pelanggan menggunakan 4096 penimbal dan menulis 128 bait ke fail secara berurutan. Penampan pertama akan mengandungi data 32 tulis (4096/128 = 32), dan semua data 32 tulis akan dipindahkan melalui rangkaian dalam satu permintaan tulis ke fail. Jika penulisan tidak boleh dicache, 32 penulisan akan dihantar melalui rangkaian (bukannya hanya satu seperti dengan caching). Mengurangkan bilangan tulis daripada 32 kepada satu menghasilkan pengurangan ketara dalam beban rangkaian dan peningkatan prestasi yang ketara.
Tujuan kedua penyekatan oportunistik adalah untuk memperluaskan keadaan di mana penyekatan sedemikian mungkin. Dengan menggunakan oplock anda boleh meningkatkan kecekapan caching. Memperluas keadaan di mana penyekatan oportunistik mungkin memberikan beberapa faedah tambahan. Mari kita anggap bahawa contoh aplikasi membuka fail (pada pelayan rangkaian) untuk membaca dan menulis. Ini meminta dan memberikan oplock. Kod pelanggan mungkin menulis cache pada fail. Mari kita anggap bahawa satu lagi contoh aplikasi yang sama dijalankan pada klien yang berbeza. Satu jalan keluar dari situasi ini ialah dengan mengalih keluar oplock dan menggunakan rangkaian I/O untuk menghantar permintaan tulis kepada fail daripada kedua-dua aplikasi. Cara lain ialah dengan melepaskan oplock apabila contoh kedua aplikasi cuba melakukan operasi tulis. Selalunya aplikasi tidak melakukan operasi tulis sama sekali.
Apabila keadaan berubah, pelayan menghantar pemberitahuan kepada klien untuk melepaskan oplock. Contoh situasi di mana pelayan menghantar pemberitahuan untuk melepaskan oplock adalah permintaan untuk pelanggan lain untuk mengakses atau menulis data ke fail. Pelayan memastikan data keadaan pelayan dibersihkan (termasuk menutup sesi klien) jika klien tidak bertindak balas kepada permintaan untuk melepaskan oplock. Pelanggan meminta oplock hanya apabila perlu; contohnya, jika aplikasi meminta fail dibuka untuk akses eksklusif, meminta oplock tidak masuk akal.
Penyekatan oportunistik dilaksanakan dalam tiga varian:

Urutan operasi untuk penguncian oportunistik eksklusif

■ penyekatan oportunistik eksklusif;
■ sekatan oportunistik kelompok;
■ penyekatan oportunistik peringkat kedua. Senario ini diterangkan dengan lebih terperinci di bawah.

Penyekatan oportunistik eksklusif

Pilihan penguncian ini diminta oleh pengarah semula mini CIFS apabila aplikasi membuka fail untuk membaca atau menulis. Pelayan memberikan oplock jika fail belum dibuka oleh klien lain. Urutan operasi ditunjukkan dalam rajah.
Untuk memulakan, pelanggan pertama menghantar permintaan untuk membuka fail, meminta oplock eksklusif. Pelayan melakukan pengesahan yang diperlukan dan menyediakannya. Pelanggan pertama memulakan cache fail dengan melakukan operasi baca-depan dan malas-tulis. Selepas beberapa lama, pelanggan lain, contohnya klien 2, menghantar permintaan kepada pelayan untuk membuka fail yang sama. Pelayan mencatatkan bahawa Klien 1 memegang oplock eksklusif pada fail yang diminta dan menghantar pemberitahuan pelepasan kunci kepada Klien 1. Klien 1 mengosongkan penimbal data dengan mengeluarkan permintaan tulis dan kunci yang diperlukan pada fail. Setelah data keadaan fail telah ditulis, klien 1 memberitahu pelayan bahawa pemprosesan pemberitahuan keluaran oplock telah selesai. Pada ketika ini, pelayan menghantar respons kepada klien 2, membenarkannya membuka fail. Klien 1 terus bekerja dengan fail tanpa melakukan sebarang caching setempat. Dalam kes ini, diandaikan bahawa klien 1 membuka fail dalam mod yang membolehkan pelanggan lain membuka fail.

Penyekatan oportunistik peringkat kedua

Ia adalah perkara biasa bagi pelanggan untuk membuka fail dalam mod baca/tulis dan tidak menulis apa-apa pada fail sehingga ia ditutup. Tahap 2 oplock direka untuk membenarkan perkongsian fail dan caching dalam situasi ini. Oplock eksklusif dan oplock kelompok (dibincangkan dalam bahagian seterusnya) sentiasa tersedia atas permintaan pelanggan. Tetapi oplock peringkat kedua tidak pernah diminta oleh pelanggan. Pelanggan bermula dengan meminta oplock eksklusif. Jika kunci sedemikian diberikan, pelayan boleh menurunkan taraf oplock eksklusif kepada kunci tahap kedua jika syarat tertentu dipenuhi (diterangkan di bawah).
Klien 1 bermula dengan meminta oplock eksklusif dan mula menyimpan fail secara setempat. Khususnya, Klien 1 melakukan baca ke hadapan dan secara setempat menyimpan data yang dikunci. Ingat bahawa dalam kes ini pelanggan tidak akan menulis data ke fail. Pada satu ketika, klien 2 meminta akses kepada fail yang sama. Pelayan menghantar 1 pemberitahuan kepada klien yang meminta oplock eksklusif diturunkan taraf kepada kunci tahap kedua. Pelanggan melepaskan kunci dan melaporkan bahawa pemprosesan pemberitahuan telah selesai. Seterusnya, pelayan menghantar mesej kepada klien 2 bahawa fail telah berjaya dibuka dan memberikan klien oplock tahap kedua. Dalam kes ini, diandaikan bahawa klien 1, dengan membuka fail, memaklumkan pelayan bahawa pelanggan lain juga boleh mengakses fail tersebut.
Apabila menggunakan oplock peringkat kedua, pelanggan dilarang daripada menimbal data terkunci. Kelebihan reka bentuk ini ialah koheren data dipermudahkan pada bahagian pelayan, manakala pelanggan akan cache data yang dibaca, dengan itu mengurangkan jumlah maklumat yang dipindahkan melalui rangkaian. Sebaik sahaja salah seorang pelanggan mengeluarkan permintaan tulis, pelayan mengeluarkan oplock tahap kedua, selepas itu tiada kunci yang tinggal sama sekali. Memandangkan tiada pelanggan penimbal mengunci data apabila kunci peringkat kedua hadir, operasi tulis yang berjaya bermakna penulisan dilakukan ke kawasan fail yang tidak dikunci oleh pelanggan lain. Setelah oplock tahap kedua dikeluarkan, pelanggan dihalang daripada menimbal data bacaan.

Penyekatan oportunistik peringkat kedua

Batch oplocking

Pilihan menyekat ini digunakan untuk mengoptimumkan prestasi semasa memproses fail kelompok. Pemproses arahan biasanya membuka fail, mencari baris yang diperlukan, membacanya, menutup fail dan memproses baris baca menggunakan penterjemah. baris arahan. Fail kemudiannya dibuka semula dengan baris seterusnya, fail ditutup, dan baris seterusnya diproses oleh jurubahasa baris arahan. Gelung ini berjalan sehingga semua baris dalam fail kelompok habis.

Batch oplock

Di atas adalah urutan operasi. Klien 1 membuka fail kelompok dan meminta oplock kelompok. Mari kita anggap bahawa pelayan memberikan penguncian kelompok kerana tiada orang lain yang menulis data ke fail. Klien 1 mencari baris tertentu dalam fail dan melakukan operasi baca. Jurubahasa melaksanakan baris baca. Fail kemudian ditutup. Pengarah semula mini CIFS tidak melakukan sebarang tindakan apabila ia menerima permintaan untuk menutup fail (iaitu, operasi tutup tertunda dilakukan). Jurubahasa baris arahan membuka fail, tetapi pengarah semula mini CIFS tidak melakukan operasi terbuka, tetapi hanya membatalkan operasi tutup fail menunggu giliran. Apabila jurubahasa baris arahan melakukan operasi carian dan baca pada rentetan, pengarah semula mini CIFS mengeluarkan permintaan carian dan baca.
Akibatnya, jumlah data yang dipindahkan melalui rangkaian berkurangan (kurang permintaan dibuat untuk membuka dan menutup fail). Di samping itu, penggunaan sumber pelayan dioptimumkan, kerana pelayan tidak perlu segera memproses permintaan untuk menutup fail dan kemudian membukanya semula.

Belajar Linux, 302 (persekitaran bercampur)

Integrasi dengan protokol CIFS

Menggunakan Linux sebagai pelanggan untuk pelayan SMB/CIFS

Siri Kandungan:

Mengenai siri ini

Siri artikel ini akan membantu anda menguasai tugas-tugas mentadbir sistem pengendalian Linux. Anda boleh menggunakan bahan dalam artikel ini untuk menyediakan peperiksaan LPIC Tahap 3 (LPIC-3).

Untuk melihat huraian artikel dalam siri ini dan mendapatkan pautan ke artikel tersebut, sila rujuk artikel kami. Senarai ini sentiasa dikemas kini dengan artikel baharu kerana ia sedia dan mengandungi matlamat semasa (sehingga November 2010). Peperiksaan pensijilan LPIC-3.

Artikel ini merangkumi topik berikut:

  • Protokol Blok Mesej Pelayan (SMB) dan Common Internet File System (CIFS).
  • Ciri dan faedah menggunakan CIFS.
  • Memasang perkongsian fail CIFS pada klien Linux.

Artikel ini akan membantu anda bersedia untuk mengambil LPI 302 (Pengkhususan Persekitaran Campuran) dan mengandungi bahan daripada Objektif 314.1 Topik 314. Objektif mempunyai berat 3.

Prasyarat

Untuk memanfaatkan sepenuhnya artikel kami, anda mesti mempunyai pengetahuan lanjutan tentang Linux dan mempunyai komputer Linux yang berfungsi yang boleh menjalankan semua arahan yang anda hadapi. Khususnya, diandaikan bahawa pembaca tahu cara bekerja dengan baris arahan Linux, mengetahui asas konfigurasi Samba, dan mempunyai pemahaman umum tentang struktur fail konfigurasi smb.conf. Anda juga perlu mengetahui asas pemasangan tempatan dan fail yang dipadam s sistem (menggunakan lekapkan arahan dan fail /etc/fstab). Pengetahuan tentang arahan ftp, termasuk dalam set standard arahan teks Linux dialu-alukan, walaupun tidak diperlukan.

Apa itu SMB/CIFS

Mengenai Peperiksaan Pilihan LPI-302

Seperti kebanyakan program, program Pensijilan Institut Profesional Linux (LPIC) menawarkan tahap pensijilan yang berbeza, dengan setiap peringkat memerlukan pengetahuan yang lebih maju dan pengalaman praktikal. Peperiksaan LPI-302 ialah peperiksaan elektif Tahap 3 dalam program LPIC yang memerlukan pengetahuan lanjutan tentang pentadbiran sistem Linux.

Untuk mendapatkan pensijilan LPIC Tahap 3 (LPIC-3), anda mesti berjaya lulus dua peperiksaan Tahap 1 (101 dan 102), dua peperiksaan Tahap 2 (201 dan 202) dan peperiksaan Tahap 3 Teras 301 (LPIC-3). Jika anda telah melengkapkan pensijilan Tahap 3 anda, anda mungkin boleh mengambil peperiksaan elektif dalam pengkhususan tertentu, seperti peperiksaan LPI-302.

Sebelum beralih kepada cara menggunakan Linux sebagai pelanggan untuk pelayan SMB/CIFS, adalah berguna untuk membincangkan ciri-ciri protokol ini dan mengetahui sejauh mana ia menyediakan penggunaan sistem fail sepenuhnya apabila bekerja dengan Linux. Kami akan menerangkan cara mempelajari protokol SMB asal berfungsi dan ciri baharu yang dilaksanakan dalam pengubahsuaian CIFSnya. Anda mungkin ingin merujuk kepada artikel developerWorks untuk LPI Exam Objective 310.1, yang merangkumi beberapa konsep asas SMB/CIFS (lihat pautan di bawah ).

Ciri-ciri Utama SMB

SMB mempunyai beberapa peluang unik daripada perspektif rangkaian, termasuk sistem penamaan komputernya sendiri (Sistem Input/Output Asas Rangkaian, NetBIOS), kumpulan kerja dan protokol pengesahan. Untuk memahami cara SMB dan CIFS berfungsi dengan klien perkongsian fail Linux, kita perlu bercakap tentang ciri terpenting protokol ini: set metadata yang mereka sediakan.

Metadata- Ini adalah data yang dikaitkan dengan fail, tetapi bukan sebahagian daripadanya. Contoh metadata termasuk cap masa, pemilik, kebenaran, dan juga nama fail. Tidak syak lagi anda mengetahui beberapa cara untuk menggunakan metadata komputer Linux dan, mungkin, tentang beberapa perbezaan mereka dalam Linux dan sistem pengendalian lain, contohnya, Windows. Oleh kerana protokol SMB telah dibangunkan untuk DOS, Windows dan Sistem Pengendalian IBM/2® (OS/2), ia mengandungi banyak metadata yang khusus untuk sistem pengendalian tersebut. Walau bagaimanapun, yang lebih penting, SMB tidak menyokong metadata UNIX® dan Linux seperti pemilik, kumpulan dan kebanyakan kebenaran. Selain itu, SMB tidak menyokong pautan simbolik, pautan keras atau jenis fail khas lain seperti fail peranti. SMB mengandungi beberapa jenis metadata yang biasanya tidak dikenali oleh Linux, seperti bit tersembunyi(tersembunyi) arkib(arkib) dan sistem(sistemik). Bit Baca sahaja boleh dipetakan ke bit kebenaran Tulis dalam Linux.

Buat saluran anda sendiri

Anda boleh membuat suapan kemas kini RSS, Atom atau HTML anda sendiri dan menerima pemberitahuan tentang artikel baharu atau dikemas kini di tapak kami. Untuk melakukan ini, pergi ke halaman, pilih zon Linux, tandai kotak Artikel dan masukkan Linux Professional Institute sebagai frasa laluan, kemudian pilih jenis saluran yang dikehendaki.

Satu lagi batasan SMB ialah saiz maksimum fail sama dengan dua gigabait. Had ini merupakan masalah yang jelas dalam dunia arkib berbilang gigabait, fail multimedia, dsb.

Untuk membolehkan pelanggan Linux mengendalikan SMB dengan ciri di atas, mereka mesti sama ada mengabaikannya atau boleh menggunakan data "palsu". Pilihan ini serupa dengan yang digunakan semasa memasang fail fail di Linux. sistem NTFS atau LEMAK. Nasib baik, protokol CIFS menyediakan set alat yang lebih luas untuk mengatasi beberapa batasan ini.

Anda juga perlu tahu tentang port rangkaian yang digunakan oleh protokol SMB. Ini ialah port UDP (User Datagram Protocol) 137 dan 138, serta port TCP 139 (perkhidmatan sesi - dengan kata lain, pemindahan fail). Anda memerlukan maklumat ini apabila menyahpepijat SMB menggunakan utiliti peringkat rendah diagnostik rangkaian.

Sambungan CIFS untuk Protokol SMB

Pada pertengahan 1990-an, Microsoft® menamakan semula protokol SMB kepada CIFS dan pada masa yang sama menambah beberapa ciri baharu padanya, termasuk sokongan untuk pautan simbolik dan keras, serta fail besar. CIFS juga menyokong akses kepada pelayan melalui port TCP 445 selamat sebagai tambahan kepada pelabuhan standard 139.

Sambungan CIFS lain telah terbukti sama pentingnya dengan sambungan SMB Microsoft sendiri. Khususnya, satu set fungsi yang dikenali sebagai sambungan UNIX(sambungan UNIX), menyediakan sokongan untuk pemilikan fail dan kebenaran bersama-sama dengan jenis metadata UNIX yang lain. Jika kedua-dua pelanggan dan pelayan menyokong sambungan ini, maka menggunakan protokol CIFS dan bukannya protokol SMB boleh memberikan yang lebih baik kerja yang cekap pelanggan di bawah Kawalan Linux. Seperti yang anda jangkakan, sambungan ini tidak disokong oleh sistem pengendalian keluarga Pelayan Windows®, jadi ia hanya berguna apabila pelanggan Linux menyambung ke pelayan Samba. Pelayan mesti dikonfigurasikan dengan yang berikut parameter global:

sambungan unix = Ya

Secara lalai tetapan ini ditetapkan kepada Tidak dalam semua versi Samba kurang daripada 3.0, tetapi dalam Samba 3.0 ia ditetapkan kepada Ya secara lalai, menghapuskan keperluan untuk mengkonfigurasinya secara manual.

Menggunakan smbclient

Mungkin cara paling mudah untuk mengakses pelayan SMB/CIFS adalah dengan Pelanggan Linux- Ini adalah untuk menggunakan utiliti baris arahan smbclient. Utiliti ini serupa dengan arahan ftp klasik, jadi jika anda biasa dengan ftp, anda akan mudah menguasai smbclient. Jika anda tidak biasa dengan ftp, maka sudah cukup untuk mengetahui bahawa program ini menyediakan sambungan ke pelayan tanpa pemasangan standard perkongsian fail. Sebaliknya, pengguna melaksanakan pelbagai arahan untuk melihat, memadam, memuat turun atau memindahkan fail.

Untuk menggunakan smbclient, anda mesti menaip nama arahan ini dan nama perkhidmatan pada baris arahan dalam format berikut: // SERVER / PERKHIDMATAN. Sebagai contoh, jika anda perlu mengakses bahagian GORDON pada pelayan TANGO, anda harus menentukan nama //TANGO/GORDON. Bergantung pada konfigurasi pelayan, anda mungkin dikehendaki memasukkan kata laluan. Jika kata laluan yang betul dimasukkan, anda boleh memasukkan pelbagai arahan untuk mengakses fail yang disimpan pada pelayan. Jadual 1 menyenaraikan beberapa arahan smbclient yang paling penting; Untuk maklumat tentang arahan lain yang lebih eksotik, lihat halaman manual utiliti.

Jadual 1. Perintah smbclient yang paling penting
PasukanTindakan
? atau pertolonganMenyenaraikan semua arahan
CDMenukar direktori kerja kepada pelayan jauh
delMemadamkan fail
dir atau lsMenyenaraikan fail dalam direktori semasa (atau ditentukan).
keluar atau berhentiMenamatkan sesi
dapatkanMemindahkan fail dari pelayan kepada klien
lcdMenukar direktori kerja kepada komputer tempatan
md atau mkdirMencipta direktori pada pelayan jauh
mgetMemindahkan berbilang fail dari pelayan kepada klien
lebihMenyenaraikan fail yang dipadam menggunakan arahan paging tempatan
mputMemindahkan berbilang fail daripada klien ke pelayan jauh
letakMemindahkan fail daripada klien ke pelayan jauh
rd atau rmdirMemadam direktori
menamakan semulaMenamakan semula fail pada pelayan jauh
rmMemadam satu atau lebih fail pada pelayan jauh

Secara lalai, smbclient menggunakan nama pengguna semasa untuk menyambung ke pelayan, tetapi anda boleh menentukan nama pengguna secara eksplisit menggunakan pilihan -U. Malah, anda boleh menggunakan beberapa pilihan baris arahan, termasuk pilihan yang membolehkan anda memindahkan fail tanpa log masuk mod interaktif smbclient. Oleh itu, smbclient boleh digunakan dalam skrip untuk melakukan pemindahan fail automatik. Untuk maklumat lanjut, lihat halaman manual untuk utiliti ini.

Sesi dengan smbclient kelihatan seperti ini:

Penyenaraian 1. Contoh sesi dengan smbclient
$ smbclient //TANGO/GORDON/ Masukkan kata laluan gordon: Domain= OS= Server= smb: \> cd mystuff smb: \mystuff\> ls . D 0 Mon May 16 19:20:08 2011 .. D 0 Mon 16 Mei 19:18:12 2011 xv-3.10a-1228.1.src.rpm 3441259 Sel 18 Mei 19:09:26 2010 License.txt 27898 Isn Mei 16 19:17:15 2011 Jan 10:12 18:13 2011 51198 blok bersaiz 2097152. 2666 blok tersedia smb: \mystuff\> dapatkan xorg.conf mendapatkan fail \mystuff\xorg.conf bersaiz 1210 sebagai xorg.conf (9.4 KiloBytes/sec) (purata 9.4 KiloBytes. ) smb:\mystuff\> keluar

Nasihat. Utiliti smbclient ialah alat penyahpepijatan yang sangat baik. Walaupun kesederhanaannya, ia membolehkan anda mengakses persekitaran rangkaian tanpa memasang sumber, yang boleh memudahkan penyelesaian masalah.

Memasang perkongsian fail SMB/CIFS

Walaupun semua keberkesanannya, smbclient tidak membenarkan anda mendapatkan akses telus yang sama ke pelayan seperti semasa bekerja dengan klien Windows. Jika ini yang anda perlukan, anda perlu menggunakan cara lain untuk memasang saham SMB/CIFS. Ini boleh dilakukan menggunakan standard arahan Linux lekapkan atau dengan mengedit fail /etc/fstab untuk melekapkan perkongsian SMB/CIFS secara automatik apabila komputer but.

Meningkat saham buat sementara waktu

Perkongsian fail SMB/CIFS boleh dipasang menggunakan perintah mount, yang juga digunakan untuk pemasangan jilid tempatan atau saham NFS. Anda boleh menentukan jenis sistem fail cifs, atau dalam kebanyakan kes mount akan menentukan sama ada pemacu tertentu diperlukan berdasarkan sintaks arahan. Sebagai alternatif, anda boleh menghubungi terus program utiliti mount.cifs. Pada asasnya, pemasangan sistem fail tempatan dan jauh berbeza hanya dalam jenis peranti yang dipasang; Oleh itu, untuk memasang sumber GORDON yang terletak pada pelayan TANGO, jalankan sahaja arahan berikut sebagai pengguna root:

# lekapkan //TANGO/GORDON/mnt

Dalam amalan, arahan ini boleh menimbulkan masalah: ia menghantar akar nama ke pelayan sebagai nama pengguna, dan jika pengguna itu tidak dibenarkan menyambung ke pelayan, pelekap akan gagal. Masalah ini boleh diselesaikan dengan menggunakan pilihan -o user=name untuk menghantar nama pengguna ke pelayan.

# mount -o user=gordon //TANGO/GORDON /mnt Kata laluan:

Beberapa pilihan pelekap lain boleh digunakan, dihantar kepada arahan pelekap menggunakan pilihan -o. Yang paling berguna disenaraikan dalam Jadual 2. Untuk maklumat lanjut tentang pilihan yang tinggal, lihat halaman manual mount.cifs.

Jadual 2. Pilihan mount.cifs yang paling penting
PilihanTindakan
pengguna= nama atau nama pengguna= nama Menentukan nama pengguna yang dihantar ke pelayan.
kata laluan= lulus Mentakrifkan kata laluan untuk dihantar ke pelayan. Jika tiada kata laluan ditentukan, maka mount.cifs menggunakan nilai tersebut pembolehubah persekitaran PASSWD; jika nilai PASSWD tidak dinyatakan, atur cara menggesa pengguna untuk kata laluan.
kelayakan= nama fail Mentakrifkan fail yang mengandungi nama pengguna, kata laluan dan nama kumpulan kerja pilihan. Setiap nilai disenaraikan pada baris yang berasingan, bermula dengan nama pengguna= , kata laluan=, dan kumpulan kerja=, masing-masing.
uid= UID Mentakrifkan ID pengguna yang akan menjadi pemilik fail sumber yang dipasang.
gid= GID Sama seperti uid= pilihan UID, tetapi digunakan pada pengecam kumpulan (GID) dan bukannya pengecam pengguna (UID).
mod_fail= mod Menetapkan mod fail (kebenaran) dalam bentuk berangka yang akan diberikan kepada fail pada pelayan.
dir_mode= mod Sama seperti pilihan file_mode=mode, tetapi tidak digunakan untuk fail, tetapi untuk direktori.
tetamuMenghalang gesaan kata laluan. Biasanya, pilihan ini hanya berfungsi jika sumber menyokong akses tetamu.
kerasJika pelayan menjadi tidak tersedia, proses yang cuba mengakses fail yang terletak padanya kekal beku sehingga akses kepada pelayan dipulihkan.
lembutJika pelayan menjadi tidak tersedia, proses yang cuba mengakses fail yang terletak di atasnya menerima mesej ralat. Tindakan ini adalah lalai.

Parameter uid, gid, file_mode dan dir_mode biasanya pilihan apabila menyambung ke pelayan yang menyokong sambungan UNIX yang dilaksanakan dalam CIFS. Walau bagaimanapun, tetapan ini boleh digunakan untuk mengatasi nilai yang ditetapkan pada pelayan. Juga ambil perhatian bahawa semua pilihan ini mempengaruhi cara fail kelihatan kepada klien; ia tidak menjejaskan kebenaran atau pemilikan fail pada pelayan.

Setelah bahagian SMB/CIFS dipasang, ia boleh diakses dengan cara yang sama seperti cakera tempatan atau volum NFS. Anda boleh menyalin dan memadam fail menggunakan arahan cp dan rm, mengeditnya dalam editor teks atau program lain, dsb. Walau bagaimanapun, ingat bahawa jika pelayan tidak menyokong ciri tertentu, anda tidak akan dapat menggunakannya. Sebagai contoh, anda tidak boleh menukar mod fail menggunakan chmod jika pelayan tidak menyokong sambungan UNIX (pengecualian tertentu dalam kes chmod ialah keupayaan untuk menukar kebenaran menulis - kebenaran ini dipetakan secara songsang kepada bit baca sahaja SMB protokol).

Apabila anda selesai bekerja dengan bahagian, anda boleh menyahlekapnya menggunakan arahan umount, sama seperti sistem fail tempatan biasa:

# umount /mnt
Memasang perkongsian fail menggunakan SMB

Kernel Linux sebelum versi 2.6.37 mengandungi pemacu SMB dan CIFS yang berasingan dan membenarkan bahagian itu dipasang menggunakan protokol SMB asal; Untuk melakukan ini, anda sama ada perlu menentukan smbfs sebagai jenis sistem fail, atau gunakan arahan smbmount. Ini berfungsi sama seperti menggunakan jenis sistem fail cifs atau perintah mount.cifs, walaupun terdapat beberapa perbezaan dalam butirannya. Penggunaan protokol SMB menjadikannya mustahil untuk menggunakan ciri khusus CIFS, seperti sambungan UNIX.

Pada masa lalu, kadangkala masuk akal untuk menggunakan SMB; sebagai contoh, adalah mungkin untuk melekapkan perkongsian fail pada komputer Windows 9x/Me yang sangat lama menggunakan pemacu smbfs Linux, tetapi tidak menggunakan cifs. Hari ini, situasi sedemikian sangat jarang berlaku, kerana pelaksanaan moden cifs telah menghapuskan penggunaan O kebanyakan batasannya yang sedia ada. Walau bagaimanapun, jika anda menghadapi masalah yang sama, cuba pasang kernel Linux dengan versi sebelum 2.6.37 dan semak sama ada pemandu smbfs akan membantu menyelesaikannya.

Memasang saham secara kekal

Jika anda perlu melekapkan perkongsian fail SMB/CIFS secara kekal, anda perlu menambah entri pada fail /etc/fstab. Perubahan ini serupa dengan semua perubahan lain pada fail /etc/fstab yang berlaku sebagai sebahagian daripada arahan mount. Walau bagaimanapun, terdapat satu pilihan yang patut perhatian istimewa dalam situasi ini, iaitu kelayakan. Oleh kerana kebanyakan pelayan SMB/CIFS menggunakan kata laluan untuk pengesahan, untuk melekapkan sumber fail menggunakan /etc/fstab adalah perlu untuk menyimpan kata laluan kekal. Walaupun kata laluan boleh disimpan terus dalam fail /etc/fstab (menggunakan pilihan kata laluan), ini tidak disyorkan - kerana fail /etc/fstab mesti boleh dibaca oleh semua pengguna, mana-mana pengguna juga boleh melihat kata laluan. Menggunakan pilihan kelayakan membolehkan anda menyimpan kata laluan dalam fail yang hanya boleh dibaca oleh pengguna root, yang meningkatkan keselamatan mereka.

Entri yang berfungsi dalam fail /etc/password untuk bahagian SMB/CIFS mungkin kelihatan seperti ini:

//TANGO/BACKUPS /saveit cifs credentials=/etc/samba/creds.txt 0 0

Bukti kelayakan yang berkaitan mungkin kelihatan seperti ini:

nama pengguna=buuser kata laluan=Iw2bUmS)