คำถามติดแท็ก openssl

OpenSSL เป็นการใช้งานโอเพ่นซอร์สของโปรโตคอล SSL และ TLS ไลบรารี่หลักที่เขียนด้วยภาษาการเขียนโปรแกรม C ใช้ฟังก์ชั่นการเข้ารหัสขั้นพื้นฐานและมีฟังก์ชั่นยูทิลิตี้ต่าง ๆ

3
เชื่อถือใบรับรอง PEM ที่ลงชื่อด้วยตนเอง
ฉันตั้งค่าพร็อกซีเซิร์ฟเวอร์ด้วย SSL โดยใช้ใบรับรอง PEM ขณะนี้มีเครื่องของฉันสองเครื่องที่ฉันต้องการเชื่อถือใบรับรองนี้โดยอัตโนมัติ (โดยไม่ต้องมีเว็บเบราว์เซอร์บ่น) ฉันจะติดตั้งใบรับรอง PEM ในแต่ละเครื่องได้อย่างไร นอกจากนี้สิ่งที่แนะนำเพิ่มเติม: การสร้างใบรับรองที่ลงนามด้วยตนเองหรือการเชื่อมใบรับรอง snakeoil?
23 debian  ssl  openssl 

6
Apache SSL: ใบรับรองเซิร์ฟเวอร์ไม่รวม ID ที่ตรงกับชื่อเซิร์ฟเวอร์
ฉันพยายามตั้งค่า SSL บนเว็บเซิร์ฟเวอร์ apache2 ของฉัน แต่ดูเหมือนว่ามันจะไม่ทำงานเลย ฉันได้ทำตามบทช่วยสอนเพื่อสร้างไฟล์ใบรับรองด้วย openssl และกำหนดค่า/etc/apache2/sites-available/default-ssl.confอย่างเหมาะสม ทุกครั้งที่ฉันพยายามเปิดเว็บไซต์ด้วย https เบราว์เซอร์ของฉันปฏิเสธที่จะเชื่อมต่อเนื่องจากปัญหาด้านความปลอดภัย มีข้อความระบุว่าฉันไม่ได้กำหนดค่าเว็บไซต์ของฉันอย่างถูกต้อง ใน/var/log/apache2/error.logฉันได้รับคำเตือนซึ่งบอกว่าใบรับรองเซิร์ฟเวอร์ของฉันไม่รวม ID ที่ตรงกับชื่อเซิร์ฟเวอร์ [Mon Apr 10 11:03:24.041813 2017] [mpm_prefork:notice] [pid 1222] AH00169: caught SIGTERM, shutting down [Mon Apr 10 11:03:30.566578 2017] [ssl:warn] [pid 661] AH01909: 127.0.0.1:443:0 server certificate does NOT include an ID which matches the server …

3
วิธีที่ปลอดภัยในการส่งรหัสผ่านสำหรับ> 1 โปรแกรมใน bash
ฉันเขียนสคริปต์และจำเป็นที่จะต้องขอให้ผู้ใช้รหัสผ่านของเขาและผ่านไปbash opensslในขณะที่opensslสามารถอ่านรหัสผ่านได้ฉันต้องการโปรแกรมสองรันและไม่ต้องการถามผู้ใช้สองครั้ง นี่คือสคริปต์: cp file{,.old} read -sp 'Enter password. ' PASS; echo export PASS # decode | edit | encode openssl enc -d -aes-256-cbc -k "$PASS" -in file.old | \ sed ... | openssl enc -e -aes-256-cbc -k "$PASS" -out file unset PASS รหัสผ่านนี้ไม่ปลอดภัยเนื่องจากสามารถดูรหัสผ่านได้อย่างง่ายดายโดยดูที่บรรทัดคำสั่ง บางคนสามารถอ่านโดยใช้psตัวอย่างเช่น opensslสามารถอ่านรหัสผ่านจากตัวแปรสภาพแวดล้อมดังนั้นฉันสามารถแทนที่-k "$PASS"ด้วย-pass env:PASSแต่ก็ยังไม่ปลอดภัย ตัวแปรสภาพแวดล้อมของกระบวนการใด ๆ …

