Điểm:0

Có triển khai được xuất bản của QubesOS "Chuyển đổi thành PDF đáng tin cậy" trên Ubuntu không?

lá cờ tn

Tiêu đề khá nhiều nói lên điều đó. Chuyển đổi sang PDF đáng tin cậy là một công cụ có giá trị và sẽ thật tuyệt nếu triển khai nó trong hệ sinh thái Ubuntu.

waltinator avatar
lá cờ it
Bạn có ý nghĩa gì với "PDF đáng tin cậy" và đầu vào là gì?
Lexible avatar
lá cờ tn
@waltinator Vui lòng xem liên kết trong bản chỉnh sửa của tôi.
lá cờ ar
Tôi nhìn vào liên kết. Bạn có thể muốn gửi yêu cầu tính năng tới Canonical, sử dụng trang web launchpad của họ. Ngoài ra, bạn có thể thử thiết lập một máy ảo chỉ đọc thực hiện những gì bạn muốn.
Lexible avatar
lá cờ tn
@ user68186 Bạn có thể nói thêm một chút không?
lá cờ ar
Tôi đã trả lời câu hỏi của bạn chưa nhỉ? Nếu vậy xin vui lòng chấp nhận câu trả lời. Cảm ơn!
Điểm:2
lá cờ ar

Vấn đề

Bạn có một tệp PDF không đáng tin cậy. Nó có thể chứa phần mềm độc hại và phần mềm độc hại có thể lây nhiễm vào máy tính của bạn và gây ra những điều tồi tệ cho nó.

Bạn muốn chuyển đổi tệp PDF này thành tệp PDF "đáng tin cậy" không có bất kỳ phần mềm độc hại nào mà không gây nguy hiểm cho máy tính Ubuntu của bạn.

phương pháp

Ý tưởng là cài đặt nhiều lần trong máy tính Ubuntu của bạn và sử dụng Máy ảo (VM) chính mặc định để "làm phẳng" tệp PDF không đáng tin cậy. Quá trình làm phẳng PDF liên quan đến việc chuyển đổi tệp PDF thành tệp phần mô tả (PS) và sau đó chuyển đổi tệp PS trở lại thành PDF. PDF thu được là "đáng tin cậy" vì bất kỳ phần mềm độc hại nào trong tệp PDF gốc dự kiến ​​sẽ không tồn tại trong quá trình chuyển đổi kép.

Cuối cùng, khi quá trình chuyển đổi hoàn tất, VM sẽ bị hủy. Vì vậy, bất kỳ thay đổi nào có thể được thực hiện đối với VM bởi phần mềm độc hại trong tệp PDF gốc đều bị hủy cùng với nó.

Bằng chứng về khái niệm

Giải pháp này dựa trên dòng lệnh, nơi chúng tôi sẽ nhập (hoặc dán) các lệnh trong thiết bị đầu cuối.

Trước tiên, chúng ta hãy cài đặt Multipass trong máy tính của bạn bằng lệnh sau:

sudo snap cài đặt multipass

Bạn phải làm điều đó chỉ một lần.

Phần còn lại của công việc được thực hiện bởi một tập lệnh bash. Tôi gọi nó là flatten.sh. Lưu tập lệnh bên dưới trong thư mục nhà của bạn dưới dạng làm phẳng.sh và làm cho nó có thể thực thi được.

#!/bin/bash

nếu [ -z $1 ]; sau đó
    echo "Không có đối số nào được đặt. Đối số hợp lệ là tên tệp PDF.pdf trong thư mục $HOME"
    đọc -ep "Nhập tên tệp: " FULLNAME
khác
    FULLNAME=$1
fi
nếu [ ! -f $FULLNAME ]; sau đó
    echo "Không tìm thấy tập tin $FULLNAME." 
    echo "Đối số hợp lệ là tệp PDF filename.pdf trong thư mục $HOME"
    tiếng vang "thoát..."
    thoát 1
fi

INPNAME=$(tên cơ sở $FULLNAME)
DIR=$(tên thư mục $FULLNAME)
OUTNAME="Trusted-$INPNAME"
khởi động nhiều lần
multipass exec chính -- Sudo apt update
multipass exec chính -- Sudo apt install ghostscript -y
nhân exec chính -- cp "Home/$INPNAME" .
multipass exec chính -- tạm thời pdf2ps "$INPNAME"  
multipass exec chính -- tạm thời ps2pdf "$OUTNAME"
multipass exec chính -- mv "$OUTNAME" Trang chủ/
multipass dừng chính  
đa xóa chính
thanh lọc nhiều lần

Giả sử bạn có một tệp có tên thử nghiệm.pdf mà bạn không tin tưởng. Sử dụng lệnh sau để chạy tập lệnh:

./flatten.sh test.pdf

