আমি সেটআপ OpenSSH- র এর একটি উপায় অনুসন্ধানের জন্য করে থাকেন umask করার 0027
সব বিভিন্ন ধরনের জুড়ে একটি সামঞ্জস্যপূর্ণ উপায়।
সংযোগের প্রকারের দ্বারা আমি উল্লেখ করছি:
- SFTP
- scp কমান্ড
- ssh হোস্টনেম
- ssh হোস্টনেম প্রোগ্রাম
3. এবং 4 এর মধ্যে পার্থক্যটি হ'ল প্রাক্তনটি একটি শেল শুরু করে যা সাধারণত /etc/profile
তথ্যটি পড়ে যখন উত্তরটি না করে।
এই পোস্টটি পড়ার পাশাপাশি আমি ওপেনএসএসএইচ-এর নতুন সংস্করণগুলিতে উপস্থিত -u বিকল্প সম্পর্কে সচেতন হয়েছি। তবে এটি কাজ করে না।
আমি অবশ্যই যোগ করতে হবে যে /etc/profile
এখন অন্তর্ভুক্ত umask 0027
।
পয়েন্ট পয়েন্টে যাচ্ছে:
- sftp - এখানে উল্লিখিত হিসাবে সেট
-u 0027
করা যথেষ্ট নয়।sshd_config
যদি আমি এই প্যারামিটারটি সেট না করে রাখি তবে sftp ডিফল্টরূপে ব্যবহার করে umask 0022
। এর অর্থ এই যে আমার কাছে দুটি ফাইল থাকলে:
-rwxrwxrwx 1 user user 0 2011-01-29 02:04 execute
-rw-rw-rw- 1 user user 0 2011-01-29 02:04 read-write
গন্তব্য মেশিনে রাখার জন্য আমি যখন এসফটিপি ব্যবহার করি তখন আমি আসলে পাই:
-rwxr-xr-x 1 user user 0 2011-01-29 02:04 execute
-rw-r--r-- 1 user user 0 2011-01-29 02:04 read-write
তবে যখন আমি সেট -u 0027
উপর sshd_config
গন্তব্য মেশিন আমি আসলে পেতে:
-rwxr--r-- 1 user user 0 2011-01-29 02:04 execute
-rw-r--r-- 1 user user 0 2011-01-29 02:04 read-write
যা প্রত্যাশিত নয়, যেহেতু এটি আসলে হওয়া উচিত:
-rwxr-x--- 1 user user 0 2011-01-29 02:04 execute
-rw-r----- 1 user user 0 2011-01-29 02:04 read-write
কেউ বুঝতে পারে কেন এমন হয়?
scp - sftp এর জন্য কী সেটআপ করা যায় তার স্বাধীনভাবে অনুমতিগুলি সর্বদা থাকে
umask 0022
। এটি কীভাবে পরিবর্তন করতে হয় তা সম্পর্কে বর্তমানে আমার কোনও ধারণা নেই।ssh হোস্টনেম - এখানে কোনও সমস্যা নেই যেহেতু শেলটি
/etc/profile
ডিফল্টরূপে পড়ে যার অর্থumask 0027
বর্তমান সেটআপ upssh হোস্টনেম প্রোগ্রাম - scp হিসাবে একই অবস্থা ।
সংক্ষেপে, sftp
ফলাফলকে ওমাস্ক স্থাপন ফলাফলটি যেমন বদলে যায় তেমনটি হয় না, ssh hostname
প্রত্যাশিত পড়া /etc/profile
এবং উভয়ই কাজ করে scp
এবং ssh hostname program
মনে হয় umask 0022
কোথাও হার্ডকোড হয়েছে।
উপরোক্ত বিষয়গুলির যে কোনও বিষয়ে অন্তর্দৃষ্টি স্বাগত।
সম্পাদনা: আমি প্যাচগুলি এড়াতে চাই যাতে ম্যানুয়ালি ওপেনশ সংকলন প্রয়োজন। সিস্টেমটি ম্যাভেরিকের openssh
প্যাকেজগুলির সাথে উবুন্টু সার্ভার 10.04.01 (লুসিড) এলটিএস চলছে ।
উত্তর: পয়েজ দ্বারা ইঙ্গিত হিসাবে, পাম_উমস্ক ব্যবহার করে কৌশলটি করেছে।
সঠিক পরিবর্তনগুলি হ'ল:
লাইনে যুক্ত হয়েছে /etc/pam.d/sshd
:
# Setting UMASK for all ssh based connections (ssh, sftp, scp)
session optional pam_umask.so umask=0027
এছাড়াও, সমস্ত লগইন শেলগুলি উত্স দেয় কিনা তা নির্বিশেষে প্রভাবিত করার জন্য /etc/profile
একই লাইনগুলিতে যুক্ত করা হয়েছিল /etc/pam.d/login
।
সম্পাদনা : কিছু মন্তব্যের পরে আমি এই বিষয়টির প্রতিক্রিয়া জানালাম।
কমপক্ষে উবুন্টুতে (যেখানে আমি পরীক্ষা করে দেখেছি) মনে হয় যে ব্যবহারকারী যদি তাদের শেলের ইআর ফাইলগুলিতে (.bashrc, .zshrc, ...) আলাদা আলাদা উমাস্ক সেট করে থাকে, তবে পাম উমাস্ককে উপেক্ষা করা হবে এবং পরিবর্তে ব্যবহারকারীর উমাস্ক সংজ্ঞায়িত করা হবে। পরিবর্তনগুলি /etc/profile
প্রভাবকে প্রভাবিত করে না যতক্ষণ না ব্যবহারকারী স্পষ্টভাবে init ফাইলগুলিতে এই পরিবর্তনগুলি উত্স করে।
সমস্ত আচরণে যদি এই আচরণটি ঘটে থাকে তবে এই মুহূর্তে এটি স্পষ্ট নয়।
UsePAM yes
আপনার sshd_config- এ আছে?
/etc/profile
। এরকম কিছুalias umask=/bin/true