顯示具有 Windows 標籤的文章。 顯示所有文章
顯示具有 Windows 標籤的文章。 顯示所有文章

2025年5月14日 星期三

Regedit 於右鍵選單中第一個項目 增加"建立新資料夾"功能

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\建立新資料夾]

"Position"="top"

"SeparatorAfter"=""

"Icon"="%SystemRoot%\\system32\\shell32.dll,172"


[HKEY_CLASSES_ROOT\Directory\Background\shell\建立新資料夾\command]

@="cmd.exe /c md \"新資料夾\""








Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Directory\Background\shell\建立時間命名資料夾]

@="建立時間命名資料夾"

"Icon"="%SystemRoot%\\System32\\imageres.dll,3"

"Position"="Top"

"SeparatorAfter"=""


[HKEY_CLASSES_ROOT\Directory\Background\shell\建立時間命名資料夾\command]

@="powershell -NoProfile -WindowStyle Hidden -Command \"New-Item -Path '.' -Name (Get-Date -Format 'yyyyMMdd_HHmmss_fff') -ItemType Directory\""





年分以民國顯示

@="powershell -NoProfile -WindowStyle Hidden -Command \"New-Item -Path '.' -Name (((Get-Date).Year - 1911).ToString()+ (Get-Date -Format 'MMdd_HHmmss_ff')) -ItemType Directory\""



2025年5月7日 星期三

取得批次檔所在目錄 get current folder name by batch command

@echo off


REM 取得批次檔所在目錄(含反斜線)

SET fullPath=%cd%


REM 取得最底層資料夾名稱

FOR /F "delims=" %%I IN ('cmd /c echo %fullPath%') DO SET folderName=%%~nxI


REM 顯示結果

ECHO folder full path: %fullPath%

ECHO folder name: %folderName%


PAUSE

2024年9月26日 星期四

Word 合併列印 數字改為國字大寫 with excel

參考資料:https://fjanchen.blogspot.com/2010/11/blog-post_17.html


Word僅接受原始格式的文字,不接受Excel畫面上的格式設定,所以無法使用Excel的數值類型來設定數字的呈現格式.


在excel中處理:

1.必須要使用函數,確實將數字更改為大寫文字的文字型態,方能在Word中呈現出正確的數字

2.設定函數的方式為: =TEXT(原數字儲存格,"[DBNum2]")

3.其中的[DBNum2]代表國字大寫數字的格式定義


在word中處理:

1..滑鼠進入  數字  會出現反灰

2.按Shift- F9 會出現{ MERGEFIELD "數字" }

3.點進去 改成 { MERGEFIELD "數字" \* CHINESENUM2 }

4.按 F9 ,完成。


 word中其他格式:

\# 後面接的是數值性資料的格式

\@ 後面接的是日期性資料的格式

\*後面可接特殊的中文數字表示格式


譬如:

