উইন্ডো থেকে 7 777 অনুমতি ছাড়াই লেখার যোগ্য একটি সাম্বা শেয়ার কীভাবে তৈরি করবেন?


33

আমার লিনাক্স মেশিনে একটি পাথ রয়েছে (ডেবিয়ান 8) যা আমি সাম্বা 4 এর সাথে উইন্ডোজ কম্পিউটারের সাথে ভাগ করতে চাই (একটি ডোমেনে উইন 7 এবং 8)। আমার মধ্যে smb.confআমি নিম্নলিখিতগুলি করেছেন:

[myshare]
path = /path/to/share
writeable = yes
browseable = yes
guest ok = yes
public = yes

আমার উইন্ডোজ থেকে নিখুঁত পড়ার অ্যাক্সেস আছে। তবে লেখার অ্যাক্সেস পাওয়ার জন্য, chmod -R 777 /path/to/shareউইন্ডোজ থেকে এটি লিখতে সক্ষম হওয়ার জন্য আমাকে করা দরকার ।

লিনাক্সের মালিকদের লিনাক্স শংসাপত্রগুলি সরবরাহ করার পরে আমি যা চাই তা উইন্ডোজ থেকে লেখার অ্যাক্সেস /path/to/share

আমি ইতিমধ্যে চেষ্টা করেছি:

[myshare]
path = /path/to/share
writeable = yes
browseable = yes

তারপরে উইন্ডোজ শংসাপত্রগুলির জন্য জিজ্ঞাসা করে, তবে আমি যাই লিখি না কেন, এটি সর্বদা অস্বীকার করা হয়।

7 777 না দিয়ে কোনও উইন্ডোজ ডোমেন কম্পিউটার থেকে সাম্বা শেয়ারের লেখার অ্যাক্সেস পাওয়ার সঠিক উপায় কী?

উত্তর:


49

আমি সেই অংশটির জন্য একটি উত্সর্গীকৃত ব্যবহারকারী তৈরি করার এবং এটিতে নির্দিষ্ট করার পরামর্শ দিই force user(ডক্স দেখুন)

একটি ব্যবহারকারী তৈরি করুন ( shareuserউদাহরণস্বরূপ) এবং ভাগ ফোল্ডারের সমস্ত কিছুর মালিককে সেই ব্যবহারকারীর কাছে সেট করুন:

adduser --system shareuser
chown -R shareuser /path/to/share

তারপরে এতে যুক্ত করুন force userএবং অনুমতি মাস্ক সেটিংস smb.conf:

[myshare]
path = /path/to/share
writeable = yes
browseable = yes
public = yes
create mask = 0644
directory mask = 0755
force user = shareuser

নোট যে guest okজন্য প্রতিশব্দ public


1
আমার অনুরূপ সমস্যা ছিল এবং সমস্ত গুগল অনুসন্ধানগুলি কেবল 7 777 টি ব্যবহার করার নোংরা উপায়টি দেখায় shared আমি আমার ভাগ করা ফোল্ডারের জন্য 75 wanted৫ চেয়েছিলাম এবং আমার লিনাক্স "ডিফল্ট ব্যবহারকারী" ব্যবহার করে ফাইলগুলি তৈরি করতে চেয়েছিল, আমি প্রকাশ্যে = হ্যাঁ ব্যবহার করেছি। ফোল্ডারটি 775, তৈরি এবং দির মুখোশটি 775 ছিল তবে উইন্ডোজটিতে এটি লিখনযোগ্য ছিল না এবং আমি কেন এটি পেতে পারি নি। অ্যাডিং force user = defaultUserআমার জন্য কাজ করেছে।
ফায়ারপল

আমি এটি কাজ করতে পারি না, যে কোনও সময় ডিরেক্টরিটি ভাগ করে নেওয়ার চেষ্টা করি, আমি কেবল একটি উইন্ডো পেয়ে বলি যে ডিরেক্টরিটি ভাগ করার জন্য আমাকে "অন্যদের" লেখার অনুমতি দেওয়া দরকার।
মার্ক ক্রামার