Các thử nghiệm.pdf phải nằm trong thư mục $HOME của bạn. Nếu bạn có tệp PDF của mình trong một thư mục khác, tập lệnh (như được viết) sẽ không tìm thấy tệp đó.

Đây là danh sách những điều sẽ xảy ra khi bạn bắt đầu tập lệnh này:

  1. Một VM sẽ được tạo
  2. Một phiên bản tối thiểu của Ubuntu sẽ được cài đặt trong VM
  3. Kịch bản sẽ cài đặt bản thảo ma, cần thiết cho việc chuyển đổi
  4. Tệp PDF không đáng tin cậy sẽ được sao chép vào bộ lưu trữ ảo của VM.
  5. PDF không đúng sự thật sẽ được chuyển đổi thành tệp PS tạm thời và
  6. Tệp PS tạm thời sẽ được chuyển đổi thành PDF "đáng tin cậy" với tiền tố "Truted-".
  7. PDF đáng tin cậy sẽ được chuyển trở lại thư mục chính của bạn.
  8. Máy ảo sẽ bị dừng, bị xóa và bị xóa.

Toàn bộ quá trình này sẽ mất một chút thời gian, đặc biệt là khởi tạo VM và cài đặt bản thảo ma.

Lưu ý: nếu tệp PDF không đáng tin cậy quá lớn, Multipass VM có thể hết bộ nhớ ảo được phân bổ theo mặc định. Xem tài liệu Multipass về cách phân bổ thêm bộ nhớ cho VM.

Nhược điểm

Theo như tôi có thể nói, không có cách nào để chụp ảnh nhanh máy ảo chính trong Multipass sau khi cài đặt Ghostscript và quay máy ảo được lưu trữ đó cho lần tiếp theo bạn cần vệ sinh tệp PDF. Nếu điều này là có thể, nó sẽ làm cho quá trình này mất ít thời gian hơn.

Cách khác

Một cách khác để đạt được kết quả tương tự có thể là sử dụng thùng chứa LDX/LXC. LXD hỗ trợ ảnh chụp nhanh và vùng chứa tùy chỉnh chỉ với Ghostscript có thể nhẹ hơn một chút so với máy ảo đầy đủ. Tuy nhiên, tôi không có bất kỳ kinh nghiệm nào với LXD/LXC.

Hi vọng điêu nay co ich

Lexible avatar
lá cờ tn
+1 Đây là một câu trả lời tuyệt vời! Tôi nghĩ rằng tôi có một chút ưu tiên đối với mô hình Chuyển đổi thành PDF đáng tin cậy (PDF được kết xuất bởi một công cụ trong VM bỏ qua các tập lệnh, tìm nạp URL, v.v. tạo hình ảnh raster, biên dịch pdf mới của hình ảnh raster, OCR, sau đó trả lại PDF 'đáng tin cậy' cho người dùng, nhưng sự khác biệt về lỗ hổng dường như gần bằng trong cả hai trường hợp. Cảm ơn bạn vì điều này!
lá cờ ar
@Lexible Cảm ơn! Blog mà bạn đã liên kết, có nội dung cụ thể là **Chuyển đổi thành PDF đáng tin cậy** không OCR văn bản. Xem "Có hai nhược điểm khó chịu mà các tệp PDF đáng tin cậy có:" trong blog.Trong mọi trường hợp, việc chuyển PDF đã được làm phẳng qua OCR có thể dẫn đến mất hình ảnh, số liệu, sơ đồ, cũng như định dạng, phông chữ, v.v. Nhược điểm của phương pháp của tôi là không có cách nào để lưu ảnh chụp nhanh của VM sau khi cài đặt ghostscript trong Multipass . LXD/LXC có thể giải quyết vấn đề đó nhưng thiết lập ban đầu của LXD/LXC cồng kềnh hơn. Dù bằng cách nào thì đó là dòng lệnh, không có viền màu lạ mắt trong GUI.
raj avatar
lá cờ cn
raj
"Quá trình làm phẳng PDF liên quan đến việc chuyển đổi tệp PDF thành tệp tái bút (PS) và sau đó chuyển đổi tệp PS trở lại thành PDF." Về cơ bản, điều này không tương đương với việc in tệp PDF sang tệp PDF khác bằng tùy chọn "in thành tệp"? Tất nhiên, người ta cần thực hiện in trong một VM riêng biệt ...
lá cờ ar
@raj Nó đang làm điều tương tự theo cách an toàn hơn một chút. Việc thiết lập một máy ảo có GUI để chạy Evince hoặc Ocular sẽ chiếm nhiều tài nguyên hơn (và thời gian nếu bạn muốn xóa máy ảo sau khi hoàn thành công việc và tạo lại nó vào lần sau). Vui lòng viết câu trả lời dựa trên GUI.
Lexible avatar
lá cờ tn
@ user68186 Rất tiếc! Vâng: bạn đã đúng về OCR... Tôi sẽ phải thêm nó vào nếu tôi muốn.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.