2
ไม่น่าไว้วางใจ CA ระดับกลางใน Linux?
จากบล็อกนี้ Intermediate CAs เป็นใบรับรองที่ลงนามโดย root CA ที่สามารถลงนามใบรับรองโดยพลการสำหรับเว็บไซต์ใด ๆ มันมีประสิทธิภาพเทียบเท่ากับรูท CA แต่ไม่มีรายชื่อทั้งหมดที่ระบบของคุณไว้วางใจเพราะรูท CA สามารถสร้างใหม่ได้ตามต้องการและระบบของคุณจะไว้วางใจพวกเขาตั้งแต่แรกเห็น มีการบันทึกเป็นพันใน CT เดือนนี้มีสิ่งหนึ่งที่น่าสนใจเกิดขึ้นในเดือนกันยายน 2558: "Blue Coat Public Services Intermediate CA" ลงนามโดย Symantec (ไม่มีใบรับรองที่ลงนามโดย CA นี้ถึงบันทึก CT หรือ Censys แล้ว) ฉันคิดว่ามันน่าจะเป็นโอกาสที่ดีที่จะเขียนวิธีการเชื่อถือ CA ระดับกลางอย่างชัดเจนซึ่งจะเชื่อถือได้ใน OS X แต่จะไม่หยุด CA รากจากการมอบสื่อกลางใหม่ให้กับองค์กรเดียวกัน แต่ดีกว่าไม่มีอะไร เมื่อฉันพยายามขั้นตอนในบล็อกในอูบุนตูที่ฉันดาวน์โหลดใบรับรองนี้https://crt.sh/?id=19538258 เมื่อฉันเปิด. crt มันจะนำเข้าสู่ Gnome Keyring แต่ฉันไม่สามารถหาวิธี "ไม่น่าเชื่อถือ" ใบรับรองได้หลังจากนำเข้า

1
วิธีสร้างที่เก็บคีย์และ truststore โดยใช้ใบรับรองที่ลงนามเอง?
เรามีเซิร์ฟเวอร์ JAVA และไคลเอ็นต์สื่อสารผ่านเครือข่ายโดยใช้ SSL เซิร์ฟเวอร์และไคลเอนต์รับรองความถูกต้องซึ่งกันและกันโดยใช้ใบรับรอง ชนิดที่เก็บคีย์ที่ใช้โดยเซิร์ฟเวอร์และไคลเอ็นต์คือ JKS เซิร์ฟเวอร์และไคลเอ็นต์โหลดไฟล์ที่เก็บคีย์และ truststore ของพวกเขา ชื่อไฟล์ keystore และ truststore คือ: server.keystore, server.truststore, client.keystore และ client.truststore ฉันใช้ใบรับรองแบบลงนามด้วยตนเองเพื่อการทดสอบเท่านั้น คำถาม: ไตรมาสที่ 1 ฉันต้องการทราบว่าทำไมฉันต้องเพิ่มใบรับรองของเซิร์ฟเวอร์และลูกค้าของตัวเองลงในร้านค้าที่เชื่อถือได้ในขั้นตอนที่ 6 ไตรมาสที่ 2 ฉันสามารถลดจำนวนขั้นตอนเพื่อให้ได้สิ่งเดียวกันได้หรือไม่? ถ้าใช่แล้วได้อย่างไร ขั้นตอนในการสร้างคีย์ RSA ใบรับรองที่ลงนามเองที่เก็บคีย์และ truststore สำหรับเซิร์ฟเวอร์ สร้างคีย์ RSA ส่วนตัว openssl genrsa -out diagserverCA.key 2048 สร้างใบรับรอง x509 openssl req -x509 -new -nodes …
17 openssl  ssl 

3
สคริปต์เพื่อตรวจสอบว่าใบรับรอง SSL ถูกต้องหรือไม่
ฉันมีใบรับรอง SSL หลายใบและฉันต้องการรับการแจ้งเตือนเมื่อใบรับรองหมดอายุ ความคิดของฉันคือการสร้าง cronjob ซึ่งรันคำสั่งง่ายๆทุกวัน ฉันรู้ว่าopensslคำสั่งใน Linux สามารถใช้เพื่อแสดงข้อมูลใบรับรองของเซิร์ฟเวอร์ระยะไกลเช่น: openssl s_client -connect www.google.com:443 แต่ฉันไม่เห็นวันหมดอายุในผลลัพธ์นี้ นอกจากนี้ผมต้องบอกเลิกคำสั่งนี้ด้วย+CTRLc ฉันจะตรวจสอบการหมดอายุของใบรับรองระยะไกลจากสคริปต์ (ควรใช้openssl) และทำใน "โหมดแบทช์" เพื่อให้ทำงานโดยอัตโนมัติโดยไม่ต้องมีการโต้ตอบกับผู้ใช้?

3
รับไฟล์. cer จากไฟล์. pem
ฉันสร้างคีย์ส่วนตัว RSA โดยใช้คำสั่งด้านล่าง: openssl genrsa -out privkey.pem 2048 และสร้างใบรับรองที่เซ็นชื่อเองโดยใช้คำสั่งด้านล่าง: openssl req -new -x509 -key privkey.pem -out cacert.pem -days 3650 ตอนนี้ผมกำลังพยายามที่จะแปลง cacert .pemไฟล์ใบรับรอง.cer ความคิดใด ๆ

