Wednesday, 13 June 2018

Log off remote user

First, check the session number with qwinsta:

QWINSTA /server:YOURCOMPUTERNAMEHERE

Write down the session ID.

Then use the logoff command:

LOGOFF YOURSESSIONIDHERE /server:YOURCOMPUTERNAMEHERE

Friday, 1 June 2018

Replace ESXi ixgben driver with ixbge (for Intel 82599 card)

HPE ESXi throws errors after upgrade from 6.5 to 6.7.

Alarm 'Host error' on xxxxxx triggered by event 30413 'Issue detected on xxxxxx in OMC: (unsupported) Device 10fb does not support flow control autoneg

To fix - replace ixgben driver with ixgbe as per:

https://www.alihassanlive.com/e2k3/2018/3/29/10fb-does-not-support-flow-control-autoneg-vmware-esx-65
https://kb.vmware.com/s/article/1013413
https://kb.vmware.com/s/article/52044

1. Download the latest version of ixgbe driver from VMWare web site (I found 4.5.3)

2. Copy the .vib file to the ESXi host and install it:

# esxcli software vib install -v /tmp/bcrtc/net-ixgbe_4.5.3-1OEM.600.0.0.2494585.vib

3. Reboot

4. Enable the new ixgbe drive and disable the ixgben driver:

# esxcli system module set -e=true -m=ixgbe
# esxcli system module set -e=false -m=ixgben

5. Reboot

6. Check that the new driver is active:

# esxcfg-nics -l 

vmnic4  0000:04:00.0 ixgben      Up   10000Mbps  Full   5c:b9:01:8f:d0:9c 1500   Intel(R) Ethernet Controller X540-AT2
vmnic5  0000:04:00.1 ixgben      Up   10000Mbps  Full   5c:b9:01:8f:d0:9d 1500   Intel(R) Ethernet Controller X540-AT2
vmnic6  0000:05:00.0 ixgben      Up   10000Mbps  Full   00:11:0a:6c:7f:1c 1500   Intel(R) 82599 10 Gigabit Dual Port Network Connection

vmnic7  0000:05:00.1 ixgben      Up   10000Mbps  Full   00:11:0a:6c:7f:1d 1500   Intel(R) 82599 10 Gigabit Dual Port Network Connection

Tuesday, 13 March 2018

Jailbreak Windows certificate private key

Download from:

https://github.com/iSECPartners/jailbreak


Command to run:

jailbreak32 c:\windows\system32\mmc.exe c:\windows\system32\certlm.msc -32

Monday, 19 February 2018

Reinstall GRUB2 from Linux Mint Live CD

# mount /dev/sda1 /mnt
# for i in /dev /dev/pts /proc /sys; do sudo mount -B $i /mnt$i; done
# chroot /mnt
# update-grub

Monday, 22 January 2018

Friday, 27 October 2017

Exchange 2010, 2013, 2016 - Delete virus email from mailboxes using Search-Mailbox

http://markgossa.blogspot.ca/2015/10/exchange-20102013-delete-virus-email.html

Occasionally but hopefully not too often you may get a virus that bypasses your spam filters and ends up in end users' mailboxes. In this post, I'll demonstrate how to delete the email from users' mailboxes in one quick and easy command which you can have on hand to run quickly.

First, ensure you have the correct permissions:


  1. Log into the Exchange Admin Center using an account that is a member of the Organization Management AD Group
  2. Click on Permissions
  3. Double click on Discovery Management and add your user account as a member
  4. Open a new Exchange Management Shell
To delete the email from all users' mailboxes:

Run the below command on a single line:

Get-Mailbox -ResultSize Unlimited | Search-Mailbox -SearchQuery from:sales@sales.com,subject:invoice -DeleteContent -Force





Above, you can see a report where it shows that one email was deleted from the Administrator mailbox (ResultItemCount: 1). 

To delete an email from all mailboxes and copy the email to the Spam mailbox


Get-Mailbox -ResultSize unlimited | Search-Mailbox -SearchQuery from:sales@sales.com,subject:invoice -TargetMailbox Spam -TargetFolder DeletedMessages -DeleteContent

To delete an email according to the attachment file name


Get-Mailbox -ResultSize unlimited | Search-Mailbox -SearchQuery attachment:document_826321_pdf.zip -DeleteContent

Thursday, 14 September 2017

Reset ILO4 licence

Download the latest cpqlocfg.exe from:
http://h20564.www2.hpe.com/hpsc/swd/public/detail?swItemId=MTX_e9770d99a87541c39647f729f0

Create an xml file called license_deactivate.txt:


<RIBCL VERSION="2.0">
<LOGIN USER_LOGIN="administrator" PASSWORD="password">
<RIB_INFO MODE="write">
<LICENSE>
<DEACTIVATE/>
</LICENSE>
</RIB_INFO>
</LOGIN>
</RIBCL>