{ “合併欄位” \# NT$#,###.## }  將會顯示NT$12,345.78

{ “合併欄位” \* DBNUM1 }  將會顯示一二三四五六

{ “合併欄位” \* DBNUM2 }  將會顯示壹拾貳萬參仟肆佰伍拾陸

{ “合併欄位” \* DBNUM3 }  將會顯示一十二萬三千四百五十六


2024年2月17日 星期六

Using command line download google Chrome browser 免IE瀏覽器 使用命令列下載chrome瀏覽器

### cURL (Windows 10 built-in)
curl -fsSL "http://dl.google.com/chrome/install/chrome_installer.exe" > ChromeSetup.exe


### PowerShell Script 
powershell -Command "(new-object System.Net.WebClient).DownloadFile('http://dl.google.com/chrome/install/chrome_installer.exe','ChromeSetup.exe')"

2023年12月18日 星期一

Launch Microsoft Store apps from Command Prompt


Open Microsoft Store from Run

explorer.exe ms-windows-store:

Open Microsoft app from Run

explorer.exe shell:appsFolder\<PackageFamilyName>!<App ID>
explorer.exe appInstallLocation\executable file (various location by app version)


find out apps name in shortcut detail properties

e.g.  minecraft launcher is Microsoft.4297127D64EC6_8wekyb3d8bbwe 



find appInstallLocation:

1.using powershell type  get-appxpackage > c:\findout.txt

2.find  app’s PackageFamilyName (Microsoft.4297127D64EC6_8wekyb3d8bbwe)
copy InstallLocation paste to file browser

3. open AppxManifest.xml in InstallLocation


find Application Id & Executable file in AppxManifest.xml


2022年12月28日 星期三

Windows GodMode

上帝模式(GodMode)不僅適用於Windows 7和Windows Vista系統,而且適用於未來的Windows 8系統。
據悉,Windows 7上帝模式首先由國外的一個博客發現。該博客感嘆於此項隱藏功能的神奇,遂將其命名為「GodMode」。你可以用任何名稱創造新的文件夾,再加上特定的字串,就能直接進入各種設定的控制面板。

例如,在桌面新建一個文件夾,命名為 GodMode.{ED7BA470-8E54-465E-825C-99712043E01C}。你會發現:圖標變成了「控制面板」,文件夾裡面有相當豐富的內容。

2022年5月30日 星期一

[舊電腦升級] Windows 11 安裝繞過 TPM 2.0、CPU 破解硬體限制教學

 微軟 Windows 11 作業系統對於電腦硬體有相當高的要求,其中最大的限制為 TPM 2.0、CPU(至少Intel 第八代 CPU)及安全開機(Secure Boot),這也造成需多不符合硬體需求的老舊電腦無法升級安裝。這篇要教各位透過修改安裝檔的方式進而繞過 TPM 2.0 及 CPU 的限制,讓老舊不符合硬體需求的電腦能在順利升級 Windows 11 作業系統。

下載iso,到微軟官網下載 Windows 11 ISO 映像檔

解壓縮iso檔,進入「sources」資料夾

找到「appraiserres.dll」檔,將這支檔案重新命名或刪除(讓這支檔案沒作用),這邊將檔案重新命名為「appraiserres.dll_bak」,另外請記得「開啟顯示副檔名」才能完整對檔案重新命名。

 將網路卡停用,讓 Windows 11 安裝程式在執行過程中,無法連上微軟的線上硬體檢測伺服器,以達到繞過硬體相容性檢測。停用操作步驟:在「網路」按右鍵「內容」,接著點擊「改變介面卡設定」,之後將目前連網的網路卡「停用」。

點擊「setup.exe」執行 Windows 11 安裝程式進行安裝,進行過程中會發現安裝程序直接【跳過】「不符合電腦硬體需求」的提示,可順利看到「安裝」按鈕。

 

 

 參考資料:

https://www.tokfun.net/os/windows/install-windows-11-old-pc/

2022年4月10日 星期日

Using DD command to Erase disk

CBL Data Shredder  can't executed properly in Win10

Try alternate approach:  using dd command for windows

 

First  download the utility DD (download) and unzip it. 

http://www.chrysocome.net//dd


win+Q    search  cmd   and right click the icon run as an administrator

 

execute    dd  --list

List all disk and volumes found in Windows:


rawwrite dd for windows version 0.5.
Written by John Newbigin <jn@it.swin.edu.au>
This program is covered by the GPL.  See copying.txt for details
Win32 Available Volume Information


\\.\Volume{1d2d4629-0000-0000-0000-100000000000}\
  link to \\?\Device\HarddiskVolume6
  fixed media
  Not mounted

\\.\Volume{41741c34-0000-0000-0000-100000000000}\
  link to \\?\Device\HarddiskVolume13
  fixed media
  Mounted on \\.\g:


select  CORRECT disk and execute following command: 

dd bs=1048576 count=1000 of=\\?\Device\HarddiskVolume13 if=/dev/zero --progress

(note:  bs=1MB count= how many bs you want to erase)


All data will be erased immediately, so execute command carefully !!!

 

 

dd bs=1G count=80 of=\\?\Device\HarddiskVolume10 if=/dev/zero --progress

2018年2月3日 星期六

外接硬碟盒&當硬碟大於2TB



當外接硬碟盒(例如使用 seagate goflex)   接 >2TB硬碟
透過USB 會自動使用 4K / sector  在這個情況下進行磁碟分割 格式化

將硬碟從外接盒取出接上主機板 透過內接方式讀取資料 
(系統會預設使用 512b / sector 讀取資料)
造成磁區大小、數量不同    作業系統  無法正確辨識 分割表 與 檔案系統


兩種格式轉換 必須透過 CBL Data Shredder 等...軟體
清除硬碟所有資訊  變成空白硬碟  辨認成新硬碟後 才能重新分割


參考資料:
https://www.ptt.cc/bbs/Storage_Zone/M.1430364898.A.181.html

2015年8月30日 星期日

Windows ACL 權限調整心得

windows ACL 權限調整:
若不想讓特定使用者 讀取文件 (但可以列出所有資料夾與檔案)
則進入進階設定   將  讀取權限  設定為拒絕  (列出資料夾/讀取資料  不能設為拒絕)

再開放其某子資料夾 讀取與執行  權限


windows認證過後的user 都隸屬於 Authenticated Users


若要讓建立檔案的人可以刪除 其他人不能修改  需設定CREATOR OWNER
要將其他人 修改的權限  移除

2015年8月29日 星期六

Support tools

https://support.microsoft.com/en-us/kb/838079
  •  
  • Ipseccmd.exe
  • Httpcfg.exe
  • Replmon.exe
  • Iadstools.dll
  • Extract.exe
  • Bitsadmin.exe
  • Netdom.exe
BITSAdmin is a command-line tool that you can use to create download or upload jobs and monitor their progress.


repadmin.exe on 2008/2008 R2, or to use replmon.exe from a Windows Server 2003 server.

You can find the command reference for repadmin.exe in Windows Server 2008/2008 R2 here.A few examples:
repadmin.exe /showrepl shows the replication-status for the domain controller the tool are being run from.
repadmin.exe /showrepl servername shows the replication-status for the domain controller with the provided servername,
repadmin.exe /queue shows the replication-queue for the domain controller the tool are being run from.
repadmin.exe /queue servername shows the replication-queue for the domain controller with the provided servername,
repadmin.exe /replsummary shows a brief summary of the replication status.
I also checked if there are any PowerShell cmdlets for checking replication status in Windows Server 2008 R2, but its not. Hopefully this will be implemented some time in the future.
PS: I did test installing the Windows Server 2003 Support tools on a Windows Server 2008 domain controller in a lab environment, and it does work.

2015年5月8日 星期五

Overpower.ImageLib 寫入權限

overpower元件 執行權限


顯示的錯誤訊息是:
Overpower.ImageLib (0x8000FFFF)
Cannot create file xxxxxxxxxxx\xxx.jpg

設定Internet Guest 帳戶設定可以寫入還不夠..
還要在IIS啟動處理序帳戶(IIS_WPG)設定可以寫入
才能正常寫入與修改特定資料夾底下的檔案


20131117
設定Internet Guest 帳戶(IUSR_WWW)  設定為可修改

http://www.blueshop.com.tw/board/show.asp?subcde=BRD20070314214023CEN

參考資料:

IIS_WPG 與 IIS_IUSRS 權限差異



20150508:
IIS7使用下列帳號:
IIS_IUSRS  設定為可修改
IUSR

http://blog.fhps.tp.edu.tw/fhpsmis/?p=1015

2015年4月15日 星期三

Windows 2012 開機自動掛載VHD

連結VHD指令:
diskpart /s attach.txt
-------
select vdisk file="d:\xxxx.vhd"
attach vdisk
-------


diskpart /s detach.txt
-------
select vdisk file="d:\xxxx.vhd"
detach vdisk
-------



利用指令將掛載VHD動作 加入工作排程
schtasks /create /tn "MountVHD" /tr "diskpart.exe /s 'C:\path\attach.txt'" /sc ONLOGON



設定powershell 執行策略:
Set-ExecutionPolicy  (level)

http://www.dotblogs.com.tw/gelis/archive/2010/10/23/18532.aspx

2015年1月28日 星期三

使用 COMMAND 指令新增移除印表機

  • 新增網路印表機:
     rundll32 printui.dll,PrintUIEntry /in /q /n \\(伺服器名稱)\(印表機分享名稱)
  • 將網路印表機設定為「預設印表機」:
     rundll32 printui.dll,PrintUIEntry /y /q /n \\(伺服器名稱)\(印表機分享名稱)
  • 刪除網路印表機:
     rundll32 printui.dll,PrintUIEntry /dn /n \\(伺服器名稱)\(印表機分享名稱)
rundll32 printui.dll,PrintUIEntry /dn /n "\\printer\CanoniR3235(2F辦公室)"
rundll32 printui.dll,PrintUIEntry /dn /n "\\printer\CanoniR3235(總務處)"

rundll32 printui.dll,PrintUIEntry /dn /n "\\printer\Canon iR3235/iR3245 UFR II(2F辦公室)"



列出印表機清單 In Windows XP use prntmngr:
PRNMNGR -l
In Windows Vista and beyond, use PowerShell:
get-WmiObject -class Win32_printer
資料來源: http://superuser.com/questions/135393/list-printers-from-command-line-to-text-file


windows7之前的電腦需要 部署 PushPrinterConnections.exe 公用程式




若不想每次使用者都重覆新增印表機的動作,可在ModifyPrinter.bat 內做判斷:
請先在24h開機的機器上建立分享資料夾,權限要設定好讓使用者能寫入(通常開authenticated users權限即可),在此目錄下建立個空白 *.txt 檔案記錄使用者或電腦明稱。
----------------------------------------------
@echo off
::if not exist \\filesrv-vm\gpowork\InstallPrinter-test.txt goto End  <==判斷目錄與檔案是否存在,若不存在就跳離批次檔
if not exist \\files\misc$\設定印表機\add-printer-rs.txt goto End
rem <==判斷目錄與檔案是否存在,若不存在就跳離批次檔

@type \\files\misc$\設定印表機\add-printer-rs.txt |find/I "[%COMPUTERNAME%][%USERNAME%]" > nul 2>&1
rem <==查詢 txt 檔內容是否有對應的電腦名稱與使用者名稱,若有則不再執行新增印表機動作,若沒有則開始新增印表機的動作
if %errorlevel% == 0 goto End

rundll32 printui.dll,PrintUIEntry /in /n "\\printer\SHARP總務處"
rundll32 printui.dll,PrintUIEntry /in /n "\\printer\SHARP辦公室"
rundll32 printui.dll,PrintUIEntry /y /n "\\printer\SHARP辦公室"

rundll32 printui.dll,PrintUIEntry /dn /q /n "\\printer\Canon iR3235/iR3245 UFR II(2F辦公室)"
rundll32 printui.dll,PrintUIEntry /dn /q /n "\\printer\Canon iR3235/iR3245 UFR II(總務處)"
rundll32 printui.dll,PrintUIEntry /dn /q /n "\\printer\CanoniR3235(2F辦公室)"
rundll32 printui.dll,PrintUIEntry /dn /q /n "\\printer\CanoniR3235(總務處)"

echo [%COMPUTERNAME%][%USERNAME%] >> \\files\misc$\設定印表機\add-printer-rs.txt
rem <==新增完印表機則將電腦名稱與使用者名稱寫入txt檔案內

exit
:End

------------------------------------------------

參考資料: http://lms.twivs.tnc.edu.tw/t2710/doc/496


2015年1月27日 星期二

103上W22工作記錄

20150127
電子護照


20150126
轉換DHCP server至AD03

2014年8月11日 星期一

20140728 Windows server 2012 R2 筆記

Window Server 2012 版本: Standard / Data center
功能相同,一個 license 最多使用 2 CPU

Standard 版本 送 Hyper V 底下 2 guest OS license
Datacenter 版本 Hyper V 底下 Unlimited guest OS license



Active Directory   源於1992 Novell NDS

使用AD目的:  Single sign on  階層管理

AD 命名規則 參考DNS
必須有 "."  如: xxx.edu.tw
不支援 flat name
若使用flat name 會造成dynamic update 失敗


Object 物件:          屬性(欄位)
Domain
OU
Group
User
Computer


建議 IT : User 比例  => 1:25

Organizational Unit : 部門/工作地點/專案
目的: 委派管理、Apply group policy


使用domain驗證:
使用者輸入帳號密碼後由LSA Local security authority判斷登入至本機或網域
比對完AD資料庫 回傳結果
建立Access Token
-User ID
-所屬群組SID
-具備權限(驗證成功)


Domain數量越少越好
一個Domain 至少要有兩台DC  雙向複寫 (multi-master replication)
DC間不分階級 沒有誰先誰後
Domain中有多台DC時 驗證會隨機採用任意DC
集中式IT管理 domain數量較少 甚至只有一個


Domain trust : 多個domain間的 single sign on

Forest: AD的能力
每個forest 可擁有40億個物件
每個domain 可擁有10億個物件


本機帳號資料庫: C:\Windows\System32\config\SAM
本機電腦升級成DC  會先安裝AD DS 並停用本機帳號資料庫
並建立AD DB  \Windows\NTDS\NTDS.DIT


若AD DB資料庫  NTSD.DIT有問題  可使用 可重新啟動的ADDS
先將ADDS關閉(停用AD DB)  此時會啟用本機帳號資料庫
進行AD DB 維護
可重新啟動的ADDS 讓DC不需要重新啟動電腦進入AD維護模式 方便進行遠端維護



在domain: abc.com 中 Sales OU裡的Alex
LDAP Distinguished name:
CN=Alex, OU=Sales, DC=abc, DC=com


Global catlog:加速AD物件查詢
一個AD forest只要一台GC
實務上可將所有DC設為GC

Site: 限制驗證流量範圍,要用DC、DNS、GC
在跨WAN環境中使用 如台北 台中


Domain functional level: 限定domain中DC的最低版本
Forest functional level: 限定forest中DC的最低版本

DC也是LDAP server
AD DS 與AD LDS角色區分:
AD DS: AD DC並且也是 LDAP server
AD LDS: LDAP server only  (很少人使用)

提供給以下server:
ISA Server 2004/2006
TMG 2010
Exchange 2007/2010 Edge


一台SERVER上 避免service combination 理由有三:
1.避免軟體衝突
2.系統失效時復原時間較久
3.避免軟體漏洞影響其他服務


Domain 內的電腦 DNS設定  只能指向AD內的DNS
不可指向外部的DNS

MS AD環境中 DNS查詢必須在 3秒內回應


關閉 negative cache 
避免儲存DNS查詢錯誤的結果  而不再傳送DNS query
To force Windows XP not to cache negative entries we need to add a new DWORD to the following Registry key:

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Dnscache\Parameters

DWORD: MaxNegativeCacheTtl
Value: 0
This will now ensure NO negative entries are stored.



清除DNS cache
ipconfig.exe /flushdns
ipconfig.exe /displaydns

DSRM (設定本機administrator密碼)



檢查DC上的DNS設定
SOA 主要伺服器
1.DC的FQDN
2.結尾有 "."

名稱伺服器
DC的FQDN 及 IP


使用nslookup查詢
set type=srv   (不可有空格)
_ldap._tcp.dc._msdcs.xxx.com


使用 net share  查詢 DC上的共享資料夾
sysvol  => 儲存 Group Policy
不要變更權限
不要停止 Server 服務
不要讓防毒軟體掃描此目錄

使用whoami 查詢使用何種帳號登入


可在 win7 上安裝 RSAT (Remote server administration tool)
角色管理工具 -> AD DS 及 AD LDS管理工具
隨機連到某台DC  使用 TCP 389 port
此台電腦需要加入domain
用此方式server負載輕


如果使用遠端桌面 (會用到 TCP 3389 port)
不須將client電腦加入domain
但server負載增加


AD使用 kerberos V5 驗證
時間誤差必須小於5分鐘
超過誤差拒絕驗證

加入網域後 電腦內的windows time service自動啟動
DC 會自動扮演 PDC emulator
讓domain內的電腦進行時間同步  每15分鐘同步一次


無法登入domain可能原因
1. 時間誤差
2. 網路慢,產生negative cache
3. 因ghost後產生不存在的網卡,DHCP client會使用此不存在的網卡發boradcast
導致無法取得IP,而自動啟動APIPA機制產生169.254.x.x IP


移除non present device:
set devmgr_show_nonpresent_devices=1
start devmgmt.msc  -> 檢視 -> 顯示隱藏裝置  刪除不存在的網卡



在新樹系的第一台DC 可由本機administrators 群組成員 操作
在舊樹系第二台DC 可由Domain Admins群組成員 操作

在新子樹系的第一台DC 可由 Enterprise admins 群組成員 操作
在舊子樹系第二台DC 可由Domain Admin群組成員 操作


將電腦加入domain 可由domain admins  domain users 群組成員 操作
預設 domain users 可加入domain的電腦數為10
數值設定於 ms-DS-MachineAccountQuota
可由 adsiedit.msc  連線至DC 檢視 內容 ms-DS-MachineAccountQuota 修該

將電腦退出domain 只可由 domain admins 群組成員 操作

Domain Admins只可管理自身domain,無法管理樹系內子網域
Enterprise Admins 才可管理整個AD Forest


檢查DC是否正確運作
1. Restart netlogon service
2. DNS 正向區域 有無所有DC 的 A記錄 與 SRV記錄
3. AD站台及服務 -> default-first-site-name ->DC -> NTDS settings
點右鍵->所有工作->檢查複寫拓樸 (觸發KCC)

4.將DC上的第一DNS 指向自己 其他DNS指向另一台DC


如DC2突然失效,可用下列方式強制移除DC2:
1. 找一台可用的DC 開啟 AD站台及服務 找到default-first-site-name
->  刪除 DC2->NTDS Settings 再刪除DC2
2. DNS正向區域->網域內->刪除所有有關DC2的記錄
或刪除_msdcs  _sites _tcp  _udp 再重新啟動 netlogon service



退出domain的電腦帳號是否刪除?
1.未來不再加入domain,則可以刪除
2.電腦超過30天為連上domain 不可刪除
在DC上選擇電腦帳號->右鍵 重設帳戶 (允許相同名稱電腦更新資訊)
將電腦退出domain後再重新加入domain
3.原電腦損毀,重裝一台後使用相同名稱 , 解法同2


登入格式:
SAM account:  網域名\帳戶
UPN(User principle name):  帳戶@網域名


群組原則管理
注意 default domain policy
與 default domain controller policy 差異

手動立即更新policy: gpupdate /force
否則預設5分鐘後更新 policy


AD 使用者和電腦
開啟進階功能: 檢視>進階功能  (顯示詳細資訊)
在Domain名 按右鍵->尋找
找到物件後->物件標籤  可查到物件位於何處



新增UPN尾碼
AD網域及信任 -> AD網域及信任上按右鍵 -> 內容
新增 替用的UPN尾碼  如aaa.com

變更使用者帳戶 @aaa.com


填寫帳號資訊的目的:
協助搜尋物件
若有使用Exchange server 可讓使用者查詢

要將帳戶刪除前 先將帳戶停用三至六個月
確認沒有帳戶相依問題


幫使用者重設密碼後
使用者先前加密過的檔案無法開啟
IE儲存資料會清除
個人設定會清除


大量建立帳號:
csvde -i -v -f  file.txt

file.txt 內容:
DN,objectClass,displayName,userAccountControl,sAMAccountName,userPrincipalName
"CN=test003,OU=sales,DC=xxx,DC=com",user,test003,514,test003,test003@xxx.com



群組  方便管理者設定權限
兩種群組類型:  安全性  或  發佈
安全性: 可設定權限 並 做為 Distribution List  (for Exchange server)
發佈:只能做為 Distribution List (for Exchange server)

群組領域(群組範圍):
網域本機:只會在自己domain中出現
全域:在所有AD Forest中都可以看到
萬用:在所有AD Forest中都可以看到 (最快 因為儲存在GC)

AD內 Client查詢步驟:
1.向DNS查詢SRV資訊
2.詢問GC物件在哪裡及基本資訊
3.向DC查詢物件詳細資料


AGDLP:
Account -> Group (表達工作性質)  ->  Domain local group (表達擁有權限) -> Permits


套用群組原則:
WinXP 必須安裝KB943729更新  才可正確執行群組原則新功能
WinXP 還需要 User profile hive cleanup service 修正關機時間過長的問題

Group policy 套用順序:
本機原則 (可由gpedit.msc修改)
Site Policy
Domain Policy
OU Policy

Group policy 包含
電腦設定:開機過程套用
使用者設定:登入時套用

Group policy 套用順序詳細過程:
本機原則-電腦設定
Site Policy-電腦設定
Domain Policy-電腦設定
OU Policy-電腦設定
停止套用 直到使用者登入在套用下列原則:
本機原則-使用者設定
Site Policy-使用者設定
Domain Policy-使用者設定
OU Policy-使用者設定


群組原則只能對使用者及OU套用,無法套用至使用者群組!!!

原則與喜好設定差異:
原則:強制執行的規則
喜好設定:目的減少script撰寫,初始設定使用者可更改
(注意:XP預設不支援喜好設定!!!!  除非安裝KB943729更新)

多個 Group policy 的設定項目相同時,但各policy設定的值衝突時
以後面執行的policy為準


Server 或 使用者電腦 每90-120分鐘自動檢查group policy
DC 會在5分鐘內生效

可在client端手動觸發立即生效!!!
gpupdate 只套用變更的部分
gpupdate /force  所有group policy重新套用
gpresult /r 確認 group policy執行狀態


回送模式Loopback processing mode:電腦與使用者帳號分屬不同OU policy
取代(Replace) 只參考電腦帳號位置
合併(Merge) 先參考使用者位置,再參考電腦位置


例如: PC1 在 Sales OU: User1在 Finance OU
PC1 開機套用的群組原則順序如下:
PC1本機原則-電腦設定
Site Policy-電腦設定
Domain Policy-電腦設定
Sales Policy-電腦設定
-----------------------------
PC1本機原則-使用者設定
Site Policy-使用者設定
Domain Policy-使用者設定
Finance OU Policy-使用者設定  (只在合併模式開啟時執行)
Sales  OU Policy-使用者設定


Default Domain Policy - 電腦設定 -原則 -系統管理範本 -系統 -群組原則
設定使用者群組原則回送處理模式

Domain中的帳戶原則設定於
Default Domain Policy -電腦設定 -原則 - Windows設定 - 安全性設定- 帳戶原則
若在OU的policy設定帳戶原則,只會影響OU電腦的本機帳戶

密碼最短長度建議為8個字
因為windows內密碼每7個字做編碼  所以每超過7個字的編碼後長度會增一倍

密碼錯誤閥值建議為7-8次
內建Administrator不受影響

whoami /user 可查User SID
User SID = Domain SID + RID
內建的Administrator RID一定是500

Honey pot: 可先將內建的Administrator更改名稱,再建立一個無權限的Administrator帳號

群組原則套用失敗:
有可能複寫問題 或 防毒軟體將sysvol資料夾底下檔案隔離

Group policy  複寫方式: 確認底下兩個services正確執行
Server 2003使用 FRS方式複寫到其他DC
Server 2008之後使用 DFS Replication


群組原則模型
依據假設的條件 計算出會套用的設定

群組原則結果
依據指定的電腦與使用者 列出真實登入domain後的套用設定



利用GPO佈署軟體
放在電腦設定內的軟體安裝  會使用 local system account 安裝
放在使用者設定內的軟體安裝  會以使用者權限安裝

wininstall 將軟體打包成 msi


AD 佈署軟體給client 只是將捷徑丟給client 並不是真正進行安裝
當使用者第一次使用軟體時才會正式安裝

重新佈署: 強制用戶重新安裝軟體
例如: 使用者反應之前 msi 無法運作,重新製作 msi 時 可以使用重新佈署



軟體限制原則: 只會限制某個軟體的固定版本 (版本更新就不會限制)
Applocker: 建立規則後 需設定Applocker
將Applocker按右鍵->內容-> 可執行檔規則部分 勾選已設定 並選取 強制執行
並且需要啟動用戶端電腦的 Application Identity 服務 才會執行

Win 7/8 /2008/2012 才支援Applocker
若同一時間 軟體限制原則 及 Applocker 設定衝突時,以Applocker 為準
每一種windows OS支援軟體限制原則


DC複寫原則:  multi-master replication
DC上有資料庫變動
1.通知其他DC
2.其他DC發出複寫請求
3.將變動資料複寫至另一台DC
server 2008以後 15秒內會同步完成


網路連線速度<10Mbps 視為不同site
不同site 間 DC不會相互複寫  除非建立site link

Domain內五大角色
Schema master
Domain naming master
Infrastructure master
RID master
PDC emulator


要管理schema master 需先註冊管理元件 schmmgmt.dll
regsvr32 schmmgmt.dll
MMC -> 新增/移除嵌入式管理單元 -> 新增 Active Directory架構 -> 右鍵 操作主機

要管理Domain naming master
AD網域及信任 -> 右鍵 操作主機

要管理PDC、 RID、 Infrastructure
AD使用者和電腦 -> Domain名 -> 右鍵 操作主機


扮演 PDC emulator 的DC
才需要時間校正:
w32tm /config /manualpeerlist:time.nist.gov


DC移轉步驟
1.在舊DC上確認複寫是否正常
2.轉移五大角色至新DC
3.匯出EFS憑證
MMC-> 新增/移除嵌入式管理單元 ->  憑證  (使用者)
憑證(目前使用者)->個人->憑證  加密檔案系統
4.在新DC上匯入EFS憑證 (並勾選可再匯出)
5.DHCP server 上client的 DNS指向DC2
6.執行dcpromo 降級成一般server


強制移轉 seizure
執行 ntdsutil
roles
connections
connect to server dc2.xxx.com
quit
seize pdc
seize rid master
seize schema master
seize domain naming master
seize infrastructure mster

強制移轉後的原有角色若修復成功 不能再加入domain 需要重新安裝OS


備份伺服器
Server 2003: NTBackup
Server 2008: Windows server bacup
安裝角色及功能 -> 功能  選擇Windows server bacup


Windows server backup
動作 -> 一次性備份 -> 不同選項 -> 自訂
新增項目 -> 勾選 系統狀態 (未來還原到本機) -> 存在本機磁碟
選擇完整伺服器才可以還原至其他機器

將其他機器用光碟開機 選擇 修復電腦 -> 疑難排解 -> 系統映像修復


修復AD DB (如果使用傳統BIOS開機)
bcddit /set {bootmgr} displaybootmenu yes
開機過程 F8
DSRM目錄服務還原模式開機

bcdedit /set safeboot dsrepair 進入DSRM
shutdown -r -t 0

登入 administrator
Windows server backup
修復 -> 系統狀態 -> 原始位置


非授權還原 (以新資料為準)
當某台DC上的AD DB掛掉  可執行windows server backup 復原 系統狀態
復原後重新開機  新資料將從其他DC複寫過來

授權還原 (以舊資料為準 將此資料復原並複寫至其他DC)
當誤刪DC上資料時 如誤刪 xyz OU底下所有的資料
可執行windows server backup 復原 系統狀態
復原後 執行
ntdsutil
activate instance ntds
authoritative restore
restore subtree "OU=xyz,DC=xxx,DC=com" 
quit
quit

復原完成後 輸入以下指令離開DSRM
bcdedit /deletevalue safeboot
shutdown -r -t 0


CA伺服器
兩種CA差異:
企業級CA:一定要加進domain , domain中電腦會自動信任CA
獨立CA:不用進domain,但電腦要自行信任憑證

新增角色及功能 ->AD憑證服務
選取 憑證授權單位 及 憑證授權單位網頁註冊

設定AD憑證服務  企業CA 根CA

Domain內的電腦 可以用MMC 新增移除 憑證 使用者
檢查受信任的根憑證 是否存在

連線到憑證伺服器
http://dc2/certsrv
下載 CA 憑證、憑證鏈結或 CRL
MMC  新增移除 憑證 使用者 
點選 受信任的根憑證 右鍵 匯入憑證


管理預設的憑證範本
憑證範本 右鍵 管理 點選範本
安全性 讀取(可見) 註冊(可以申請)


申請憑證
1. MMC  新增移除 憑證 使用者
憑證 右鍵 所有工作 要求憑證
2.https://dc2/certsrv 要求憑證


自動發行憑證
憑證授權單位工具 選取 憑證範本 右鍵 管理
點選範本 右鍵 複製範本
到 一般 標籤頁 重新命名; 安全性 標籤頁 勾選 讀取、註冊、自動註冊

回到 憑證授權單位工具 選取 憑證範本 右鍵 新增 要發出的管理憑證
選取剛剛建立的管理範本

設定group policy
電腦設定 與 使用者設定都啟用
原則 windows設定  安全性設定 公開金鑰原則 啟用"憑證服務用戶端-自動註冊"


2014年8月5日 星期二

20140802 搬移file server


將兩台server都先加 Domain,安裝 Robocopy 搬資料,搬完開共享 & 檢查權限,測試結果。

在 Server2003 安裝微軟官方的工具:Robocopy

Server2003 要自己下載 → Windows Server 2003 Resource Kit Tools 才有 Robocopy 這個工具。

載點在這邊:http://www.microsoft.com/Downloads/details.aspx?FamilyID=9d467a69-57ff-4ae7-96ee-b18c4790cffd&displaylang=en



Robocopy.exe: Robust File Copy Utility <--- 安裝完就會有這個小工具。

接下來,就是執行同步~


"C:\Program Files\Windows Resource Kits\Tools\robocopy.exe" "\\192.168.1.5\D$\RDFile (備份來源路徑) " "\\192.168.1.7\D$\RDFile (備份目的地路徑)" /r:5 /w:10 /v /copyall /mir /LOG+:C:\RoboCopyLog\LOG檔名.txt

/R:n 複製失敗重試次數
/W:n 兩個重試的等待時間
/V 顯示詳細的複製結果,會標示New Extra Skip
/copyall 複製檔案所有屬性,就是D=資料,A=屬性,T=時間戳記,S=安全=NTFS ACL,O=所有者資訊,U=審核資訊
/mir 複製所有目錄
/LOG+:文件:: 將拷貝資訊附加到文件中

一個晚上可以搬完 300G 的資料,再把第一層的資料夾(以範例來說,就是 RDFile 這個資料夾)開共享就可以了,權限因為有參數 /copyall,所以已經設定好了,只需檢查即可。

P.S /Log+ 這個參數會產生 Log 檔,他會詳細列出搬了多少個資料夾、多少個檔案,跳過哪些檔案,總共的資料量多大,每分鐘的搬移速度。


 參考資料:
http://ithelp.ithome.com.tw/question/10033646
http://gemmy886.blogspot.tw/2011/10/robocopy.html

2014年6月13日 星期五

遠端安裝字型

Method 0:
自動安裝字型要使用微軟的小工具 FONTINST.EXE 並配合 fontinst.inf 安裝。
請參考以下微軟正黑體的安裝方式並可抽取 FONTINST.EXE 此程式:

http://www.microsoft.com/downloads/details.aspx?FamilyID=87E726A9-5C79-4A73-9347-78A557314D0B&displayLang=zh-tw


fontinst.exe /f fonts.inf
無法成功??


Method 1:
將fontreg與字型放在同一個資料夾再執行
fontreg.exe /copy

會將此資料夾字型複製到系統資料夾並登錄註冊
參考資料:
http://code.kliu.org/misc/fontreg/


xcopy /i /s /y "%~dp0*" "\\%h%\c$\temp\fonts\"
psexec -e \\%h% cmd /c (pushd c:\temp\fonts ^& fontreg.exe /copy)

refer:
http://www.richud.com/wiki/Windows_Fontreg_install_fonts_locally_or_remotely_easily


Method 2:
1. Copy TTF 到 %systemroot%\fonts
2. 加入 Registry
--------
test.bat

@echo off
copy test.ttf %systemroot%\fonts
regedit /s new.reg
--------
new.reg

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Fonts]
"Test (TrueType)"="test.ttf"

