কোন বন্দরে এসএসএইচ দিয়ে লগ ইন করব তা আমি কীভাবে কাজ করব?


15

আমার একটি উবুন্টু 10.04 সার্ভার সেটআপ রয়েছে যা আমি কিছুক্ষণ আগে সেটআপ করেছি। আমি ব্যবহারকারীর নাম এবং পাসওয়ার্ডটি রেকর্ড করার সময়, আমি বুদ্ধিমান বলে মনে করেছি এবং সাধারণ এসএস পোর্টটি 22 থেকে পরিবর্তন করেছি ... অন্য কোনও কিছুতে।

কীভাবে আমি জানব যে সেই বন্দরটি কী হতে পারে?

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


এটি সম্ভবত নির্বোধ এবং আপনার কাছে ইতিমধ্যে ভাল উত্তর রয়েছে তবে আপনি যদি অতীতে সংযুক্ত হয়ে থাকেন তবে আপনি আপনার টার্মিনালের ইতিহাস এবং / অথবা পরীক্ষা করতে পারেন ~/.ssh/config
স্পারহাক

উত্তর:


24

কোন পোর্টটি কনফিগার করা হয়েছে তা কনফিগারেশন ফাইলটিতে পরীক্ষা করুন:

$ sudo grep Port /etc/ssh/sshd_config
Port 22

তারপরে sshতা নিশ্চিত হয়ে পুনরায় আরম্ভ করুন এটি সুনির্দিষ্টভাবে আপনি যে কনফিগারটি দেখেছেন তা লোড করে বা কোন পোর্টে sshচলছে তা সন্ধান করে:

$ sudo netstat -tpln | egrep '(Proto|ssh)'
Proto Recv-Q Send-Q Local Address           Foreign Address         State       PID/Program name
tcp        0      0 0.0.0.0:22              0.0.0.0:*               LISTEN      12586/sshd

এটি ssh22 বন্দরে স্বাভাবিক চলমান।


1
কেবল একটি নোট: আমি মনে করি না যে আপনার সুডো দরকার
পিয়ার্তোনি

প্রথম কমান্ডে আপনার প্রয়োজন sudoকারণ সাধারণত sshdকনফিগার ফাইলটি বিশ্ব পাঠযোগ্য নয়। দ্বিতীয়টিতে আপনাকে সমাধান sudoকরতে সক্ষম হতে হবে Program nameঅন্যথায় আপনি কেবল নিজের ব্যবহারকারীর অধীনে চলমান প্রক্রিয়াগুলির নামটি দেখতে পাচ্ছেন।
মার্কোস ডায়োনি

আমি @ পিয়ারটোনির সাথে একমত, আপনার এই আদেশটি "SUDO" দিয়ে চালানোর দরকার নেই।
অমিনতাবর

8

অন্য উপায়ের মাধ্যমে যদি আপনার সার্ভারে অ্যাক্সেস থাকে তবে কেবল চালান:

$ sudo grep Port /etc/ssh/sshd_config 
Port NNN

এটি উপরে প্রদর্শিত লাইকের মতো একটি লাইন ফিরে আসবে যেখানে NNNআপনি পছন্দ করেছেন বন্দর।


3

সহজ উপায়টি কেবল এসএসএইচ সার্ভার কনফিগারেশন ফাইলগুলির দিকে তাকিয়ে রয়েছে:

➜  ~  sudo grep Port /etc/ssh/sshd_config 
   Port 22

এছাড়াও প্রক্রিয়া প্রতি বন্দর শোনার জন্য পরীক্ষা করা আছে lsof:

sudo lsof -Pi | grep ssh

বা অন্য যে কোনও পোর্ট তালিকা কমান্ড পছন্দ netstat -lntu


3

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


3

আপনার যদি সার্ভারটিতে লগইন অ্যাক্সেস না থাকে তবে আপনি এসএসএইচ পোর্টটির nmap"সংস্করণ স্ক্যান" বৈশিষ্ট্যটি ব্যবহার করে খুঁজে পেতে পারেন :

nmap -sV -p- <insert target's IP here>

-sVবিকল্প উপায়ে "সংস্করণ স্ক্যান", এবং -p-মানে হলো "সব পোর্ট স্ক্যান"। যদি আপনি একটি ভাল সংযোগ পেয়ে থাকেন এবং আপনি যদি নিশ্চিত হন যে আপনি কারও ফায়ারওয়াল বা আইডিএসকে বিরক্ত করবেন না, আপনি -T5"যত তাড়াতাড়ি সম্ভব স্ক্যান" যুক্ত করতে পারেন । ফলাফলগুলি এরকম কিছু দেখবে:

PORT     STATE SERVICE VERSION
1422/tcp open  ssh      (protocol 2.0)

1
$ sudo netstat -lntp
[sudo] password for XXX:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address    Foreign Address  State        PID/Program name
tcp   0      0      0.0.0.0:22       0.0.0.0:*        LISTEN       2799/sshd
tcp6  0      0      :::22            :::*             LISTEN       2799/sshd
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.