একটি এসএসএইচ হোস্ট কী কীভাবে পরিবর্তন করবেন?


23

আমি একটি সার্ভার ক্লোন করেছি এবং তাই তারা একই আরএসএ কী ফিঙ্গারপ্রিন্ট পেয়েছে।

এটি সংজ্ঞায়িত বলে মনে হচ্ছে /etc/ssh/ssh_host_rsa_key.pub

এটি পরিবর্তন করার সঠিক উপায় কী?

ধন্যবাদ।

উত্তর:


23

অথবা, কীগুলি সরান এবং

ssh-keygen -A

ব্যাখ্যা:

-A: প্রতিটি মূল ধরণের (rsa1, rsa, dsa, ecdsa এবং ed25519) যার জন্য হোস্ট কী উপস্থিত নেই, ডিফল্ট কী ফাইল পাথ, একটি খালি পাসফ্রেজ, কী প্রকারের জন্য ডিফল্ট বিট এবং ডিফল্ট সহ হোস্ট কী উত্পন্ন করুন মন্তব্য নেই। এটি নতুন হোস্ট কী তৈরি করতে / etc / rc দ্বারা ব্যবহৃত হয়।


ওপি'র ট্যাগগুলি ডেবিয়ান নির্দিষ্ট করে তবে প্ল্যাটফর্ম নির্দিষ্ট নয় বলে এই উত্তরটি আরও ভাল সমাধানের মতো বলে মনে হয়।
এমসি 0 ই

হুঁ, এটি পুরানো সংস্করণগুলির জন্য কাজ করে বলে মনে হচ্ছে না। উদাহরণস্বরূপ, ডেবিয়ান স্কিজে ব্যর্থ হয়, এতে ওপেনএসএসএইচ_৫.৫ পি 1 রয়েছে
এমসি0 ই

1
আপনার তথ্যের জন্য ( manpagez.com/man/1/ssh-keygen থেকে ) ssh-keygen -Aনিম্নলিখিতটি করে: "প্রতিটি মূল ধরণের (rsa1, rsa, dsa, ecdsa এবং ed25519) যার জন্য হোস্ট কী উপস্থিত নেই, হোস্টটি উত্পন্ন করুন ডিফল্ট কী ফাইলের পথ, একটি খালি পাসফ্রেজ, কী টাইপের জন্য ডিফল্ট বিট এবং ডিফল্ট মন্তব্য সহ কীগুলি new
রবিডিস্কি

19

ওপেনএসএসএইচ হোস্ট কীগুলি পুনরুত্থিত করতে এই পদক্ষেপগুলি অনুসরণ করুন

  1. পুরানো এসএসএস হোস্ট কীগুলি মুছুন: rm /etc/ssh/ssh_host_*
  2. ওপেনএসএসএইচ সার্ভারটি পুনরায় কনফিগার করুন: dpkg-reconfigure openssh-server
  3. সমস্ত ssh ক্লায়েন্ট (গুলি) ~/.ssh/known_hostsফাইল আপডেট করুন

উল্লেখ


8

এটি করার একটি সাধারণ পদ্ধতির জন্য:

ssh-keygen -q -N "" -t dsa -f /etc/ssh/ssh_host_dsa_key

ssh-keygen -q -N "" -t rsa -b 4096 -f /etc/ssh/ssh_host_rsa_key

ssh-keygen -q -N "" -t ecdsa -f /etc/ssh/ssh_host_ecdsa_key

আপনার ওপেনএসএসএইচটির সংস্করণটি কীগুলি অনুসারে মেশান এবং মেলে।


1
আমি মনে করি এই প্রশ্নের উন্নতি করার একটি উপায় হ'ল বিটের সংখ্যা বাড়ানোর উপায় যুক্ত করা। যেমনssh-keygen -q -N "" -t rsa -b 4096 -f /etc/ssh/ssh_host_rsa_key
হোয়াইটকেট

0

এগুলি মুছুন এবং এসএসএইচডি পরিষেবা পুনরায় চালু করুন। এগুলি নতুনভাবে জন্মানো হবে।


1
না, এটি কাজ করে না। /etc/init.d/ssh restart<newline> Could not load host key: /etc/ssh/ssh_host_rsa_key<newline> Could not load host key: /etc/ssh/ssh_host_dsa_key<newline> [....] Restarting OpenBSD Secure Shell server: sshdCould not load host key: /etc/ssh/ssh_host_rsa_key<newline> Could not load host key: /etc/ssh/ssh_host_dsa_key
পাস্কাল পলিউনুস

1
প্রকৃতপক্ষে. শুধুমাত্র আরএইচইএল ভিত্তিক ঝামেলা বিহিত করে works দুঃখিত
হেইস স্পাইটার

ভাল পরামর্শ, ধন্যবাদ। এটি সেন্টোস ইনস্টলেশনতে আমার পক্ষে কাজ করেছে।
জর্জ গাল

অবশ্যই
ফেডোরায়

0

স্ক্রিপ্ট (এসএসডিডি ডিমন পুনরায় আরম্ভ করার ক্ষেত্রে কীগুলি স্বয়ংক্রিয়ভাবে পুনরায় তৈরি না করে)

#!/bin/bash

# Regenerate SSHD key materials, restart sshd if "-r" passed on command line

set -o nounset

WHERE=/etc/ssh

# go to directory

pushd $WHERE >/dev/null

if [[ $? != 0 ]]; then
   echo "Could not cd to $WHERE -- exiting" >&2
   exit 1
fi

# create backup folder

NOW=`date '+%Y%m%d.%H%M%S'` # default NOW string
BAKDIR=bak_$NOW

mkdir $BAKDIR

if [[ $? != 0 ]]; then
   echo "Could not mkdir $BAKDIR -- exiting" >&2
   exit 1
fi

# move existing key material to backup folder

mv ssh_host_* $BAKDIR

if [[ $? != 0 ]]; then
   echo "Could not move old files to $BAKDIR -- exiting" >&2
   exit 1
fi

# generate new keys

ssh-keygen -A

if [[ $? != 0 ]]; then
   echo "Could not recreate keys -- exiting" >&2
   exit 1
fi

# ssh-keygen may create DSA keys but:
# "Never use DSA or ECDSA"
# http://security.stackexchange.com/questions/5096/rsa-vs-dsa-for-ssh-authentication-keys

/bin/rm -f *_dsa_key *_dsa_key.pub
/bin/rm -f *_ecdsa_key *_ecdsa_key.pub

# on Fedora, one has to tune permissions a bit

chmod 640 *_key
chgrp ssh_keys *_key

# make sure SELinux attributes are as they should be

restorecon -R $WHERE

# Done

echo "New key material"
ls -l *_key *_key.pub

# Do the risky thing

if [[ $1 == '-r' ]]; then
   echo "Restarting SSH daemon"
   systemctl restart sshd
fi

# go back to where you where

popd >/dev/null

আপনার মন্তব্যে লিঙ্কটি বলে না যে ইসিডিএসএ ব্যবহার করা উচিত নয়।
টড ওয়ালটন

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

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