Seppl เป็นทั้งความหมายโปรโตคอลและการใช้งานซอฟต์แวร์ของชั้นการเข้ารหัสใหม่สำหรับ IPv4 โครงการ Seppl ทำให้การใช้การเข้ารหัสแบบสมมาตรสำหรับการเข้ารหัสการจราจรทั้งในเครือข่าย การดำเนินงานที่ได้รับการออกแบบ Linux netfilter / iptables
Seppl แนะนำสองเป้าหมาย netfilter ใหม่: ห้องใต้ดินและถอดรหัส กฎของไฟร์วอลล์จึงอาจจะใช้สำหรับการเข้ารหัส / ถอดรหัสเครือข่ายการจราจรขาเข้าและขาออก นี้จะทำให้ Seppl พิเศษใช้งานง่ายเนื่องจากภูตไม่จำเป็นต้องใช้สำหรับการสื่อสารที่ปลอดภัย
Seppl ใช้เครื่องมือการเข้ารหัสของการเข้ารหัสลับ API ลินุกซ์ที่มีอยู่ในเคอร์เนล 2.4.22 และใหม่กว่า
Seppl มีวัตถุประสงค์หลักสำหรับการเข้ารหัส LAN ไร้สาย (แทนความปลอดภัยของการเข้ารหัส WEP หัก) และเครือข่ายอีเธอร์เน็ตในท้องถิ่น แต่อาจจะใช้สำหรับการแก้ปัญหา VPN ขนาดใหญ่ได้เป็นอย่างดี
Seppl โปรโตคอลอาศัยกันไม่ได้กับซอฟต์แวร์อื่น ๆ โปรโตคอลเปิดและมีการกำหนด แต่ไม่มีการดำเนินการอื่น ๆ กว่าซอฟต์แวร์เอกสารอ้างอิงนี้
ทำไม Seppl มีอยู่แล้ว IPSEC, CIPE ... ?
CIPE อาจจะใช้สำหรับการเชื่อมต่อแบบจุดต่อจุดเท่านั้น มันมีโครงสร้างอุโมงค์จึงแนะนำที่อยู่ IP ใหม่ นี้ไม่ได้เป็นที่น่าพอใจเสมอ มันต้องมีภูตพื้นที่ของผู้ใช้
IPSEC / FreeSwan มีความซับซ้อนมากที่จะใช้ เนื่องจากโครงการเส้นทางที่แปลกของมันเกือบจะเป็นไปไม่ได้ที่จะใช้ร่วมกันกับภูตเส้นทาง IPSEC เป็นเฮฟวี่เวท
Seppl แท้จริงแบบ peer-to-peer มันจะเข้ารหัสได้อย่างลงตัวทุกการจราจรขาออกและมันจึงเข้ากันได้กับภูตเส้นทาง มันเป็นเรื่องง่ายมากที่จะใช้เช่นกันก็จะทำให้การเปลี่ยนแปลงพฤติกรรมการกำหนดเส้นทางปกติไม่มี Seppl มีน้ำหนักเบามาก
การดำเนินงาน
การดำเนินงานประกอบด้วยสามโมดูลเคอร์เนลลินุกซ์: seppl.o, ipt_CRYPT.o และ ipt_DECRYPT.o อดีตคือในเคอร์เนลผู้จัดการสำคัญหลังมีสองเป้าหมาย netfilter ใหม่ ขึ้นอยู่กับทั้งสอง seppl.o
seppl.o จะต้องใส่เข้าไปในเคอร์เนลในสถานที่แรก ผู้จัดการที่สำคัญอาจเข้าถึงได้กับแฟ้ม / proc / net / seppl_keyring มันมีข้อมูลที่สำคัญไบนารีและเป็นครั้งแรกที่ว่างเปล่า คุณอาจเพิ่มคีย์ใหม่โดยการเขียนไปยังแฟ้มที่
สองสคริปต์หลาม Seppl-LS และ Seppl-GEN-ที่สำคัญผมนำมาใช้สำหรับการจัดการที่สำคัญ Seppl-LS อาจจะใช้สำหรับการแปลงคีย์ Seppl ระหว่างรูปแบบไบนารีที่ใช้โดย / proc / net / seppl_keyring และรูปแบบ XML การอ่านของมนุษย์ตาม เพียงโทร Seppl-LS สำหรับรายชื่อของทุกปุ่มที่ใช้งานอยู่ในปัจจุบัน Seppl-GEN-สำคัญสร้างคีย์ใหม่จาก / dev / urandom โดยค่าเริ่มต้นจะใช้รูปแบบ XML กองกำลัง -x พารามิเตอร์โหมดไบนารี คุณอาจจะสร้างและเปิดใช้งานสองปุ่ม "ไลนัส" และ "อลัน" โดยการออกบรรทัดคำสั่งต่อไปนี้:
Seppl-GEN-สำคัญ -n Linus -x> / proc / net / seppl_keyring
Seppl-GEN-สำคัญ -n alan -x> / proc / net / seppl_keyring
Seppl-LS โดยไม่มีการโต้แย้งแสดงปุ่มใหม่บันทึกไว้ในพวงกุญแจเคอร์เนล คุณอาจจะลบทั้งหมด (ที่ไม่ได้ใช้ในปัจจุบัน) โดยการออกคีย์:
สะท้อนชัดเจน> / proc / net / seppl_keyring
ตั้งแต่ Seppl จะขึ้นอยู่กับการเข้ารหัสแบบสมมาตรโดยใช้ปุ่มที่ใช้ร่วมกันคุณต้องคัดลอกคีย์ที่สร้างขึ้นใหม่เพื่อโฮสต์คุณต้องการที่จะเชื่อมต่อกับโครงสร้างพื้นฐาน Seppl ของคุณทุกคน (โดยเฉพาะผ่านทาง SSH หรือโอนไฟล์ที่ปลอดภัยอื่น ๆ ) คุณจะได้รับสำเนาไบนารีของพวงกุญแจของคุณในปัจจุบันโดยการออก:
cat / proc / net / seppl_keyring> keyring.save
ขณะนี้คัดลอกที่ keyring.save ไฟล์ไปยังครอบครัวอื่น ๆ ทั้งหมดและออกคำสั่งต่อไปนี้มี:
keyring.save แมว> / proc / net / seppl_keyring
นั่นเป็นเรื่องง่ายไม่ได้หรือไม่
หลังจากการทำเช่นนั้นคุณอาจตั้งค่าไฟร์วอลล์ของคุณในแต่ละพื้นที่:
iptables -t ฉีก -A POSTROUTING -o eth0 -j Crypt --key Linus
iptables -t ฉีก -A PREROUTING -i eth0 -j ถอดรหัส
นี้จะเข้ารหัสการจราจรขาออกทั้งหมดใน eth0 มีคีย์ "ไลนัส" การจราจรขาเข้าทั้งหมดจะถูกถอดรหัสกับทั้ง "ไลนัส" หรือ "อลัน" ขึ้นอยู่กับชื่อคีย์ที่ระบุไว้ในแพ็คเก็ตเครือข่ายเฉพาะ แพ็คเก็ตที่เข้ามาไม่ได้เข้ารหัสจะลดลงอย่างเงียบ ๆ ใช้
iptables -t ฉีก -A PREROUTING -p 177 -i eth0 -j ถอดรหัส
เพื่อให้การจราจรทั้งขาเข้าและ crypted เข้ารหัส
แค่นั้นแหละ คุณกำลังทำ เข้าชมของคุณบนเครือข่ายย่อยในท้องถิ่นอยู่ในขณะนี้ crypted กับ Seppl
ตัวเลขเริ่มต้นคือ AES-128 หากคุณไม่ได้ระบุชื่อของค่าเริ่มต้นมันสำคัญที่ใช้ในการ "กำหนด"
สคริปต์ init SysV /etc/init.d/seppl มีให้ มันจะโหลด Seppl ของโมดูลเคอร์เนลและเขียนคีย์ทั้งหมดจากไดเรกทอรี / etc / Seppl เพื่อพวงกุญแจเคอร์เนล มันจะไม่เพิ่มกฎไฟร์วอลล์ใด ๆ แต่
ปัญหาประสิทธิภาพการทำงาน
แพ็คเก็ตเครือข่ายที่เพิ่มขึ้นในขนาดที่เมื่อพวกเขาถูก crypted ตั้งแต่สองหัวใหม่และ IV ที่มีการเพิ่ม (36 ไบต์ในเฉลี่ย) ความขัดแย้งนี้เกี่ยวกับวิธีการจัดการกับ MTU ของลินุกซ์บางและผลในการมีแพ็คเก็ตขนาดใหญ่ (นั่นคือ: ขนาดแพคเกจที่อยู่ใกล้ MTU) แยกส่วนในหนึ่งที่มีขนาดใหญ่และอีกแพคเกจขนาดเล็กมาก นี้จะทำร้ายประสิทธิภาพของเครือข่าย ทำงานรอบของข้อ จำกัด นี้จะใช้เป้าหมายของ TCPMSS netfilter เพื่อปรับค่า MSS ในส่วนหัวของ TCP เป็นค่าที่มีขนาดเล็ก ซึ่งจะช่วยเพิ่ม perfomance TCP เนื่องจากแพ็กเก็ต TCP ของขนาดของ MTU จะไม่สร้างอีกต่อไป ดังนั้นการกระจายตัวไม่จำเป็นต้องใช้ อย่างไรก็ตาม TCPMSS เป็น TCP เฉพาะมันจะไม่ช่วยในโปรโตคอล UDP หรือ IP อื่น ๆ
เพิ่มบรรทัดต่อไปนี้ก่อนการเข้ารหัสในการติดตั้งไฟร์วอลล์ของคุณ:
iptables -t ฉีก -A POSTROUTING -p TCP --tcp ธง SYN-, RST SYN -o eth0 -j TCPMSS --set-MSS $ ((1500-40-8-16-6-15))
พิธีสาร
สำหรับการเข้ารหัสทุกแพ็คเก็ตที่ไม่ได้เข้ารหัสเดียวและนำมาดัดแปลงเป็น crypted หนึ่ง ไม่ได้เป็นแพ็คเก็ตต่อไปเพียงครั้งเดียวที่เคยถูกส่ง
ต้นฉบับคู่ Seppl
------------ + + + -----------------------
| IP-หัว | | ดัดแปลง IP-หัว | |
------------ + + + ----------------------- |
| อัตรา | | Seppl-หัว |> เข้ารหัส
------------ + + + ----------------------- |
| เริ่มต้นเวกเตอร์ | |
----------------------- + + /
| Seppl-หัว |
+ + ----------------------- | crypted
| อัตรา | |
----------------------- + + /
ส่วนหัวของ IP เดิมจะถูกเก็บไว้เท่าที่จะทำได้ เพียงสามสาขาจะถูกแทนที่ด้วยค่าใหม่ จำนวนโปรโตคอลถูกตั้งไว้ที่ 177 ชิ้นชดเชยตั้งค่าเป็น 0 และความยาวทั้งหมดได้รับการแก้ไขใหม่ให้มีความยาว สาขาอื่น ๆ ทั้งหมดจะถูกเก็บไว้ตามที่เป็นอยู่รวมทั้งตัวเลือก IP
ส่วนหัว Seppl เข้ารหัสประกอบด้วยจำนวนตัวเลขหนึ่งไบต์และชื่อคีย์ ขณะนี้มีเพียง 0 และ 1 จะถูกกำหนดเป็นตัวเลขตัวเลขสำหรับ AES ด้วยคีย์ 128bit, รับผิดชอบ AES ด้วยคีย์ 192bit ชื่อคีย์ (7 ไบต์) อาจจะใช้ในการเลือกสำคัญที่เฉพาะเจาะจงในพวงกุญแจที่มีขนาดใหญ่
IV จะใช้สำหรับการเข้ารหัส CBC ของตัวเลขที่ใช้ มันแตกต่างจากแพ็คเก็ตที่จะแพ็คเก็ต แต่ไม่ได้สร้างแบบสุ่ม เนื่องจากเหตุผล perfomance เพียง IV เริ่มต้นในการเริ่มต้นระบบสุ่มทั้งหมดเกลือต่อไปนี้จะถูกสร้างโดยการเพิ่มคนก่อนหน้านี้
ส่วนหัว Seppl crypted ประกอบด้วยสามสาขาที่บันทึกไว้ของส่วนหัว IP เดิม (หมายเลขโปรโตคอลส่วนชดเชยความยาวทั้งหมด) และไบต์ซึ่งมักจะเป็น 0 สำหรับการตรวจสอบคีย์ unmatching
อัตราเดิมคือ IP-playload จาก TCP / UDP / หัวอื่น ๆ ที่จะสิ้นสุด
ข้อ จำกัด :
· Seppl รบกวนกับการติดตามการเชื่อมต่อ netfilter ในทางใดทางหนึ่ง ดังนั้นคุณจะไม่สามารถที่จะใช้ NAT ร่วมกับ Seppl หากคุณใช้การติดตามการเชื่อมต่อในบางวิธีอื่น ๆ ร่วมกับ Seppl ระยะของคุณอาจแตกต่างกัน
· Seppl มีการทดสอบกับ Linux 2.6.1 ใช้รุ่น 0.3 สำหรับ Linux 2.4
ต้องการ:
· Seppl ได้รับการพัฒนาและทดสอบใน Debian GNU / Linux "ทดสอบ" จากพฤศจิกายน 2003 ก็ควรจะทำงานบนลินุกซ์อื่น ๆ มากที่สุดและรุ่นที่ใช้ระบบปฏิบัติการยูนิกซ์เพราะใช้ GNU Autoconf และ GNU libtool สำหรับการตั้งค่ารหัสแหล่งที่มาและการจัดการห้องสมุดที่ใช้ร่วมกัน
· Seppl ต้องใช้ลินุกซ์ 2.6. {0,1} (แหล่งที่มาของการกำหนดค่าติดตั้ง) และ iptables 1.2.8 หรือใหม่กว่า
·ชุดเครื่องมือที่สมบูรณ์ userspace ต้องหลาม 2.1 หรือใหม่กว่า ถอดชุดใน C สามารถใช้ได้เช่นกัน
การติดตั้ง:
ในฐานะที่เป็นแพคเกจนี้ทำด้วย autotools GNU คุณควรรันภายในไดเรกทอรีกระจายสำหรับการกำหนดค่าแหล่งต้นไม้ หลังจากนั้นคุณควรจะทำงานให้สำหรับการรวบรวมและให้ติดตั้ง (เป็น root) สำหรับการติดตั้ง Seppl
มีอะไรใหม่ในรุ่นนี้:
·พอร์ตลินุกซ์ 2.6 ไม่มีการเปลี่ยนแปลงอื่น ๆ เวอร์ชั่น 0.4 จะไม่เข้ากันได้กับ kernel 2.4 ใช้รุ่น 0.3 สำหรับ kernel 2.4 มันเป็นหน้าที่เทียบเท่า.
รายละเอียดซอฟแวร์:
รุ่น: 0.4
วันที่อัพโหลด: 3 Jun 15
การอนุญาต: ฟรี
ความนิยม: 40
ความคิดเห็นที่ไม่พบ