重開機.


參考資料:
http://wpkg.org/Fonts
http://www.mobile01.com/topicdetail.php?f=512&t=2114296
http://litestep.net/forums/index.php?thread=5791





使用指令安裝inf:

1. 利用 RunDll32.exe

C:\Windows\System32\rundll32.exe C:\Windows\System32\AdvPack.dll,LaunchINFSection C:\Filename.inf,預設安裝區段名稱

2. 利用 IExpress

利用 IExpress 將 .inf 包裝起來,並在包裝過程中將 .inf 指定為解壓縮後要執行的檔名。這樣您就可以利用批次檔來執行封裝後的 .exe 了。

3. 協力廠商工具

2014年5月30日 星期五

windows backup script

SET YY=%date:~0,4%
SET MM=%date:~5,2%
SET DD=%date:~8,2%
SET Hour=%time:~0,2%
SET Min=%time:~3,2%
SET Sec=%time:~6,2%

@echo on
set remote_dir_name=wwwroot-%YY%%MM%%DD%-%Hour%-%Min%-%Sec%(完整備份)

mkdir "\\xxx\www\%remote_dir_name%"
xcopy e:\wwwroot "\\xxx\www\%remote_dir_name%" /S /Y /D /C /F /H




使用 7z 例 :
set dd=%date:~8,2%
set dm=%date:~5,2%
set dy=%date:~0,4%
set mydate=%dy%%dm%%dd%

