วิกิฮาวเป็น "wiki" ซึ่งหมายความว่าบทความหลายๆ บทความของเรานั้นเป็นการร่วมมือกันเขียนของผู้เขียนหลายคน ในการเขียนบทความชิ้นนี้ ผู้คน 19 คน ซึ่งบางคนไม่ขอเปิดเผยตัว ได้ร่วมกันเขียนและปรับปรุงเนื้อหาของบทความอย่างต่อเนื่อง
บทความนี้ถูกเข้าชม 7,973 ครั้ง
ถ้าคุณเชื่อมต่อกับคอมอีกเครื่องผ่านอินเทอร์เน็ต เรื่องความปลอดภัยของข้อมูลก็ถือเป็นเรื่องสำคัญ ซึ่ง SSH นี่แหละหนึ่งในตัวช่วยของคุณ แค่เริ่มจากติดตั้ง SSH ลงคอมให้ถูกต้อง แล้วเชื่อมต่อกับเซิร์ฟเวอร์แบบเข้ารหัส แต่จะเชื่อมต่ออย่างปลอดภัยได้ ทั้งต้นทางและปลายทางต้องเปิด SSH ทั้งคู่ บทความวิกิฮาวนี้จะแนะนำวิธีการเชื่อมต่ออย่างปลอดภัยผ่าน SSH ให้คุณเอง
ขั้นตอน
- ติดตั้ง SSH. ถ้าใช้ Windows ต้องดาวน์โหลดและติดตั้งโปรแกรม SSH ก่อน ที่ดังๆ ก็มี Cygwin ซึ่งใช้ฟรี ดาวน์โหลดได้จากเว็บของผู้พัฒนาเลย เวลาดาวน์โหลดและติดตั้งก็เหมือนโปรแกรมทั่วไป ส่วนอีกโปรแกรมฟรีแต่ดีก็คือ PuTTY[1]
- ตอนติดตั้ง Cygwin ต้องเลือกติดตั้ง OpenSSH ในหัวข้อ Net
- Linux กับ Mac OS X จะมาพร้อม SSH อยู่แล้ว เพราะ SSH เป็นระบบ UNIX ซึ่งทั้ง Linux และ OS X นั้นถือกำเนิดเกิดมาจาก UNIX
- ถ้าใช้ Windows 10 แบบ Anniversary Update ก็ให้ติดตั้ง Windows Subsystem ของ Linux ซึ่งจะมี SSH ติดมาด้วย
- เปิด SSH. เปิดโปรแกรม terminal ที่ Cygwin ติดตั้งไว้ หรือเปิด Bash ของ Ubuntu ใน Windows (Windows 10) ไม่ก็เปิด Terminal ใน OS X หรือ Linux โดย SSH จะใช้ interface ของ terminal เวลาติดต่อกับคอมเครื่องอื่นๆ ไม่มีหน้าตาเมนูทั่วไป เพราะงั้นต้องฝึกพิมพ์คำสั่งให้ชินซะก่อน
- ทดสอบการเชื่อมต่อ. ก่อนจะไปสร้าง secure key และย้ายไฟล์ ต้องทดสอบว่าปรับแต่ง SSH ในคอมถูกต้องแล้ว รวมถึงระบบที่จะเชื่อมต่อด้วย ให้คุณพิมพ์คำสั่งต่อไปนี้ โดยเปลี่ยน <username> เป็น username ของ remote computer (คอมระยะไกล) และเปลี่ยน <remote> เป็น address ของ remote computer หรือเซิร์ฟเวอร์
$ ssh <username>@<remote>
- หลังเชื่อมต่อจะมีถามรหัสผ่าน ตอนพิมพ์จะไม่เห็นเคอร์เซอร์ขยับและไม่เห็นตัวอักษรที่พิมพ์ไป
- ถ้าขั้นตอนนี้ไม่ได้ผล แสดงว่าตั้งค่า SSH ในคอมไม่ถูก หรือ remote computer ไม่รับการเชื่อมต่อผ่าน SSH
โฆษณา
- เข้า SSH shell. ตอนเชื่อมต่อคอมระยะไกลหรือ remote computer ครั้งแรก ให้อยู่ในโฟลเดอร์ HOME จากนั้นจะขยับขยายไปที่ไหนในโครงสร้างโฟลเดอร์ ก็ให้พิมพ์คำสั่ง
cd
[2]cd ..
จะขยับขึ้นไป 1 โฟลเดอร์cd <directoryname>
จะไปยังโฟลเดอร์ย่อยที่กำหนดcd /home/directory/path/
จะย้ายจาก root (home) ไปยังโฟลเดอร์ที่กำหนดcd ~
จะกลับไปที่โฟลเดอร์ HOME
- ดูเนื้อหาในโฟลเดอร์ปัจจุบัน. ถ้าอยากเห็นไฟล์และโฟลเดอร์ในตำแหน่งปัจจุบัน ให้ใช้คำสั่ง
ls
[3]ls
จะแสดงไฟล์และโฟลเดอร์ทั้งหมดในโฟลเดอร์ปัจจุบันls –l
จะแสดงเนื้อหาในโฟลเดอร์ รวมถึงข้อมูลเพิ่มเติม เช่น ขนาด การอนุญาตสิทธิ์ และวันที่ls-a
จะแสดงเนื้อหาทั้งหมด รวมถึงไฟล์และโฟลเดอร์ที่ถูกซ่อน
- copy ไฟล์จากตำแหน่งปัจจุบันไปที่คอมปลายทาง. ถ้าจะ copy ไฟล์จากคอมต้นทางไปยังคอมที่เข้าถึงจากระยะไกล ก็ให้ใช้คำสั่ง
scp
scp /localdirectory/example1.txt <username>@<remote>:<path>
จะ copy example1.txt ไปยัง <path> ที่กำหนดของคอมปลายทาง ถ้าปล่อย <path> ว่างไว้ ก็จะเป็นการ copy ไฟล์ไปยัง root folder ของคอมปลายทางแทนscp <username>@<remote>:/home/example1.txt ./
จะย้าย example1.txt จากโฟลเดอร์ home ของคอมปลายทาง มาที่ตำแหน่งปัจจุบันของคอมต้นทาง
- copy ไฟล์ผ่าน shell. คุณใช้คำสั่ง
cp
เพื่อสร้างสำเนาไฟล์ทั้งในโฟลเดอร์เดียวกัน และในโฟลเดอร์ที่เลือกได้cp example1.txt example2.txt
จะสร้างสำเนาไฟล์ example1.txt ชื่อ example2.txt ไว้ในตำแหน่งเดียวกันcp example1.txt <directory>/
จะ copy ไฟล์ example1.txt ไปที่ตำแหน่งที่กำหนดใน <directory>
- ย้ายและเปลี่ยนชื่อไฟล์. ถ้าอยากเปลี่ยนชื่อไฟล์ หรือย้ายไฟล์ไปเลย ไม่ copy ก็ให้ใช้คำสั่ง
mv
mv example1.txt example2.txt
จะเปลี่ยนชื่อ example1.txt เป็น example2.txt โดยที่ไฟล์ยังอยู่ในตำแหน่งเดิมmv directory1 directory2
จะเปลี่ยนชื่อ directory1 เป็น directory2 โดยที่เนื้อหาในโฟลเดอร์ไม่เปลี่ยนไปmv example1.txt directory1/
จะย้าย example1.txt ไปที่ directory1mv example1.txt directory1/example2.txt
จะย้าย example1.txt ไปที่ directory1 แล้วเปลี่ยนชื่อเป็น example2.txt
- ลบไฟล์และโฟลเดอร์. ถ้าจะลบอะไรจากคอมที่เชื่อมต่อไว้ ให้ใช้คำสั่ง
rm
rm example1.txt
จะลบไฟล์ example1.txtrm –I example1.txt
จะลบไฟล์ example1.txt หลังมีให้ยืนยันrm directory1/
จะลบโฟลเดอร์ directory1 และเนื้อหาข้างในทั้งหมด
- เปลี่ยนการอนุญาตสิทธิ์ของไฟล์. คุณเปลี่ยนสิทธิ์การอ่านและแก้ไขไฟล์ได้ โดยใช้คำสั่ง
chmod
chmod u+w example1.txt
จะเพิ่มสิทธิ์การเขียน (แก้ไข) ไฟล์ ให้ผู้ใช้ (u) นอกจากนี้ก็ใช้ modifierg
อนุญาตสิทธิ์แบบกลุ่ม หรือใช้o
อนุญาตสิทธิ์แบบ world permissions ด้วยchmod g+r example1.txt
จะเพิ่มสิทธิ์การอ่าน (เปิด) ไฟล์ให้กลุ่มผู้ใช้- จริงๆ แล้วมีรายชื่อสิทธิ์อีกเยอะที่คุณใช้รักษาความปลอดภัยหรือเปิดการใช้งานต่างๆ ของระบบได้[4]
- รู้จักคำสั่งพื้นฐานอื่นๆ. ยังมีอีก 2 - 3 คำสั่งสำคัญ ที่ต้องใช้บ้างใน shell interface ก็คือ
mkdir newdirectory
จะสร้างโฟลเดอร์ย่อยใหม่ชื่อ newdirectorypwd
จะแสดงตำแหน่งของโฟลเดอร์ปัจจุบันwho
จะแสดงผู้ใช้ที่ล็อกอินอยู่ในระบบpico newfile.txt
หรือvi newfile.txt
จะสร้างไฟล์ใหม่แล้วเปิด file editor แต่ละระบบก็จะมี file editor ที่ติดตั้งไว้แตกต่างกันไป แต่ที่พบบ่อยคือ pico กับ vi เพราะงั้นอาจจะต้องใช้คำสั่งอื่น ถ้าใช้ file editor อื่น
- ดูรายละเอียดคำสั่ง. ถ้าไม่แน่ใจว่าคำสั่งนั้นใช้ทำอะไร ให้ใช้คำสั่ง
man
เพื่อดูรายละเอียดการใช้งานและพารามิเตอร์ทั้งหมดman <command>
จะแสดงข้อมูลเกี่ยวกับคำสั่งนั้นman –k <keyword>
จะค้นหาคู่มือ (manual pages) ทั้งหมดของคีย์เวิร์ดที่กำหนด[5]
โฆษณา
- สร้างรหัส SSH. รหัสหรือคีย์พวกนี้ใช้เชื่อมต่อคอมระยะไกลโดยไม่ต้องใส่รหัสผ่านทุกครั้ง เป็นวิธีเชื่อมต่อระยะไกลที่ปลอดภัยกว่า เพราะไม่ต้องส่งรหัสผ่านทางเครือข่าย
- สร้างโฟลเดอร์รหัสในคอม โดยใช้คำสั่ง
$ mkdir .ssh
- สร้างรหัส public (สาธารณะ) และ private (ส่วนตัว) โดยใช้คำสั่ง
$ ssh-keygen –t rsa
- จะมีถามว่าจะสร้าง passphrase ของรหัสไหม (ไม่จำเป็น) ถ้าไม่ต้องการ ให้กด Enter จะได้มา 2 คีย์ในโฟลเดอร์ .ssh คือ id_rsa และ id_rsa.pub
- เปลี่ยนการอนุญาตสิทธิ์ของ private key ถ้าอยากแน่ใจว่า private key นั้นคุณใช้ได้คนเดียว ก็ให้ใช้คำสั่ง
$ chmod 600 .ssh/id_rsa
- สร้างโฟลเดอร์รหัสในคอม โดยใช้คำสั่ง
- ใส่ public key ในคอมปลายทาง. พอสร้าง key แล้ว ก็เอา public key ไปใส่ในคอมระยะไกลได้เลย คราวนี้ก็เชื่อมต่อกันแบบไม่ต้องใช้รหัสผ่าน ให้คุณพิมพ์คำสั่งต่อไปนี้ โดยปรับเปลี่ยนส่วนต่างๆ ตามที่อธิบายไปก่อนหน้า
$ scp .ssh/id_rsa.pub <username>@<remote>:
- อย่าลืมพิมพ์ colon (:) ท้ายคำสั่ง
- จะมีให้ใส่รหัสผ่านก่อนเริ่มถ่ายโอนไฟล์
- ติดตั้ง public key ในคอมปลายทาง. พอใส่ key ในคอมระยะไกลแล้ว ต้องติดตั้งก่อนถึงจะใช้งานได้ ขั้นแรกให้ล็อกอินเข้าคอมระยะไกลด้วยวิธีในขั้นตอนที่ 3
- สร้างโฟลเดอร์ SSH ในคอมระยะไกล ถ้ายังไม่มี โดยใช้คำสั่ง
$ mkdir .ssh
- เพิ่ม key เข้า authorized keys file (ไฟล์คีย์ที่อนุญาตการใช้งานแล้ว) ถ้ายังไม่มีไฟล์นี้ คำสั่ง
$ cat id_rsa.pub >> .ssh/authorized_keys
จะสร้างขึ้นมา - เปลี่ยนการอนุญาตสิทธิ์ของโฟลเดอร์ SSH เพื่อให้เข้าถึงและใช้งานได้ โดยใช้คำสั่ง
$ chmod 700 .ssh
- สร้างโฟลเดอร์ SSH ในคอมระยะไกล ถ้ายังไม่มี โดยใช้คำสั่ง
- เช็คว่าเชื่อมต่อเรียบร้อยดี. พอติดตั้ง key ในคอมปลายทางแล้ว ก็จะเริ่มเชื่อมต่อได้โดยไม่ต้องกรอกรหัสอีก ยังไงลองทดสอบการเชื่อมต่อด้วยคำสั่ง
$ ssh <username>@<remote>
- ถ้าเชื่อมต่อได้โดยไม่ถูกถามหารหัสผ่าน แสดงว่าปรับแต่ง key ไม่ถูกต้อง
โฆษณา
ข้อมูลอ้างอิง
เกี่ยวกับวิกิฮาวนี้
บทความนี้เป็นประโยชน์กับคุณไหม
⚠️ Disclaimer:
Content from Wiki How ไท language website. Text is available under the Creative Commons Attribution-Share Alike License; additional terms may apply.
Wiki How does not encourage the violation of any laws, and cannot be responsible for any violations of such laws, should you link to this domain, or use, reproduce, or republish the information contained herein.
- - A few of these subjects are frequently censored by educational, governmental, corporate, parental and other filtering schemes.
- - Some articles may contain names, images, artworks or descriptions of events that some cultures restrict access to
- - Please note: Wiki How does not give you opinion about the law, or advice about medical. If you need specific advice (for example, medical, legal, financial or risk management), please seek a professional who is licensed or knowledgeable in that area.
- - Readers should not judge the importance of topics based on their coverage on Wiki How, nor think a topic is important just because it is the subject of a Wiki article.