উবুন্টুতে থাকা সুরক্ষার আপডেটের মুলতুবি পরীক্ষা করুন


25

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

আমি যখন আমার চারটি উবুন্টু সার্ভারে লগইন করি তখন স্বাগত বার্তায় এটি থাকে:

39 packages can be updated.
26 updates are security updates.

যাইহোক, আমি যখন এপিটি পর্যবেক্ষণ করে নাগিওস প্লাগইন চালিত করি তখন আমি পাই:

% /usr/lib/nagios/plugins/check_apt
APT WARNING: 33 packages available for upgrade (0 critical updates). 

সুরক্ষামূলক আপডেটগুলি এবং নিয়মিত আপডেটগুলি মুলতুবি রয়েছে বলে কীভাবে সঠিকভাবে সনাক্ত করতে হবে তা আমার জানতে হবে। একবার ভাবলাম তা করতে পারে, আমি একটি Nagios স্ক্রিপ্ট যে ফিরে আসবে লিখতে পরিকল্পনা সতর্কতামূলক নিয়মিত আপডেট মুলতুবী জন্য, এবং গুরুতর নিরাপত্তা সংক্রান্ত আপডেট মুলতুবী জন্য।

কেউ কি জানেন যে এই দুটি শর্তটি কীভাবে সনাক্ত করা যায়?

উত্তর:


12

উবুন্টু-অ-সমালোচনামূলক আপডেটগুলি কীভাবে প্রকাশিত হয় তার সাথে সম্মিলিতভাবে /usr/lib/nagios/plugins/check_aptকীভাবে সমালোচনা সংক্রান্ত আপডেটগুলি সনাক্ত করে তা নাগিয়াস প্লাগইন সঠিকভাবে উবুন্টুতে সমালোচনামূলক আপডেটগুলি সনাক্ত করে না apt। আরও বিশদটি এখানে বাগে রয়েছে: https://bugs.launchpad.net/bugs/1031680

/usr/lib/update-notifier/apt-checkপরিবর্তে ব্যবহার করা একটি নির্ভরযোগ্য কাজ।


31

দেখা যাচ্ছে যে নিয়মিত আপডেটের জন্য মুলতুবি থাকা আপডেটের সংখ্যাটি ব্যবহার করে পাওয়া যাবে:

/usr/lib/update-notifier/apt-check 2>&1 | cut -d ';' -f 1

এবং সুরক্ষিত আপডেটের মুলতুবি থাকা সংখ্যাগুলি ব্যবহার করে পাওয়া যাবে:

/usr/lib/update-notifier/apt-check 2>&1 | cut -d ';' -f 2

শেষ পর্যন্ত, আমার নাগিস প্লাগইনটি নিম্নরূপ ছিল:

#!/bin/sh
#
# Standard Nagios plugin return codes.
STATUS_OK=0
STATUS_WARNING=1
STATUS_CRITICAL=2
STATUS_UNKNOWN=3

# Query pending updates.
updates=$(/usr/lib/update-notifier/apt-check 2>&1)
if [ $? -ne 0 ]; then
    echo "Querying pending updates failed."
    exit $STATUS_UNKNOWN
fi

# Check for the case where there are no updates.
if [ "$updates" = "0;0" ]; then
    echo "All packages are up-to-date."
    exit $STATUS_OK
fi

# Check for pending security updates.
pending=$(echo "${updates}" | cut -d ";" -f 2)
if [ "$pending" != "0" ]; then
    echo "${pending} security update(s) pending."
    exit $STATUS_CRITICAL
fi

# Check for pending non-security updates.
pending=$(echo "${updates}" | cut -d ";" -f 1)
if [ "$pending" != "0" ]; then
    echo "${pending} non-security update(s) pending."
    exit $STATUS_WARNING
fi

# If we've gotten here, we did something wrong since our "0;0" check should have
# matched at the very least.
echo "Script failed, manual intervention required."
exit $STATUS_UNKNOWN

1

কেন কেবল এপ-গেট কমান্ড ব্যবহার করা হচ্ছে না ?:

apt-get -s dist-upgrade | grep "^Inst" | grep -i security | wc -l

2
এই হ্যাকটি সুরক্ষা এবং নিরাপত্তাহীন আপডেটগুলির মধ্যে নির্ভরযোগ্যভাবে পার্থক্য করবে না। উদাহরণস্বরূপ, উবুন্টুতে, আপডেটের পকেটে সুরক্ষা আপডেটগুলিও প্রকাশিত হয়। আপডেট পকেটটি প্রথমে তালিকাভুক্ত করা থাকলে sources.list, আপনার পরামর্শটি সুরক্ষা আপডেটের বিজ্ঞপ্তিগুলি হারিয়ে যাওয়ার দিকে পরিচালিত করবে। পরিবর্তে পরিবর্তে আপডেট পকেট থেকে এগুলি ডাউনলোড করতে পছন্দ করবে এবং আপনার গ্রেপ সেগুলি মিস করবে।
রবি বাসাক

@ রবিবাসাক দ্বারা চিহ্নিত সমস্যাটি আমার উত্তর অনুসারে সার্ফারফ্লাট
১৩40০৫৩

0

একবার নাগিওস আপনার সুরক্ষা আপডেটের কথা জানালে, আপনি কীসের প্রয়োজন তার একটি তালিকা পাবেন।

grep security /etc/apt/sources.list > /tmp/security.list
sudo apt-get upgrade -oDir::Etc::Sourcelist=/tmp/security.list -s

আপনি একটি গণনা দেওয়ার জন্য ডাব্লুসি-এল-তে পাইপযুক্ত এই কমান্ডগুলিও ব্যবহার করতে পারেন তবে উপরের উত্তরগুলি সম্ভবত নাগিও স্ক্রিপ্টের জন্য আরও দক্ষ এবং উপযুক্ত are


আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.