วิธีเปิดใช้งาน SSH บน Mac จาก Command Line

สารบัญ:

Anonim

Mac รุ่นใหม่ทั้งหมดที่ใช้ macOS หรือ Mac OS X มาพร้อมกับ SSH ที่ติดตั้งไว้ล่วงหน้าตามค่าเริ่มต้น แต่ daemon SSH (Secure Shell) จะถูกปิดใช้งานตามค่าเริ่มต้นเช่นกัน ผู้ใช้ Mac ขั้นสูงอาจชื่นชมที่ทราบว่าความสามารถในการเปิดใช้ SSH และปิดใช้งาน SSH นั้นมีทั้งแบบพร้อมใช้งานจากบรรทัดคำสั่งของ Mac OS ทำให้มีวิธีง่ายๆ ในการอนุญาตหรือไม่อนุญาตให้มีการเชื่อมต่อระยะไกลเข้ากับคอมพิวเตอร์ไม่จำเป็นต้องโหลด ดาวน์โหลด หรือคอมไพล์ kext ในการเปิดใช้ SSH จาก Terminal บน Mac ใดๆ คุณเพียงดำเนินการคำสั่งตั้งค่าระบบ ดังที่เราจะแสดงในบทช่วยสอนนี้

บันทึกย่อ; คู่มือนี้ใช้กับ macOS และ Mac OS X ทุกรุ่น แต่มุ่งเป้าไปที่ผู้ใช้ขั้นสูงที่ใช้เวลาส่วนใหญ่ใน Terminal หากคุณต้องการปิดและเปิด SSH และหลีกเลี่ยงบรรทัดคำสั่ง คุณสามารถทำได้โดยเปิดใช้งานการเข้าสู่ระบบระยะไกลในแผงการกำหนดลักษณะการแชร์บน Mac หรือหยุดเซิร์ฟเวอร์โดยไม่ทำเครื่องหมาย หากคุณไม่ได้ใช้ ssh เป็นประจำ ก็ไม่มีเหตุผลที่จะเปิดใช้งานเซิร์ฟเวอร์ ssh บนเครื่อง Mac

วิธีตรวจสอบว่าเปิดใช้งานการเข้าสู่ระบบระยะไกล SSH ใน Mac OS ผ่าน Terminal

ต้องการตรวจสอบสถานะปัจจุบันของ SSH บน Mac หรือไม่ การใช้สตริงคำสั่ง systemsetup เราสามารถระบุได้อย่างรวดเร็วว่า SSH และ Remote Login เปิดใช้งานอยู่บน Mac ใด ๆ หรือไม่:

sudo systemsetup -getremotelogin

หากเปิดใช้งานการเข้าสู่ระบบระยะไกลและ SSH อยู่ คำสั่งและรายงานจะระบุว่า “การเข้าสู่ระบบระยะไกล: เปิด” ในขณะที่หากปิดใช้งาน SSH และในสถานะ macOS เริ่มต้น คำสั่งจะระบุว่า “การเข้าสู่ระบบระยะไกล: ปิด” .

เปิดใช้งาน SSH บน Mac จาก Command Line ด้วยการตั้งค่าระบบ

หากต้องการเปิดเซิร์ฟเวอร์ SSH อย่างรวดเร็วและอนุญาตการเชื่อมต่อ ssh ขาเข้ากับ Mac ปัจจุบัน ให้ใช้แฟล็ก -setremotelogin กับการตั้งค่าระบบ ดังนี้:

sudo systemsetup -setremotelogin on

sudo จำเป็นเนื่องจากคำสั่ง systemsetup ต้องการสิทธิ์ของผู้ดูแลระบบ เช่นเดียวกับเมื่อคุณเปิดใช้งานการเข้าสู่ระบบระยะไกลจากการตั้งค่าการแชร์บน Mac เพื่อเปิดใช้งานเซิร์ฟเวอร์เชลล์ที่ปลอดภัย