3
วิธีการแปลง ssl ciphers ให้เป็นฟอร์แมทฟอร์แมต?
เอกสาร SSL อย่างเป็นทางการรายการยันต์ในรูปแบบที่แตกต่างจากขดใช้เวลา ตัวอย่างเช่นถ้าผมต้องการที่ขดที่จะใช้ตัวเลข TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA curl --ciphers ecdhe_rsa_3des_shaผมต้องผ่านมัน ฉันรู้ว่าการแมปบางอย่างเป็นเช่นไร แต่ไม่ใช่ทั้งหมด - ตัวอย่างเช่นฉันต้องส่งต่อการขดเพื่อให้ใช้การเข้ารหัส TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 อย่างไร มีทุกที่ที่ฉันสามารถหาเอกสารที่แสดงว่าชื่อรหัสในแผนที่ ssl docs กับชื่อตัวเลขที่ขดยอมรับ? แก้ไข:ในที่สุดฉันก็ค้นพบว่า curl ของฉันได้รับการสนับสนุนโดย NSS ไม่ใช่ OpenSSL และปัญหานี้เกิดขึ้นเนื่องจากไม่มีเอกสารที่ดีเกี่ยวกับการใช้ curl ที่ NSS ได้รับการสนับสนุนในขณะที่มันต้องการอาร์กิวเมนต์ที่แตกต่างจาก OpenSSL เพื่อใช้ตัวเลขเดียวกัน ดังนั้นคำถามของฉันเฉพาะกับ NSS

3
หมายเลขมายากลที่ไม่ดีในการถอดรหัส
ในเดือนเมษายนฉันเข้ารหัสไฟล์โดยใช้คำสั่ง openssl enc -aes-256-cbc -salt -pass file:<passwordfile> < infile > outfil ตอนนี้ฉันต้องการถอดรหัสด้วย openssl enc -d -aes-256-cbc -salt -pass file:<passwordfile> -in outfil -out infile2 แต่ฉันได้รับหมายเลขเวทย์มนตร์ที่ไม่ดี ไฟล์ที่เข้ารหัสเมื่อวานนี้ด้วยพารามิเตอร์เดียวกันถอดรหัสตกลง อาจเกิดอะไรขึ้น และมีอยู่แล้วฉันสามารถดึงไฟล์ที่เก็บถาวรนี้ได้หรือไม่
12 openssl 

1
จะทำให้ Gnu / Linux เชื่อถือใบรับรองที่ Windows เชื่อถือได้หรือไม่
มีเซิร์ฟเวอร์ที่มีห่วงโซ่ SSL ใช้งานไม่ได้ดังที่รายงานโดยการตรวจสอบ SSL นี้ : ฉันรู้ว่านี่เป็นปัญหาที่ควรแก้ไขในเซิร์ฟเวอร์ แต่บางครั้งมันก็ยากที่จะแก้ไข (ฉันไม่ใช่ผู้ดูแลระบบของเซิร์ฟเวอร์) สิ่งนี้คือ Chrome / Mozilla / Edge บน Windows เชื่อถือใบรับรองเว็บไซต์ต่อไป : อย่างไรก็ตามในการปรับใช้ Gnu / Linux (Ubuntu 18.04 ใน Docker) ใบรับรองไม่น่าเชื่อถือ: curl: (60) SSL certificate problem: unable to get local issuer certificate ฉันลองupdate-ca-certificatesและแม้แต่นำเข้าใบรับรองหลักของ Globalsign update-ca-certificatesรายงานใบรับรองซ้ำในกรณีนั้น อย่างไรก็ตามไม่มีอะไรทำงาน วิธีการทำซ้ำ ใช้นักเทียบท่า: docker run -it ubuntu:18.04 # …

3
วิธี grep สำหรับ unicode ในสคริปต์ทุบตี
if grep -q "�" out.txt then echo "working" else cat out.txt fi โดยทั่วไปหากไฟล์ "out.txt" มี " " ที่ใดก็ได้ในไฟล์ฉันต้องการให้เสียงก้อง "ทำงาน" และถ้าไฟล์ "out.txt" นั้นไม่มี " " ที่ใดก็ตามในไฟล์ฉันก็อยาก มันเพื่อ cat out.txt แก้ไข: ดังนั้นนี่คือสิ่งที่ฉันทำ ฉันกำลังพยายามที่จะเปิดใช้งานการถอดรหัส openssl openssl enc ส่งคืนค่า 0 เมื่อสำเร็จไม่ใช่ค่าศูนย์ หมายเหตุ: คุณจะได้รับผลบวกปลอมเนื่องจาก AES / CBC สามารถกำหนดได้ว่า "การถอดรหัสทำงานได้" หรือไม่ขึ้นอยู่กับการรับสิทธิ์ ดังนั้นไฟล์ถอดรหัส แต่มันจะไม่เป็นรหัสผ่านที่ถูกต้องดังนั้นมันจะมีซึ่งพูดพล่อยๆในนั้น อักขระทั่วไปในการพูดพล่อยๆคือ " " …