আমি বুঝতে পেরেছি, সমস্যাটির অবস্থান ছিল smb.conf। গুগল এবং এমনকি সাম্বাস ডকুমেন্টেশন বলেছিল যে ফাইলটি হওয়া উচিত /usr/local/samba/libতবে আসলে এটি থাকা উচিত/etc/samba
মার্ক ক্রামার

1
@ মার্কক্রামার আপনার নির্দিষ্ট লিনাক্স বিতরণে অন্তর্ভুক্ত নথিগুলি অনুসরণ করা ভাল ধারণা কারণ লিনাক্স ফাউন্ডেশনের এফএইচএস (ফাইলসাইম হায়ারকি স্ট্যান্ডার্ড) ফিট করার জন্য অনেকগুলি ফাইল পুনরায় সংগঠিত করে। আমি আপনার ডিস্ট্রো দিয়ে ডক্সগুলি সরবরাহ ও অনুসন্ধান করার পরামর্শ দিচ্ছি কারণ গুগল সর্বদা সেরা উত্তর নয়, উদাহরণস্বরূপ আপনি সফ্টওয়্যারটির ভিন্ন সংস্করণের জন্য তথ্য পেতে পারেন। শুভেচ্ছান্তে.
রবার্টল

2

ভাগ করার সেটিংসে smb.confআপনাকে ব্যবহারকারী এবং / অথবা গোষ্ঠীগুলির নাম উল্লেখ করতে হবে যা একটি write list = ...লাইন ব্যবহার করে ভাগ করে লিখতে অনুমতিপ্রাপ্ত ।

উদাহরণ:

[myshare]
...
write list = my_linux_username

তারপরে আপনাকে সাম্বার smbpasswdপ্রমাণীকরণের my_linux_usernameজন্য পাসওয়ার্ড সেট আপ করতে কমান্ডটি ব্যবহার করতে হবে :

sudo smbpasswd -a my_linux_username

এই পদক্ষেপটি প্রয়োজনীয় কারণ /etc/shadowএসএমবি প্রোটোকলে ব্যবহৃত পাসওয়ার্ড হ্যাশ অ্যালগরিদমের সাথে বেমানান থাকা স্ট্যান্ডার্ড সিস্টেমের পাসওয়ার্ডগুলি অ্যালগরিদমে হ্যাশ করা হয়। যখন কোনও ক্লায়েন্ট একটি এসএমবি প্রমাণীকরণ প্যাকেট প্রেরণ করে, এতে একটি হ্যাশ পাসওয়ার্ড অন্তর্ভুক্ত থাকে। এটি কেবল অন্য পাসওয়ার্ড হ্যাশের সাথে তুলনা করা যেতে পারে যা একই অ্যালগরিদম ব্যবহার করে।

(পূর্ববর্তী সহস্রাব্দের খুব পুরানো নির্দেশাবলী সাম্বায় পাসওয়ার্ড এনক্রিপশন নিষ্ক্রিয় করার এবং উইন্ডোজকে নেটওয়ার্কে এনক্রিপ্ট করা পাসওয়ার্ড নির্গত করার জন্য নির্দিষ্ট রেজিস্ট্রি হ্যাকগুলি ব্যবহার করার পরামর্শ দিতে পারে This এই পরামর্শটি অপ্রচলিত : সেই রেজিস্ট্রি হ্যাকগুলি বর্তমান সংস্করণগুলিতে আর কাজ করতে পারে না may উইন্ডোজ, এবং যে কেউ আপনার নেটওয়ার্ক ট্র্যাফিক নিরীক্ষণ করতে পারে তুচ্ছভাবে আপনার পাসওয়ার্ড ক্যাপচার অনুমতি দেয়।)


