Архивы автора: admin

Быстрая настройка тестового https-сервера

Инструкция по бстрому созданию https-сервера. Просто как по быстрому всё поднять без оглядки на безопасность. Использовался Linux Mint 17.3 загруженнй с live-usb флэшки

1. Устанавливаем веб-сервер

mint@mint ~ $ sudo apt-get install nginx php5

2. Создаём самоподписанный сертификат по инструкции https://devcenter.heroku.com/articles/ssl-certificate-self

mint@mint ~ $ which openssl
/usr/bin/openssl
mint@mint ~ $ openssl genrsa -des3 -passout pass:x -out server.pass.key 2048
Generating RSA private key, 2048 bit long modulus
……….+++
…………………………………………………………………………….+++
e is 65537 (0x10001)
mint@mint ~ $ ls
Desktop    Downloads  Pictures  server.pass.key  Videos
Documents  Music      Public    Templates
mint@mint ~ $ openssl rsa -passin pass:x -in server.pass.key -out server.key
writing RSA key
mint@mint ~ $ ls
Desktop    Downloads  Pictures  server.key       Templates
Documents  Music      Public    server.pass.key  Videos
mint@mint ~ $ openssl req -new -key server.key  -out server.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter ‘.’, the field will be left blank.
——
Country Name (2 letter code) [AU]:Russia
string is too long, it needs to be less than  2 bytes long
Country Name (2 letter code) [AU]:RU
State or Province Name (full name) [Some-State]:66
Locality Name (eg, city) []:Ekaterinburg
Organization Name (eg, company) [Internet Widgits Pty Ltd]:PupkinCorp
Organizational Unit Name (eg, section) []:IT
Common Name (e.g. server FQDN or YOUR name) []:localhost
Email Address []:test@localhost

Please enter the following ‘extra’ attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
mint@mint ~ $ ls
Desktop    Downloads  Pictures  server.csr  server.pass.key  Videos
Documents  Music      Public    server.key  Templates
mint@mint ~ $ openssl x509 -req -sha256 -days 365 -in server.csr -signkey server.key -out server.crt
Signature ok
subject=/C=RU/ST=66/L=Ekaterinburg/O=PupkinCorp/OU=IT/CN=localhost/emailAddress=test@localhost
Getting Private key
mint@mint ~ $

3. Копируем сертификат и ключ в папку с конфигами nginx

mint@mint ~ $ sudo cp server.key /etc/nginx/
mint@mint ~ $ sudo cp server.crt /etc/nginx/
mint@mint ~ $ sudo bash
mint ~ # cd /etc/nginx/
mint nginx # ls
conf.d          mime.types           nginx.conf    server.key       win-utf
fastcgi_params  naxsi_core.rules     proxy_params  sites-available
koi-utf         naxsi.rules          scgi_params   sites-enabled
koi-win         naxsi-ui.conf.1.4.1  server.crt    uwsgi_params

