আমি কীভাবে / dev / এলোমেলোভাবে / dev / urandom এ নির্দেশ করতে পারি


6

আমার একটি সার্ভার রয়েছে যা সমর্থনের জন্য পর্যাপ্ত এনট্রপি তৈরি করতে পারে না /dev/random। বিশেষ সমস্যাযুক্ত সফটওয়্যারটি ব্যবহারের জন্য কনফিগার করা যায় না /dev/urandom।

আমি চলন্ত চেষ্টা /dev/randomকরতে /dev/realrandomএবং symlinking /dev/randomকরতে /dev/urandom, কিন্তু lsof /dev/realrandomএখনও এটি ব্যবহার প্রসেস দেখায়।

ইন করে 'urandom' 'এলোমেলো' একই এনট্রপি ভাগ? , পরামর্শটি ব্যবহার করা হয় mknod /dev/random 1 9। এটি কি পুনরায় আরম্ভ করতে পারে? আমি কি কোনওভাবে উদেব ব্যবহার করব?


1
আমি বরং আপনি উত্তর অনুসারে প্রশ্ন পরিবর্তন না। কীভাবে এন্ট্রপি বাড়ানো যায় তা জিজ্ঞাসা করছি না।
— ব্রায়ান হেন্ক

উত্তর:


19

আপনাকে যা করতে হবে তা হ'ল /etc/udev/rules.d/70-disable-random-entropy-estimation.rulesনিম্নলিখিত বিষয়বস্তুগুলির মতো কিছু তৈরি করা :

# /etc/udev/rules.d/70-disable-random-entropy-estimation.rules
# Disables /dev/random entropy estimation (it's mostly snake oil anyway).
#
# udevd will warn that the kernel-provided name 'random' and NAME= 'eerandom'
# disagree.  You can ignore this warning.

# Use /dev/eerandom instead of /dev/random for the entropy-estimating RNG.
KERNEL=="random", NAME="eerandom"

# Remove any existing /dev/random, then create symlink /dev/random pointing to
# /dev/urandom
KERNEL=="urandom", PROGRAM+="/bin/rm -f /dev/random", SYMLINK+="random"

2
আসলে উল্টানো প্রশ্নের উত্তর দেওয়ার জন্য +1।
— মার্টিন এলিস

1
প্রথম অংশটি ওবুন্টুতে 16.04-এ কাজ করছে বলে মনে হচ্ছে না, ত্রুটি পেয়েছে:systemd-udevd[818]: NAME="eerandom" ignored, kernel device nodes can not be renamed; please fix it in /etc/udev/rules.d/70-disable-random-entropy-estimation.rules:8
— সেয়াপ

7

আপনার সিস্টেমে আপোস করার চেয়ে আপনার আরও এনট্রপি যুক্ত করার কথা বিবেচনা করা উচিত ।


এন্ট্রপি বাড়াতে হার্ডওয়্যার যুক্ত করতে আমার কাছে এই সিস্টেমে শারীরিক অ্যাক্সেস নেই বা কার্নেল প্যাচগুলি আপডেট হওয়ার সাথে সাথে স্থায়ী শেল অ্যাক্সেস নেই। বৈধভাবে এনট্রপি বাড়াতে অন্য বিকল্প আছে কি?
— ব্রায়ান হেন্ক

2
এই এনট্রপি ডেমনগুলির কোনওটিই কার্নেল প্যাচ নয়।
— ইগনাসিও ওয়াজকেজ-আব্রামস

টাইমার এনট্রপি ডেমনের মতো কিছু কীভাবে ইউরেনডম ব্যবহারের চেয়ে এলোমেলোতার জন্য ভাল? আমার কাছে কোনও সাউন্ড কার্ড বা ভিডিও ডিভাইস সংযুক্ত নেই, সুতরাং সেখানে তালিকাবদ্ধ অন্য দু'জন সাহায্য করবে না।
— ব্রায়ান হেন্ক

1
ইউরেনডম পরবর্তী র্যান্ডম মান তৈরি করার জন্য গাণিতিক সূত্র ব্যবহার করে যখনই প্রকৃত এনট্রপি উপলব্ধ না হয়। এই গাণিতিক সূত্রটি যদিও আপাতদৃষ্টিতে এলোমেলো, এটি নির্বিচারবাদী । এমনকি সামান্য কিছু প্রকৃত এনট্রপিও কিছু না থেকে ভাল।
— Ignacio Vazquez-Abram 21

3
/ Dev / urandom এর ব্যবহার পুরোপুরি ঠিক আছে। ব্লক করা / দেব / এলোমেলো একটি খারাপ ধারণা ছিল। এখানে একটি বিশদ ব্যাখ্যা রয়েছে: 2uo.de/myths-about-urandom - এছাড়াও, এন্ট্রপি পুলে সময় যোগ করা সম্ভবত
— ইউরেনডমের

1