ক্লায়েন্ট-সাইড করতে আপনাকে আরও একটি জিনিস করতে হতে পারে। যখন আপনার উইন্ডোজ ক্লায়েন্ট সিস্টেমটি একটি অ্যাক্টিভ ডিরেক্টরি ডোমেনে যোগ হয় এবং আপনি কোনও এডি অ্যাকাউন্ট দিয়ে লগ ইন করেন, এটি স্বয়ংক্রিয়ভাবে ব্যবহারকারীর এডি ডোমেনের নাম সহ সমস্ত অযোগ্য ইউজারনেমকে উপসর্গ করে দেয়, যেমন আপনি ঠিক হিসাবে AD_DOMAIN\your_usernameনয়, প্রমাণীকরণ করবেন your_username

আপনি যদি স্থানীয় অ্যাকাউন্টে লগইন হয়ে থাকেন (বা আপনার ক্লায়েন্ট সিস্টেমটি কোনও এডি ডোমেনে যোগ দেয় না), উইন্ডোজ স্বয়ংক্রিয়ভাবে ব্যবহারকারীর নামটি ক্লায়েন্টের হোস্টনামের সাথে উপস্থাপন করতে পারে যদি না আপনি অন্য ডোমেইনের নাম উল্লেখ করেন।

স্ট্যান্ড একা উইন্ডোজ ক্লায়েন্ট থেকে স্ট্যান্ড-একা সাম্বা সার্ভারে সফলভাবে লগ ইন করতে আপনাকে আপনার ব্যবহারকারী নাম হিসাবে উল্লেখ করতে হতে পারে SAMBA_SERVER_HOSTNAME\your_username

অন্যথায় সাম্বা WINDOWS_CLIENT_HOSTNAME\your_usernameব্যবহারকারীর নামটি হিসাবে দেখতে পাবে , উপসংহারে পৌঁছাতে হবে যে এর ডোমেনের নামের কোনও ব্যবহারকারীকে যাচাই করার কোনও উপায় নেই WINDOWS_CLIENT_HOSTNAMEএবং লগইনটিকে প্রত্যাখ্যান করবে।

(সাম্বা -এর একটি নবীনতর সংস্করণ পারে আছে একটি বিল্ট-ইন এই নির্দিষ্ট পরিস্থিতির জন্য চেক, এবং তারা আপনার তবুও অ্যাক্সেস মঞ্জুর করতে পারে। কিন্তু এই মূলত কিভাবে SMB অনুমোদনের কাজ করে "ফণা অধীনে", এবং আপনি সাম্বা পুরানো সংস্করণ সঙ্গে মোকাবিলা করার জন্য প্রয়োজন হলে , এটি এখনও দরকারী হতে পারে।)


1

আমি এটি সন্ধান করছিলাম কারণ আমি তাড়াহুড়ো করেছিলাম এবং এমনকি ব্যবহারকারী তৈরিতে মনোনিবেশ করারও সময় পাইনি এবং তাই ...

যত তাড়াতাড়ি সম্ভব একটি ডেবিয়ান 9 মেশিনের ডেটা বের করে আনতে হবে এবং এটিই ছিল সবচেয়ে দ্রুততম উপায়, আপনি যদি কমান্ড এড়িয়ে চলাতে চান তবে আপনি এটিও করতে পারেন তবে আপনি স্পষ্টভাবে না থাকলে এটি অবশ্যই প্রস্তাবিত নয় ত্বরা

[mymfolder]
path = /mymfolder
writeable = yes
browseable = yes
public = yes
create mask = 0777
directory mask = 0777
force user = root 

এবং আপনি যদি এই পথে যান তবে আপনি "হোস্ট অনুমতি দিন" বিকল্পটি ব্যবহার করে হোস্ট দ্বারা সীমাবদ্ধ করতে পারেন। দেখুন: samba.org/samba/docs/server_security.html
ctorx
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.