Спасибо. полез в тестовую лабу развлекаться.
клиент вин7, два сервера (не терминальных) — 2008r2 и 2012r2. групповая политика одна, запрещает перенаправление дисков (проверил — диски не монтируются).
2012r2 файлы не копируются (ПКМ — «вставить» — серая). на 2008r2 — копируются. пока в легком недоумении, изыски продолжу.
монтировать — да, но монтирование не должно быть отключено политиками и свойствами хоста.
проверьте — отключите политиками возможность подключения дисков.
текст будет копироваться, файлы — нет.
да, копипаст файлов начался с вин7.
а отвечает за это опция перенаправление диска — если она отключена политиками или в свойствах RDS-хоста, то файлики будет не потаскать.
и тут и плюс и минус — копировать файлики здорово, а вот проброшенный в рдп диск уже может выдать проблем.
чисто из любопытства — а можно применить FSRM на локальные диски? и как это сказывается на быстродействии?
и если да — то сработает ли он при обращении на \\?\Volume{id}?
да, костыль. особенно если обеспечить групповое изменение реестра в домашних вёндах:) зато недорого и даёт глубокое понимание принципов работы групповых политик =)
а софт этот емнип так же реестр патчит, просто с гуйняшечкой.
при этом принтаки laserjet 5l\6l, купленные примерно в это время работают до сих пор, и до сих пор актуальны. для дома, разумеется. два девайса в эксплуатации, только на одном «датчик» закрытия крышки барахлит.
спасибо.
мне Zywall попадался, несколько стареньких. Hаботал я с ним совсем немного, уже не помню почему поменяли на микротики.
проблем не было, но настройка фаервола в виде матрицы мне категорически не понравились:)
по части DFL — интерфейс там на самом деле логичный и удобный, просто непривычный. в WW-прошивках старых, и теперь и в RU-новых так иещё удобнее — импорт скрипта через вебморду, сниффер с отображением через вебморду.
а вот по части стабильности… с 210-800-260-800-1600 проблем не было, погонял новый свежий славный 870 — там проблемы пока есть. оригинальный Clavister багфикс выпустил, D-link пока не шевелится.
; =============================================================================
; _Crypto_GetRandomString($iLen[, $iFlag])
; — ; Получение случайной символьной строки заданной длины
;
; $iLen: длина получаемой строки
; $iFlag: какие символы используются при генерации строки
;: 1 — цифры
;: 2 — большие английские буквы
;: 4 — малые английские буквы
;: 8 — основные спецсимволы
;: 16 — дополнительные спецсимволы
;: 32 — русские буквы
;
; При успехе: возвращает бинарную строку
;
; При неудаче: пустая строка:
;: error, extended — код ошибки _Crypto_GetRandomBinary()
;
;: AutoIT v3.3.0.0
; =============================================================================
Func _CryptoGetRandomString($iLen, $iFlag = 15)
Local $iMid, $sABC = "", $sOut = ""
If BitAND($iFlag,1) Then $sABC &= "0123456789"
If BitAND($iFlag,2) Then $sABC &= "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
If BitAND($iFlag,4) Then $sABC &= "abcdefghijklmnopqrstuvwxyz"
If BitAND($iFlag,8) Then $sABC &= "~!@#$%^&*()"
If BitAND($iFlag,16) Then $sABC &= '`+-=",.<>/?|[]{};:'&"'"
If BitAND($iFlag,32) Then $sABC &= 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя'
Local $iABC = StringLen($sABC)
Local $bPWD = _Crypto_GetRandomBinary($iLen)
If error Then Return SetError(@error, extended, $sOut); Ошибка _Crypto_GetBinary
For $i=1 To BinaryLen($bPWD)
$iMid = Int(BinaryMid($bPWD,$i,1))*$iABC/0x100+1
$sOut &= StringMid($sABC, $iMid, 1)
Next
Return $sOut
EndFunc; ==> _Crypto_GetRandomString
; =============================================================================
; _Crypto_GetRandomBinary($iLen)
; — ; Получение случайной строки байтов заданной длины
;
; $iLen: количество байтов в бинарной строке
;
; При успехе: возвращает бинарную строку
;
; При неудаче: возвращаемое значение не является бинарной строкой:
;: error=1, extended=1 — ошибка открытия advapi32.dll
;: error=1, extended=2 — ошибка открытия kernel32.dll
;: error=2 — RunTime ошибка API, extended — код ошибки
;
;: AutoIT v3.3.0.0
; =============================================================================
Func _Crypto_GetRandomBinary($iLen)
Local $phProv = DllStructCreate("ulongptr"), $aRet
Local $pbBuffer = DLLStructCreate("byte[" & $iLen & "]")
; Открытие DLL
Local $hAdvApi = DllOpen("advapi32.dll"), $hKernel = DllOpen("kernel32.dll")
If $hAdvApi=-1 Then Return SetError(1, 1, DllClose($hKernel)); Ошибка открытия advapi32.dll
If $hKernel=-1 Then Return SetError(1, 2, DllClose($hAdvApi)); Ошибка открытия kernel32.dll
; Создание описателя криптохранилища
$aRet = DllCall($hAdvApi, "int", "CryptAcquireContext",
"ptr", DllStructGetPtr($phProv), "ptr", 0, "ptr", 0, "dword", 1, "dword", 0xF0000000)
If $aRet[0]=0 Then $aRet = DllCall($hKernel, "int", "GetLastError")
If UBound($aRet)=1 And $aRet[0]=0x80090016 Then
$aRet = DllCall($hAdvApi, "int", "CryptAcquireContext", "ptr", DllStructGetPtr($phProv), "ptr", 0, "ptr", 0, "dword", 1, "dword", 0xF0000008)
If $aRet[0]=0 Then $aRet = DllCall($hKernel, "int", "GetLastError")
EndIf
If UBound($aRet)>1 Then
; Генерация случайной последовательности байтов
$aRet = DllCall($hAdvApi, "int", "CryptGenRandom",
"ptr", DllStructGetData($phProv, 1), "dword", $iLen, "ptr", DllStructGetPtr($pbBuffer))
If $aRet[0]=0 Then $aRet = DllCall($hKernel, "int", "GetLastError")
; Закрытие описателя криптохранилища
DllCall($hAdvApi, "long", "CryptReleaseContext", _
"ulong_ptr", DllStructGetData($phProv, 1), "dword", 0)
EndIf
DllClose($hKernel)
DllClose($hAdvApi)
If UBound($aRet)=1 Then Return SetError(2, $aRet[0], 0) ; Ошибка API RunTime
Return DllStructGetData($pbBuffer, 1) ; Возврат строки
что там винапи, что там винапи. только павершелл на старых системах нужно ставить отдельно и часть модулей не работает, дотнет местами работает медленно, ну и собирать в ехе нужно сомнительным софтом. впрочем, плюсы павершелла сложно недооценить.
а вот чем вам не угодили DFL и Zywall? просто любопытно.
если база на поддержке — то штатным механизмом (запуск с ключом /UpdateCfg). вообще штатный механизм обновления из предприятия типовых баз весьма неплох — скачивается .hta файл, оттуда ком-соединениями управляется база (выгоняются пользователи. делается бэкап, последовательно применяются нужные .cf). или вы имеете ввиду обновление нетиповых\снятых с поддержки баз?
я читал про эту методику, но пока не применял — негде. если есть возможность выкинуть людей из базы на время бэкапа, то вопроса не стоит, тут можно чем угодно бэкапить:)
в моей практике хорошие 1с-специалисты бежали от такой рутины как от огня, а плохих… лучше не брать вовсе :) Это как заставить ведущего сисадмина, короля Active Directory, заводить в ней пользователей. другое дело, что структура пользователей и групп должна быть чёткой, а не сотня дополнительных свойств и хардкода имён пользователей в обработках.
Хорошая тема создавать пользователей отделу кадров, при приёме на работу. сразу и в 1с, и в AD (автоматически). но такое может привести к безумию в наших реалиях =(
в тоже время в вин2012 с разрешенным пробросов дисков — всё ок %)
клиент вин7, два сервера (не терминальных) — 2008r2 и 2012r2. групповая политика одна, запрещает перенаправление дисков (проверил — диски не монтируются).
2012r2 файлы не копируются (ПКМ — «вставить» — серая). на 2008r2 — копируются. пока в легком недоумении, изыски продолжу.
я сталкивался лично с таким поведенем, вот пруф что я не один такой
проверьте — отключите политиками возможность подключения дисков.
текст будет копироваться, файлы — нет.
а отвечает за это опция перенаправление диска — если она отключена политиками или в свойствах RDS-хоста, то файлики будет не потаскать.
и тут и плюс и минус — копировать файлики здорово, а вот проброшенный в рдп диск уже может выдать проблем.
и если да — то сработает ли он при обращении на \\?\Volume{id}?
а софт этот емнип так же реестр патчит, просто с гуйняшечкой.
да и групповые политики можно запилить =)
vbs кстати встречал реже.
а вот кого вовсе не встречал — так это павершельных.
то даже с высокими портами ломятся, хоть и реже. без fail2ban никуда (ts_block, evlwatcher, или свои скрипты).
да, raid1 c hotspare, или как в достижении кучи девяток после запятой уменьшить память в три раза:)
можно намутить свою поставку обновления а-ля штатная — https://its.1c.ru/db/metod8dev#content:4727:hdoc
спасибо.
мне Zywall попадался, несколько стареньких. Hаботал я с ним совсем немного, уже не помню почему поменяли на микротики.
проблем не было, но настройка фаервола в виде матрицы мне категорически не понравились:)
по части DFL — интерфейс там на самом деле логичный и удобный, просто непривычный. в WW-прошивках старых, и теперь и в RU-новых так иещё удобнее — импорт скрипта через вебморду, сниффер с отображением через вебморду.
а вот по части стабильности… с 210-800-260-800-1600 проблем не было, погонял новый свежий славный 870 — там проблемы пока есть. оригинальный Clavister багфикс выпустил, D-link пока не шевелится.
прикольнее СДИ1 (Система\Сервер Доменных Имен) и безпи (Безопасность Протокола Интернет). правильнее наверное Сохранность Межесетевого Протокола…
о! СерДомИм и СохМежПрот.
по тексту есть ссылка..
`
; =============================================================================
; _Crypto_GetRandomString($iLen[, $iFlag])
; — ; Получение случайной символьной строки заданной длины
;
; $iLen: длина получаемой строки
; $iFlag: какие символы используются при генерации строки
;: 1 — цифры
;: 2 — большие английские буквы
;: 4 — малые английские буквы
;: 8 — основные спецсимволы
;: 16 — дополнительные спецсимволы
;: 32 — русские буквы
;
; При успехе: возвращает бинарную строку
;
; При неудаче: пустая строка:
;: error, extended — код ошибки _Crypto_GetRandomBinary()
;
;: AutoIT v3.3.0.0
; =============================================================================
Func _CryptoGetRandomString($iLen, $iFlag = 15)
Local $iMid, $sABC = "", $sOut = ""
If BitAND($iFlag,1) Then $sABC &= "0123456789"
If BitAND($iFlag,2) Then $sABC &= "ABCDEFGHIJKLMNOPQRSTUVWXYZ"
If BitAND($iFlag,4) Then $sABC &= "abcdefghijklmnopqrstuvwxyz"
If BitAND($iFlag,8) Then $sABC &= "~!@#$%^&*()"
If BitAND($iFlag,16) Then $sABC &= '`+-=",.<>/?|[]{};:'&"'"
If BitAND($iFlag,32) Then $sABC &= 'АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя'
Local $iABC = StringLen($sABC)
Local $bPWD = _Crypto_GetRandomBinary($iLen)
If error Then Return SetError(@error, extended, $sOut); Ошибка _Crypto_GetBinary
EndFunc; ==> _Crypto_GetRandomString
; =============================================================================
; _Crypto_GetRandomBinary($iLen)
; — ; Получение случайной строки байтов заданной длины
;
; $iLen: количество байтов в бинарной строке
;
; При успехе: возвращает бинарную строку
;
; При неудаче: возвращаемое значение не является бинарной строкой:
;: error=1, extended=1 — ошибка открытия advapi32.dll
;: error=1, extended=2 — ошибка открытия kernel32.dll
;: error=2 — RunTime ошибка API, extended — код ошибки
;
;: AutoIT v3.3.0.0
; =============================================================================
Func _Crypto_GetRandomBinary($iLen)
Local $phProv = DllStructCreate("ulongptr"), $aRet
Local $pbBuffer = DLLStructCreate("byte[" & $iLen & "]")
; Открытие DLL
Local $hAdvApi = DllOpen("advapi32.dll"), $hKernel = DllOpen("kernel32.dll")
If $hAdvApi=-1 Then Return SetError(1, 1, DllClose($hKernel)); Ошибка открытия advapi32.dll
If $hKernel=-1 Then Return SetError(1, 2, DllClose($hAdvApi)); Ошибка открытия kernel32.dll
; Создание описателя криптохранилища
$aRet = DllCall($hAdvApi, "int", "CryptAcquireContext",
"ptr", DllStructGetPtr($phProv), "ptr", 0, "ptr", 0, "dword", 1, "dword", 0xF0000000)
If $aRet[0]=0 Then $aRet = DllCall($hKernel, "int", "GetLastError")
If UBound($aRet)=1 And $aRet[0]=0x80090016 Then
$aRet = DllCall($hAdvApi, "int", "CryptAcquireContext", "ptr", DllStructGetPtr($phProv), "ptr", 0, "ptr", 0, "dword", 1, "dword", 0xF0000008)
If $aRet[0]=0 Then $aRet = DllCall($hKernel, "int", "GetLastError")
EndIf
If UBound($aRet)>1 Then
; Генерация случайной последовательности байтов
$aRet = DllCall($hAdvApi, "int", "CryptGenRandom",
"ptr", DllStructGetData($phProv, 1), "dword", $iLen, "ptr", DllStructGetPtr($pbBuffer))
If $aRet[0]=0 Then $aRet = DllCall($hKernel, "int", "GetLastError")
; Закрытие описателя криптохранилища
DllCall($hAdvApi, "long", "CryptReleaseContext", _
"ulong_ptr", DllStructGetData($phProv, 1), "dword", 0)
EndIf
DllClose($hKernel)
DllClose($hAdvApi)
EndFunc; ==> _Crypto_GetRandomBinary
`
а вот чем вам не угодили DFL и Zywall? просто любопытно.
в моей практике хорошие 1с-специалисты бежали от такой рутины как от огня, а плохих… лучше не брать вовсе :) Это как заставить ведущего сисадмина, короля Active Directory, заводить в ней пользователей. другое дело, что структура пользователей и групп должна быть чёткой, а не сотня дополнительных свойств и хардкода имён пользователей в обработках.
Хорошая тема создавать пользователей отделу кадров, при приёме на работу. сразу и в 1с, и в AD (автоматически). но такое может привести к безумию в наших реалиях =(