path c:\Program Files (x86)\7-Zip
7z a -tzip d:\myzip_%mydate%.zip d:\workspace\

指令格式:7z <指令> <參數> <壓縮檔檔名> <要壓縮的檔案或目錄>



XCOPY . D:\backup\ /D/K/E/Y/C/I/H
參數:/D/K/E/Y/C/I/H,/D只複製比目的檔還新的檔案,/K複製後檔案屬性不變,/E包含子目錄,/Y不要求確認,/C錯誤發生也繼續,/I目的不存在就建立資料夾,/H複製隱藏檔和系統檔。



將資料夾複製到另一個資料夾,並保留它的權限

xcopy c:\olddocs c:\newdocs /O /X /E /H /K
/E -複本資料夾及子資料夾,包括空的。
/H -複製隱藏及系統檔案也。
/K -複製屬性。一般而言,Xcopy 會重設唯讀屬性。
/O -複製檔案擁有權和 ACL 資訊。
/X -複製檔案稽核設定 (表示/O)。



/t複製資料夾 而不複製任何檔案 並保留它的權限:
EX:  xcopy /t /e /o /x /k data data2

參考資料:
http://support.microsoft.com/kb/323007/zh-tw
 

net command

刪除所有本機已連線磁碟機 (XP尤其需要 ...=.=)
net use * /del

http://evil-ms.blogspot.tw/2010/05/windows-net-use-command.html





:: If "user" account is not exist, create it.
net user | find /i "user" || net user user /add /fullname:"user"
net user user PASS
net localgroup YYY /add "%COMPUTERNAME%\user"


http://social.technet.microsoft.com/Forums/scriptcenter/en-US/fa2d2a6a-be3a-414a-8578-f39f30cc0b2f/how-to-verify-if-a-local-user-exists-or-not-from-batch-file?forum=ITCG