1
ตรวจสอบ Cli ของอีเมลที่เซ็นชื่อแบบดิจิทัล
ฉันคืออลิซและฉันได้รับอีเมลที่ลงชื่อจาก Bob ผมใช้เว็บ E-Mail ลูกค้า (เช่น Gmail) และผมเห็นว่าหนึ่งใน attachements smime.p7sคือ ฉันได้พบตัวเลือก "แสดงข้อความเดิม" message.origและเนื้อหาบันทึกลงใน ถ้าบ็อบเซ็นชื่ออีเมลฉันจะยืนยันจากบรรทัดคำสั่งได้อย่างไร (สมมติว่าบ็อบใช้รหัสผ่านที่ได้รับการรับรองซึ่งลงนามโดยเจ้าหน้าที่ผู้มีอำนาจบางคน - ฉันไม่รู้ว่าเป็นใคร แต่ฉันคิดว่ามัน) (อลิซไม่ต้องการติดตั้งไคลเอนต์อีเมลด้วยคุณสมบัติที่เหมาะสมเพียงแค่ข้อความเดียว)

1
ทำไม openssl s_client ตรวจสอบใบรับรองกับ CAfile ที่ไม่ตรงกัน?
ฉันพยายามที่จะให้ข้อผิดพลาดการตรวจสอบใบรับรองด้วยopenssl s_clientเช่นนี้: $ openssl s_client -crlf -verify 9 \ -CAfile /etc/ssl/certs/TURKTRUST_Certificate_Services_Provider_Root_1.pem \ -starttls smtp -host mx-ha03.web.de -port 25 ใบรับรองของเซิร์ฟเวอร์ web.de ได้รับการรับรองโดย Deutsche Telekom CA ไม่ใช่ TURKTRUST ดังนั้นคำสั่งดังกล่าวควรล้มเหลวใช่ไหม แต่รายงาน: Verify return code: 0 (ok) ทำไม? ฉันหมายถึงคำสั่งอะนาล็อก gnutls-cli ล้มเหลวตามที่คาดไว้: $ { echo -e 'ehlo example.org\nstarttls' ; sleep 1 } | \ gnutls-cli …

2
เร็วเกินไปที่จะลองใช้ LibreSSL หรือไม่ [ปิด]
ปิด คำถามนี้จะต้องมีมากขึ้นมุ่งเน้น ไม่ยอมรับคำตอบในขณะนี้ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้มุ่งเน้นที่ปัญหาเดียวโดยแก้ไขโพสต์นี้ ปิดให้บริการใน5 ปีที่ผ่านมา ฉันได้ติดตามการพัฒนาและการเปิดตัวLibreSSL ล่าสุดและบังเอิญฉันมีเว็บเซิร์ฟเวอร์ FreeBSD ใหม่ที่ฉันได้กำหนดค่าสำหรับโครงการส่วนตัว / งานอดิเรกของฉันเมื่อเร็ว ๆ นี้ ฉันยังคงค่อนข้าง n00bish เกี่ยวกับดูแลระบบและสิ่ง Unix หนักแม้ว่า ฉันเห็นว่ามีsecurity/libresslพอร์ตแล้ว ถ้าฉันเป็นมนุษย์เพียงดูแลระบบติดตั้งฉันจะสามารถกำหนดค่า Nginx ให้ใช้งานได้โดยไม่ต้องเครียดมากกว่าการใช้ OpenSSL (เนื่องจากเคยตั้งค่าไว้สองสามครั้งในอดีต)? แล้วพอร์ตอื่น ๆ ที่คาดว่าจะมี OpenSSL ล่ะ? ตัวอย่างเช่นเมื่อฉันไปกำหนดค่าdatabases/mariadb55-serverฉันจะได้รับตัวเลือกให้ใช้ OpenSSL แต่ไม่ใช่ LibreSSL หากฉันติดตั้ง LibreSSL ไลบรารีของมันจะถูกมองเห็นและใช้เป็น OpenSSL หรือฉันต้องรอให้พอร์ต MariaDB ได้รับการปรับปรุงเพื่อรองรับ LibreSSL อย่างชัดเจนหรือไม่ ฉันเดาคำถามที่กว้างขึ้นว่า LibreSSL กับ OpenSSL สามารถใช้แทนกันได้อย่างไรจากมุมมองของผู้ดูแลระบบมือสมัครเล่น ณ …
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.