Могу ли я повторно использовать сертификат при настройке OpenVPN через stunnel?

Итак, я разобрался и переписал скрипт с нуля.

#!/bin/bash
DIR="/../../../*" #directory where the movie files are located
OUT_DIR="/../../../../" #directory where the processed movie files will be exported
OUTPUT_FILE=""

file_duration_flat=0
file_duration_int=0
working_file_duration=0
default_chunk_size=600 #video length in seconds (10 minutes)
chunk_size=600 #video length in seconds (10 minutes)
video_pieces=0
video_pieces_hum_re=0
video_pieces_hum_re_cnt=0
counter=0
chunk_start_time=0
chunk_end_time=0
tt=10
end=10
iteration=0

#extract simple metadata from files
for f in $DIR
do
    echo $f
    file_duration_float=$(ffprobe -i "$f" -show_format -v quiet | sed -n 's/duration=//p')
    file_duration_int=$( echo "($file_duration_float+0.5)/1" | bc )
    working_file_duration_int=$file_duration_int
    working_file_duration=$(expr $file_duration_int - $chunk_size )
    echo $file_duration_int

    #---------------------------------------------
    # get the count of pieces to cut the file into
    #---------------------------------------------
    # echo $working_file_duration_int
    while [ "$working_file_duration_int" -ge "$chunk_size" ]
    do
        working_file_duration_int=$(($working_file_duration_int - chunk_size))
        video_pieces=$((video_pieces + 1 ))
        video_pieces_hum_re=$((video_pieces + 1 ))
        video_pieces_hum_re_cnt=$video_pieces_hum_re

        # echo "cut video into $video_pieces pieces"
        # echo "cut video into human readable $video_pieces_hum_re pieces"
        # echo "cut video human readable c $video_pieces_hum_re_cnt pieces"
    done
    #---------------------------------------------

    #---------------------------------------------
    # determine the start and end time of each clip
    #---------------------------------------------
    while [ $working_file_duration_int -gt -1 ]
    do
        filename=$(basename "$f")
        input_file="$filename"
        filename=${filename::-4}" "
        file_extension=${f: -3}
        input_file_dir=$(dirname "$f")"/"


        if [ $iteration -eq 0 ]
        then
            working_file_duration_int=$((file_duration_int - chunk_size))
            chunk_start_time=0
            chunk_end_time=$(($default_chunk_size))

            echo "iteration $iteration start: $chunk_start_time end: $chunk_end_time duration: $default_chunk_size video length left $working_file_duration_int"

            OUTPUT_FILE="$OUT_DIR$filename$iteration.mkv"
            $(ffmpeg -hide_banner -loglevel panic -i "$f" -ss $chunk_start_time -t $chunk_end_time [youre desired encoding] "$OUTPUT_FILE")
            iteration=$((iteration+1))
        fi
        if [ $working_file_duration_int -le $chunk_size ]
        then
            # echo "break early because time is $working_file_duration_int"
            chunk_size=$working_file_duration_int
            working_file_duration_int=$((working_file_duration_int - chunk_size))
            chunk_start_time=$(($chunk_start_time+$chunk_end_time))
            chunk_end_time=$(($chunk_size))

            # echo "early chunk size: $chunk_size iteration $iteration video length left $working_file_duration_int start: $chunk_start_time end: $chunk_end_time"
            echo "early chunk size: $chunk_size iteration $iteration start: $chunk_start_time end: $((chunk_start_time+chunk_end_time)) duration: $chunk_end_time video length left $working_file_duration_int "

            OUTPUT_FILE="$OUT_DIR$filename$iteration.mkv"
            $(ffmpeg -hide_banner -loglevel panic -i "$f" -ss $chunk_start_time -t $chunk_end_time [youre desired encoding] "$OUTPUT_FILE")
            iteration=0
            chunk_size=$default_chunk_size
            break
        else
            chunk_start_time=$(($chunk_start_time+$chunk_end_time))
            chunk_end_time=$(($chunk_size))
            working_file_duration_int=$((working_file_duration_int - chunk_size))
            echo "iteration $iteration start: $chunk_start_time end: $((chunk_start_time+chunk_end_time)) duration: $chunk_end_time video length left $working_file_duration_int "

            OUTPUT_FILE="$OUT_DIR$filename$iteration.mkv"
            $(ffmpeg -hide_banner -loglevel panic -i "$f" -ss $chunk_start_time -t $chunk_end_time [youre desired encoding] "$OUTPUT_FILE")
            iteration=$((iteration+1))
        fi
    done
done

Это достигло того, что мне было нужно.

0
11.05.2015, 06:11
1 ответ

Да, можно. И нет, не следует (если не работаете в непубличной сети, что кажется очень маловероятным из-за того, что OpenVPN является методом открытого доступа к частной подсети).

Причины, по которым соответствует процессу проверки сертификата протоколов TLS и надежность соединений, когда

  1. Он самоподписан и не подписан авторитетным центром сертификации, это может и приведет к вектору атаки MITM, потому что нет проверка может или будет происходить во время начального процесса установления связи.
  2. Теперь закрытый ключ, который использовался ранее, используется повторно, что отрицает (если он был перемещен с одного устройства на другое) защиту безопасности "закрытого ключа". Исключение составляют случаи, когда для перемещения файла используются такие протоколы, как SCP.
0
29.04.2021, 00:28

Теги

Похожие вопросы