En la maquina virtual, para configurar xrdp en español :

root@ubuntumv01:/etc/xrdp# setxkbmap -model pc105 -layout latam
root@ubuntumv01:/etc/xrdp# cp km-0409.ini /root/
root@ubuntumv01:/etc/xrdp# xrdp-genkeymap km-0409.ini
root@ubuntumv01:/etc/xrdp# /etc/init.d/xrdp start

En el cliente, para que rdesktop seleccione bien el teclado, tenemos que tener el archivo que está aquí debajo. Para agregar valores hay que mirar como se llaman las teclas en /usr/share/rdesktop/keymaps/common, y obtener los valores decimales de las teclas en una consola de texto, con el comando showkey. El "man ASCII" nos dará el valor en hexa que necesitamos en el archivo :

syadmin@mara:~/Descargas/opt/2X/Client/bin$ cat /usr/share/rdesktop/keymaps/es-la 
# Created by Kevin Kelly (at) devonit.com 
# July 16, 2009
# based on latin american keyboard layout

include common
map 0x080A

# 
bar 0x29
notsign 0x29 altgr
degree 0x29 shift

# 1
exclam 0x2 shift

# 2
quotedbl 0x3 shift
at 0x3 altgr

# 3
numbersign 0x4 shift

# 4
dollar 0x5 shift

# 5
percent 0x6 shift

# 6
ampersand 0x7 shift

# 7
slash 0x8 shift

# 8
parenleft 0x9 shift

# 9
parenright 0xa shift

# 0
equal 0xb shift

# ' ? \
apostrophe 0xc
question 0xc shift
backslash 0xc altgr

# ? ! (but upside down)
questiondown 0xd
exclamdown 0xd shift

# } ] `
braceright 0x2b
bracketright 0x2b shift
dead_grave 0x2b altgr


#
# QWERTY first row
#

# places ` or double marks over next letter
dead_acute 0x1a 
dead_diaeresis 0x1a shift

# + * ~
plus 0x1b
asterisk 0x1b shift
dead_tilde 0x1b altgr

#
# QWERTY second row
#

# N with tilde over them
ntilde 0x27
Ntilde 0x27 shift

# { [ ^
braceleft 0x28
bracketleft 0x28 shift
dead_circumflex 0x28 altgr

#
# QWERTY third row
#

# @
at 0x10 altgr

# , :
comma 0x33 
semicolon 0x33 shift

# . :
period 0x34
colon 0x34 shift

# - _
minus 0x35
underscore 0x35 shift



Left 0x69
Up 0x67
Down 0x6c
Right 0x6a

Insert 0x6e       
Home 0x66    
Prior 0x68
Delete 0x6f
End 0x6b
Next 0x6d