আমি এই সমস্যা সমাধানের জন্য এএসডি ব্যবহার করেছি । আমি বাজি ধরছি আপনি এটি দিয়ে ব্যবহার করছেন gpg। এএসডি দিয়ে কাজ করার জন্য উত্স থেকে জিপিজি সংকলন করা দরকার, তবে একবার আমি এটি খুব ভালভাবে কাজ করেছি।

আরেকটি পরামর্শ: এখানে একটি অ্যাকাউন্টে সাইন আপ করুন এবং এলোমেলো সংখ্যার একটি গব ডাউনলোড করুন। আমি মনে করি আপনি একটি সহজ সঙ্গে এন্ট্রপি যুক্ত করতে পারেন cat file_with_random_numbers > /dev/random। সেই সাইটটিতে একটি ইউটিলিটি রয়েছে যা qrand(আইআইআরসি সংকলন করা দরকার) সার্ভিস থেকে ডাউনলোড করবে এবং আপনার / দেব / এলোমেলো বীজ বপন করবে।


দুর্ভাগ্যক্রমে, এটি একটি মালিকানাধীন প্রোগ্রাম যা সরাসরি ডিভাইস থেকে পড়ছে, তাই আমি মনে করি না ইজিডি কাজ করবে।
— ব্রায়ান হেন্ক

1
@ আলত্রা এর মতো অজানা উত্স থেকে এনট্রপি নেওয়া সত্যিই ভাল ধারণা নয়। স্থানীয় এন্ট্রপিতে আপনি যে মূল দিকগুলি পরেছেন তা হ'ল এটিও অনন্য। কোনও অজানা উত্স থেকে কোনও নেটওয়ার্কে এটি পাওয়ার অর্থ এটি লগ করা, বাধা দেওয়া বা অন্য কারও দ্বারা অনুলিপি করা হতে পারে যাতে এর মানটিকে অবহেলা করে।
— কিথ

সুপার হাই সিকিউরিটি প্রয়োজনের জন্য নয়, অবশ্যই নয়। এটি অবশ্যই সেরা অনুশীলন নয়। তবে এলোমেলো সংখ্যার আর একটি সুরক্ষিত উত্স অন্যত্র সংগ্রহ করা যেতে পারে এবং এন্ট্রপিকে খাওয়ানোর জন্য নিরাপদে আপলোড করা যেতে পারে। অ্যানালগ টিভি বা ভিসিআর ছাড়াই 10 মিনিটের টিভি স্ট্যাটিক রেকর্ড করুন, ফলস্বরূপ .wav ফাইলটি সার্ভারে আপলোড করুন (সুরক্ষিতভাবে) এবং এটিকে / dev / এলোমেলোভাবে খাওয়ান।
— LawrenceC

1

Udev এর পরবর্তী সংস্করণগুলি কার্নেল ডিভাইস নোডগুলির নাম পরিবর্তন করতে পারে না, https://unix.stackexchange.com/a/120272 দেখুন । কাজের ভিত্তিতে আপনি এই নিয়মটি ব্যবহার করতে পারেন (ফাইলের নাম হতে পারে /etc/udev/rules.d/70-random-is-urandom.rules):

KERNEL=="random", RUN+="/bin/ln -sf /dev/urandom /dev/random"

এটা সম্ভবত ব্যবহার করতে নিরাপদ KERNEL==randomচেয়ে KERNEL=urandomএই সংস্করণে সৃষ্টির মধ্যে কোনো জাতি অবস্থার থেকে মুক্ত হয় randomএবং urandomডিভাইস নোড। উভয় ডিভাইস নোড রাখতে এটি ব্যবহার করুন:

KERNEL=="random", RUN+="/bin/mv /dev/random /dev/eerandom", RUN+="/bin/ln -s /dev/urandom /dev/random"


0

আপনি একটি সিমিলিংক সেট আপ করতে পারেন

ln -s /dev/urandom /dev/random

এটি করার আগে, আপনার যদি আবার এটির প্রয়োজন হয় তবে মূল র্যান্ডমটি অন্য কোথাও এমভি করা বুদ্ধিমানের হতে পারে:

mv /dev/random /dev/chaos

পুনঃসূচনা করার পরে, পরিবর্তনগুলি চলে যাবে, তবে আপনি এটিকে স্থায়ী জিনিস হিসাবে তৈরি করতে উদেব বিধিগুলি সেট করতে পারেন। Https://n0tablog.wordpress.com/2007/11/24/running-out-of-entropy-in-debian-etch/ দেখুন


0

@ কেন্টের ধারণাকে বাস্তবায়ন করা, এটি করা উচিত:

printf '#!/bin/sh\nmv /dev/random /dev/random_original\nln -s /dev/urandom /dev/random' > /etc/init.d/random_noblock.sh
chmod +x /etc/init.d/random_noblock.sh
update-rc.d random_noblock.sh defaults 100
/etc/init.d/random_noblock.sh
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.