Run the following command:

cpqlocfg.exe -s <ILO-IP> -f license_deactivate.txt -u administrator -p password

Friday, 3 March 2017

Submit Certificate Request to MS Enterprise CA with a template

certreq -submit -attrib "certificatetemplate:WebServer" msm720.csr
certreq -submit -attrib "certificatetemplate:SubCA" SubCA.csr

Sunday, 7 February 2016

Best .vimrc so far

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => General
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Sets how many lines of history VIM has to remember
set history=700

" Set to auto read when a file is changed from the outside
set autoread

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => VIM user interface
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Set 7 lines to the cursor - when moving vertically using j/k
set so=7

"Always show current position
set ruler

" Height of the command bar
set cmdheight=2

" A buffer becomes hidden when it is abandoned
set hid

" Configure backspace so it acts as it should act
set backspace=eol,start,indent
set whichwrap+=<,>,h,l

" Ignore case when searching
set ignorecase

" When searching try to be smart about cases 
set smartcase

" Highlight search results
set hlsearch

" Makes search act like search in modern browsers
set incsearch

" Don't redraw while executing macros (good performance config)
set lazyredraw

" Show matching brackets when text indicator is over them
set showmatch
" How many tenths of a second to blink when matching brackets
set mat=2

" No annoying sound on errors
set noerrorbells
set novisualbell
set t_vb=
set tm=500

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Colors and Fonts
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Enable syntax highlighting
syntax enable

colorscheme desert
set background=dark

" Set utf8 as standard encoding and en_US as the standard language
set encoding=utf8

" Use Unix as the standard file type
set ffs=unix,dos,mac


"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Files, backups and undo
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Turn backup off, since most stuff is in SVN, git et.c anyway...
set nobackup
set nowb
set noswapfile


"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" => Text, tab and indent related
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Use spaces instead of tabs
set expandtab

" Be smart when using tabs ;)
set smarttab

" 1 tab == 4 spaces
set shiftwidth=4
set tabstop=4

" Linebreak on 500 characters
set lbr
set tw=500

set ai "Auto indent
set si "Smart indent
set wrap "Wrap lines


""""""""""""""""""""""""""""""
" => Status line
""""""""""""""""""""""""""""""
" Always show the status line
set laststatus=2

Tuesday, 27 October 2015

Calculate Mysql Memory Usage

As per:
http://kedar.nitty-witty.com/blog/calculte-mysql-memory-usage-quick-stored-proc
------------------
DELIMITER $$

DROP PROCEDURE IF EXISTS `my_memory` $$
CREATE PROCEDURE `my_memory` ()
BEGIN

DECLARE var VARCHAR(100);
DECLARE val VARCHAR(100);
DECLARE done INT;

#Variables for storing calculations
DECLARE GLOBAL_SUM DOUBLE;
DECLARE PER_THREAD_SUM DOUBLE;
DECLARE MAX_CONN DOUBLE;
DECLARE HEAP_TABLE DOUBLE;
DECLARE TEMP_TABLE DOUBLE;

#Cursor for Global Variables

#### For < MySQL 5.1 
#### DECLARE CUR_GBLVAR CURSOR FOR SHOW GLOBAL VARIABLES;

#### For MySQL 5.1+
DECLARE CUR_GBLVAR CURSOR FOR SELECT * FROM information_schema.GLOBAL_VARIABLES;
#### Ref: http://bugs.mysql.com/bug.php?id=49758

DECLARE CONTINUE HANDLER FOR NOT FOUND SET done=1;


SET GLOBAL_SUM=0;
SET PER_THREAD_SUM=0;
SET MAX_CONN=0;
SET HEAP_TABLE=0;
SET TEMP_TABLE=0;

OPEN CUR_GBLVAR;

mylp:LOOP
      FETCH CUR_GBLVAR INTO var,val;
  IF done=1 THEN
    LEAVE mylp;
  END IF;
    IF var in ('key_buffer_size','innodb_buffer_pool_size','innodb_additional_mem_pool_size','innodb_log_buffer_size','query_cache_size') THEN
    #Summing Up Global Memory Usage
      SET GLOBAL_SUM=GLOBAL_SUM+val;
    ELSEIF var in ('read_buffer_size','read_rnd_buffer_size','sort_buffer_size','join_buffer_size','thread_stack','max_allowed_packet','net_buffer_length') THEN
    #Summing Up Per Thread Memory Variables
      SET PER_THREAD_SUM=PER_THREAD_SUM+val;
    ELSEIF var in ('max_connections') THEN
    #Maximum allowed connections
      SET MAX_CONN=val;
    ELSEIF var in ('max_heap_table_size') THEN
    #Size of Max Heap tables created
      SET HEAP_TABLE=val;
    #Size of possible Temporary Table = Maximum of tmp_table_size / max_heap_table_size.
    ELSEIF var in ('tmp_table_size','max_heap_table_size') THEN
      SET TEMP_TABLE=if((TEMP_TABLE>val),TEMP_TABLE,val);
    END IF;