ไม่มีการยืนยันหรือข้อความว่ามีการเปิดใช้งานการเข้าสู่ระบบระยะไกลและ SSH แต่คุณสามารถใช้แฟล็ก -getmorelogin ดังกล่าวเพื่อตรวจสอบและยืนยันว่าเซิร์ฟเวอร์ SSH กำลังทำงานอยู่และใช่ การใช้ -setremotelogin มีผลกับการเปิดใช้งานทั้งเซิร์ฟเวอร์ ssh และ sftp บน Mac

เมื่อเปิดใช้งาน ssh แล้ว บัญชีผู้ใช้หรือบุคคลที่เข้าสู่ระบบใน Mac เครื่องปัจจุบันจะสามารถเข้าถึงได้จากระยะไกลโดยใช้คำสั่ง ssh ซึ่งมุ่งเป้าไปที่ที่อยู่ IP ของ Mac ดังนี้:

ssh [email protected]

เมื่อเชื่อมต่อแล้ว ผู้ใช้จะสามารถเข้าถึงคอมพิวเตอร์จากระยะไกลผ่านบรรทัดคำสั่ง และถ้าพวกเขามีบัญชีผู้ดูแลระบบหรือรหัสผ่านของผู้ดูแลระบบ พวกเขาจะมีสิทธิ์เข้าถึงการดูแลระบบระยะไกลเต็มรูปแบบเช่นกัน

ปิด SSH บน Mac OS ด้วยการตั้งค่าระบบ

หากคุณต้องการปิดใช้งานเซิร์ฟเวอร์ SSH จากบรรทัดคำสั่ง และด้วยเหตุนี้จึงป้องกันการเชื่อมต่อระยะไกล เพียงเปลี่ยน 'เปิด' เป็น 'ปิด' ด้วยแฟล็ก -setremotelogin ของการตั้งค่าระบบ ดังนี้:

sudo systemsetup -setremotelogin off

อีกครั้ง sudo จำเป็นต้องปิด SSH และปิดใช้งานเซิร์ฟเวอร์ ssh และ sftp

เมื่อคุณดำเนินการคำสั่งสำเร็จ ระบบจะถามคุณว่า: “คุณต้องการปิดการเข้าสู่ระบบระยะไกลหรือไม่? หากคุณทำเช่นนั้น คุณจะสูญเสียการเชื่อมต่อนี้และสามารถเปิดใช้งานอีกครั้งในเครื่องที่เซิร์ฟเวอร์เท่านั้น (ใช่/ไม่ใช่)” พิมพ์ "ใช่" เพื่อยืนยัน ซึ่งจะปิดใช้งาน SSH และตัดการเชื่อมต่อ SSH ใดๆ ที่ใช้งานอยู่กับ Mac ที่เป็นปัญหา ถ้าคุณต้องการหลีกเลี่ยงการพิมพ์ ใช่/ไม่ใช่ บางทีเพื่อรวมไว้ในสคริปต์การตั้งค่าหรืออย่างอื่น คุณสามารถใช้แฟล็ก -f เพื่อหลีกเลี่ยงคำถามดังนี้:

sudo systemsetup -f -setremotelogin off

ในทำนองเดียวกัน คุณสามารถใช้ -f เพื่อข้ามข้อความแจ้งเกี่ยวกับการเปิดใช้งาน SSH ได้เช่นกัน

การตั้งค่าระบบ -f -setremotelogin บน

โปรดทราบว่า ไม่ว่าคุณจะปิด SSH หรือเปิดใช้งาน SSH จากบรรทัดคำสั่ง การตั้งค่าแผงการกำหนดลักษณะระบบการเข้าสู่ระบบระยะไกลใน Mac OS X GUI จะถูกปรับให้สอดคล้องกับการเปลี่ยนแปลงด้วยเช่นกัน

วิธีเปิดใช้งาน SSH บน Mac จาก Command Line