4. Правим конфиг веб-сервера — снимаем комментарии с секции про HTTPS и вписываем имена файлов нашего сертификата и ключа (подглядывал в http://nginx.org/en/docs/http/configuring_https_servers.html)

mint nginx # nano sites-enabled/default

# HTTPS server
#
server {
listen 443 ssl;
server_name localhost;

root html;
index index.html index.htm;

ssl on;
ssl_certificate server.crt;
ssl_certificate_key server.key;

ssl_session_timeout 5m;

ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers «HIGH:!aNULL:!MD5 or HIGH:!aNULL:!MD5:!3DES»;
ssl_prefer_server_ciphers on;

location / {
try_files $uri $uri/ =404;
}
}

5. Сохраняемся и перезапускаем веб-сервер

mint sites-available # service nginx stop
mint sites-available # service nginx start

6. В браузере открываем https://localhost/, добавляем исключение (браузер будет ругаться, что сертификат самоподписанный), после этого должны увидеть «Welcome to nginx!» — это будет значить, что успешно через HTTPS открылся файл /usr/share/nginx/html/index.html.

У кого будут замечания и полезне советы, как всё это сделать правильнее — отписывайтесь.

C# Подключение к базе данных MSSQL

using System.Data.SqlClient;
string query = @"select 1";
            using (var connection = new SqlConnection("user id=Vasya;password=P@$w0rd;server=MyServer;database=MyBase;connection timeout=10;")) {
                connection.Open();
                using (var command = new SqlCommand(query, connection)){
                    command.CommandTimeout = 290;
                    using(SqlDataReader reader = command.ExecuteReader()){
                        int rowcounter = -1;
                        while (reader.Read()) {
                            rowcounter++; //счётчик строк в результате запроса
                            //заполняем значения в сохранённой строке
                            if (reader["My_Column"] is int) {
                                int n = (int)reader["My_Column "];
                            }
                            //…
                        }
                        reader.Close();
                    }
               }
          }
//добавить обработчики исключений

Для подключения к базе не под логином и паролем, а через доменную авторизацию под текущей виндовой учёткой строка будет такой:

using (var connection = new SqlConnection("server=MyServer;database=MyBase;connection timeout=10; Integrated Security=True;")) {}

QTextCodec и CP1251

Чтоб в окнах тексты на русском из исходников в кодировке 1251 не превратились в абракадабру, в начало программы надо добавить:

QTextCodec* codec = QTextCodec::codecForName("CP1251"); 
QTextCodec::setCodecForCStrings(codec);

фотография с веб-камеры через ffmpeg

ffmpeg -t 1 -f video4linux2 -s 640x480 -r 1 -i /dev/video0 foto.jpeg

если снимки будут тёмные, то –r 20

-r[:stream_specifier] fps (input/output,per-stream)

Set frame rate (Hz value, fraction or abbreviation).

-t duration (input/output)

When used as an input option (before -i), limit the duration of data read from the input file.

Как войти в командную строку при установке Windows 7

При установке windows 7 во время открытого окна разметки диска можно нажать Shift + F10 и откроется окно с командной строкой

Сброс пароля Windows из-под Linux

спасибо http://4tux.ru/blog/sbros_parolya_windows_iz_pod_linux

Необходимо установить утилиту chntpw:

sudo apt-get install chntpw

Далее нужно примонтировать раздел с Windows, и перейти в него из консоли. Например, раздел с Windows мы примонтировали по адресу /media/win. Таким образом, в консоли переходим в данную директорию:

cd /media/win/Windows/system32/config

Обратите внимание, регистр символов имеет значение, «WINDOWS», «Windows» и «windows» — не одно и то же.

Если нам нужно сбросить пароль системной учетной записи Администратора, запускаем:

sudo chntpw SAM

Если же нужно сбросить пароль пользователя (администратора) vasya, то пишем:

sudo chntpw –u vasya SAM

После выполнения команды вам будет предложено несколько вариантов: сбросить пароль, установить новый, сделать пользователя администратором, разблокировать пользователя.

 

В тему:
Список стандартных паролей для intel iPOS
Пароль по умолчанию для принтеров и МФУ Brother
RaspberryPi логин и пароль по умолчанию

md5deep

md5deep — программа для массового подсчёта контрольных сумм файлов
Самое полезное:
md5deep -r -e -t -z -o f ./ >> ~/computer.md5sums

-r     Enables recursive mode. All subdirectories are traversed. Please note that recursive mode cannot be used to examine all files
of a given file extension. For example, calling md5deep -r *.txt will examine all files in directories that end in .txt.

-e     Displays a progress indicator and estimate of time remaining for each file being processed. Time estimates for  files larger
than 4GB are not available on Windows. This mode may not be used with th -p mode.

-t     Display a timestamp in GMT with each result. On Windows this timestamp will be the file’s creation time. On all other systems
it should be the file’s change time.

-z     Enables  file  size  mode.  Prepends the hash with a ten digit representation of the size of each file processed. If the file
size is greater than 9999999999 bytes (about 9.3GB) the program displays 9999999999 for the size.

-o <bcpflsd>
Enables  expert  mode.  Allows  the user specify which (and only which) types of files are processed. Directory processing is
still controlled with the -r flag. The expert mode options allowed are:
f — Regular files
b — Block Devices
c — Character Devices
p — Named Pipes
l — Symbolic Links
s — Sockets
d — Solaris Doors
e — Windows PE executables