END LOOP;
CLOSE CUR_GBLVAR;
#Summarizing:
select "Global Buffers" as "Parameter",CONCAT(GLOBAL_SUM/(1024*1024),' M') as "Value" union
select "Per Thread",CONCAT(PER_THREAD_SUM/(1024*1024),' M')  union
select "Maximum Connections",MAX_CONN union
select "Total Memory Usage",CONCAT((GLOBAL_SUM + (MAX_CONN * PER_THREAD_SUM))/(1024*1024),' M') union
select "+ Per Heap Table",CONCAT(HEAP_TABLE / (1024*1024),' M') union
select "+ Per Temp Table",CONCAT(TEMP_TABLE / (1024*1024),' M') ;

END $$
DELIMITER ;

Wednesday, 8 April 2015

Examine SharePoint 2013 Content-ID errors

As Per:

https://habaneroconsulting.com/insights/an-even-better-way-to-get-the-real-sharepoint-error#.VSWFBnl0wb8

Merge-SPLogFile -Path ".\error.log" -Correlation "5ca5269c-8de5-4091-3f1b-f179af4d5121"

Friday, 7 February 2014

Converting LDAP timestamp

EXCEL FORMULA

Taken from: https://social.technet.microsoft.com/wiki/contents/articles/12814.active-directory-lastlogontimestamp-conversion.aspx

=IF(C2>0,C2/(8.64*10^11) - 109205,"")

Date to timestamp

In PowerShell:

(Get-Date "1/11/2013").ToFileTime()

Timestamp to date:

From the command line:

w32tm.exe /ntte 130277628000000000

Friday, 6 December 2013

Windows ipconfig does not show anything

As per: http://lindsaar.net/2009/1/5/windows-ipconfig-does-not-show-anything

You can do the following at a CMD prompt to reset the network configurations:

C:\> netsh winsock reset catalog
C:\> netsh int ip reset reset.log

The first line resets all the WINSOCK entries to their defaults, the second line resets all the TCP/IP entries to their defaults.

The first one will ask you to reboot, don’t. Do both commands and then reboot your system.

Wednesday, 28 August 2013

How to find a machine serial number from command prompt using WMI

wmic bios get serialnumber

wmic /NODE:<computername> csproduct list full

or use PowerShell:

Get-WmiObject win32_bios

To discover HP Proliant Product Number:

Get-WmiObject Win32_ComputerSystem | Select-Object OEMStringArray

Wednesday, 7 August 2013

CertUtil: -deleterow command FAILED

Recently moved my root enterprise CA from Server 2008 to Server 2012 and was no longer able to delete pending request or expired certificates with using the -deleterow parameter. The error I was getting:

C:\>certutil -v -deleterow 08/05/2013 Request
CertUtil: -deleterow command FAILED: 0x80070057 (WIN32: 87)
CertUtil: The parameter is incorrect.

After 12 hours of pulling my hair out and verifying ever aspect of the migration I did, it turned out (although not mentioned at all in the certutil command help, e.g. http://technet.microsoft.com/en-us/library/cc732443.aspx#BKMK_deleterow) I had to spell the month rather than use numbers:

C:\>certutil -deleterow Aug/05/2013 Request
Rows deleted: 34
CertUtil: -deleterow command completed successfully.

Muppets at MS, why oh why do you do this to us !?!?!?

Wednesday, 1 May 2013

Set default input language for all users in Win7

Source: http://community.spiceworks.com/topic/202556-set-default-input-language-for-all-users-in-win7

1. Start the registry editor (regedit.exe)
2. Move to HKEY_USERS\.DEFAULT\Keyboard Layout\Preload
3. Double click on 1 and change the number to your local layout (you could get this by looking at HKEY_CURRENT_USER\Keyboard Layout\Preload1). Click OK
4. You may also change HKEY_USERS\.DEFAULT\Control Panel\International\Locale to this value however it is not mandatory to do so.
5. Close the registry editor
6. Logoff and then on again

Monday, 7 January 2013

Win DNS - Delete PTR record with all capitals

As per:

http://www.jetmore.org/john/blog/2012/09/deleting-ptr-records-containing-upper-case-characters-in-microsoft-dns/

use the following command to delete PTR record for 10.10.10.1 for instance:

dnscmd 10.10.10.33 /RecordDelete 10.10.in-addr.arpa. 1.10 PTR

Wednesday, 19 December 2012

Deleting pending or failed certificate requests

As per:

http://blogs.technet.com/b/askds/archive/2010/08/31/the-case-of-the-enormous-ca-database.aspx

For example, if you want to delete all failed and pending requests submitted by the 19/December/2012, the command is:

certutil -deleterow 12/19/2012 Request