Commit Graph

3433 Commits

Author SHA1 Message Date
Koichiro IWAO
e3d0fd6d46
common: temporarily disable DHE
until make it possible to use generated DH parameters per installation.
2018-03-18 21:14:06 +09:00
Koichiro IWAO
97c21bc972 sesman: default startwm.sh should use bash
as it sources bash_profile. And add comments.
Closes #1009.
2018-03-09 14:24:17 +09:00
fbourqui
3d9e7db849
Update xrdp_keyboard.ini
Add the missing Swiss French rdp_layout_ definitions, ch(fr) in X11
2018-03-05 12:11:31 +01:00
Koichiro IWAO
1690950cc8
common: regenerate dhparam
Generated by: openssl dhparam -C 2236
2018-03-01 13:48:22 +09:00
Koichiro IWAO
578d23477c
common: obey coding style, remove trailing space 2018-03-01 12:11:52 +09:00
Enrico Tagliavini
70b5adb396 add support for DHE ciphers via compiled in dhparam
make it possible to use regular (non EC) EDH ciphers. To make this
possible a Diffie-Hellman parameter must be passed to the openssl
library. There are a few options possible as described in the manuals at
[1] and [2]. Simplest approach is to generate a DH parameter using
openssl dhparam -C <lenght> and include the code into the application.
The lenght used for this commit is 2236 bits long, which is the longest
possible without risking backward incompatibilities with old systems as
stated in [1]. Newer systems should use ECDH anyway, so it makes sense
to keep this method as compatible with older system as possible.
Paramters longer than 2048 should still be secure enough at the time of
writing.

[1] https://wiki.openssl.org/index.php/Diffie-Hellman_parameters
[2] https://wiki.openssl.org/index.php/Manual:SSL_CTX_set_tmp_dh_callback(3)
2018-03-01 09:57:35 +09:00
Enrico Tagliavini
6cdc0f31b0 enable automatic ECDH when possible (openssl 1.0.2)
Openssl 1.1.0 and later are enabling ECDH automatically, but for older
version it must be enabled explicitly or all Perfect Forward Secrecy
ciphers will be silently ignored. See also [1]. This commit applies the
same fix as found in CnetOS 7 httpd package to enable automatic ECDH as
found in [2].

[1] https://wiki.openssl.org/index.php/Diffie-Hellman_parameters
[2] https://git.centos.org/blob/rpms!httpd.git/c7/SOURCES!httpd-2.4.6-ssl-ecdh-auto.patch
2018-03-01 09:57:35 +09:00
Koichiro IWAO
793a418cfb
common: log what value is set to tls_ciphers
Related to #1033.
2018-02-20 13:13:37 +09:00
Koichiro IWAO
3da4d72323
common: quit using ! as comment out symbol in config files
It is not used anywhere in default config. Some config like
`tls_ciphers` might contain `!` like this:

    tls_ciphers=FIPS:!aNULL:!eNULL

Fixes #1033.
2018-02-20 13:13:34 +09:00
Vraiment
fd37805ac0 Make sesman.ini dynamic for the location of the configuration file 2018-02-19 11:41:55 +09:00
Vraiment
9ed5243de9 Make xrdp.ini to be dynamic for each operating system 2018-02-19 11:41:55 +09:00
daixj
31ef2552c4 log: revert permission 2018-02-13 16:44:37 +09:00
daixj
828079b442 libxrdp: fix memory leak 2018-02-13 16:44:37 +09:00
daixj
ea6bb62410 log: fix fd checking 2018-02-13 16:44:37 +09:00
daixj
551bb185c5 log: remove unused code and fix potential memory leak 2018-02-13 16:44:37 +09:00
Vraiment
09712d70ad Added PAM support for MacOS 2018-02-07 21:21:59 +09:00
Koichiro IWAO
c50015122c
FreeBSD: rework setsid code
Pull request #650 is not valid to avoid run session twice.
It certainly stops running session twice but causes #1016.

In FreeBSD, sesman process will run like this. The intermediate
sesman is needed to detect session termination correctly.

xrdp-sesman (daemon)
    |
    +- xrdp-sesman (FreeBSD specific intermediate sesman)
        |
        +- xrdp-sesman (bsd sesion leader & each session)
             |
             +- Xorg
             +- startwm.sh
             +- xrdp-chansrv

To stop runninng session twice correctly, just exit before the
intermediate sesman executes Xorg, WM and chansrv.
2018-02-06 16:03:10 +09:00
Vraiment
4cee6726f8 Make changes to generate dylibs in mac again 2018-01-30 01:21:07 -08:00
Koichiro IWAO
e16029cbc2
fix leak of SCP_DISCONNECTED_SESSION
Pointed out by: #919
2018-01-23 11:16:26 +09:00
Jay Sorg
f763cb3788 fix for zombie processes sometimes appearing 2018-01-22 04:34:09 +00:00
Jay Sorg
acd05f365f xrdp: xrdp_encoder.c fix compile when XRDP_RFXCODEC is not defined 2018-01-22 04:32:36 +00:00
Jay Sorg
a64cb81a36 xrdp: fix some leaks in xrdp_encoder.c 2018-01-22 04:32:36 +00:00
Koichiro IWAO
b17c45d86f
fix potential fd leak
In most cases, checking fd > 0 is not valid. open(2) returns -1 on
error, 0 on stdin, 1 on stdout, 2 on stderr, >2 . The border should be
between -1 and 0. Additionally, between 2 and 3.

Pointed out by: #919
2018-01-17 09:38:28 +09:00
Koichiro IWAO
5daa09171e
devredir: fix xinode leak
Pointed out by: #919
2018-01-12 09:24:03 +09:00
Koichiro IWAO
08f847d74b
sesman: refactor, change variable names
session_variables1 -> env_names
session_variables2 -> env_values

Use the name used in callee function env_set_user(). The former names
are not clear.
2018-01-11 10:57:47 +09:00
Koichiro IWAO
dcf64e43ca
remove trailing space 2018-01-11 10:57:43 +09:00
Koichiro IWAO
f2db57afb0
fix indent 2018-01-09 14:09:13 +09:00
matt335672
3f2a017c97 Make listen check before daemon fork 2017-12-27 15:00:18 +00:00
Koichiro IWAO
256fa11951
update submodules to the latest release 2017-12-27 23:40:24 +09:00
Koichiro IWAO
060e04313b Bump version to v0.9.5 2017-12-27 23:29:21 +09:00
Koichiro IWAO
8fee3c0f3f
Update NEWS for v0.9.5 2017-12-27 23:26:57 +09:00
Dominik George
53eccc93a2 Simplify pulseaudio module build instructions 2017-12-26 19:06:36 +09:00
Koichiro IWAO
001cb3e2c6 README: add a link to wiki, how to set up audio redirection 2017-12-26 09:26:51 +09:00
Koichiro IWAO
93481365d1 pulse: replace old pulse notes with bran-new README 2017-12-26 09:26:51 +09:00
Dominik George
3244cb59d5 Fix memory corruption introduced by CVE-2017-16927 fix. 2017-12-21 14:07:51 +09:00
cocoon
84c160725a workaround for corrupted display with W2K8
workaround for corrupted display like black bars left of cmd with W2K8
2017-12-18 10:39:42 +09:00
Koichiro IWAO
d8bb32541a sesman: bring Xorg at the top in sesman.ini
as Xorg prefered recommended backend now. Add more comments.
2017-12-16 00:27:06 +09:00
Koichiro IWAO
942bb6316a add comment on sessions xrdp.ini 2017-12-16 00:27:06 +09:00
Koichiro IWAO
64a0deb9cf sesman: comment on non-suid Xorg in sesman.ini
Pointed out by: #923
2017-12-16 00:27:06 +09:00
rkantos
cdba988f52 Update xrdp_keyboard.ini
Add the missing? Finnish rdp_layout_ definitions. Makes my install now work with Finnish keyboard layout. (same as Swedish)
2017-12-14 14:43:04 +09:00
Koichiro IWAO
a20d5c29e8 xrdp_caps: remove unneeded comment on case statement 2017-12-01 11:20:42 +09:00
Koichiro IWAO
64f15d6553 xrdp_caps: constify and sort capability set 2017-12-01 11:20:42 +09:00
Koichiro IWAO
577bd8214f common: add more capset constants
defined at MS-RDPBCGR 2.2.1.13.1.1.1 [1] and sort

[1] https://msdn.microsoft.com/en-us/library/cc240486.aspx
2017-12-01 11:20:42 +09:00
Koichiro IWAO
77a34e0a7b common: express capability set constants in hex
as same as done in  MS-RDPBCGR 2.2.1.13.1.1.1 [1].

[1] https://msdn.microsoft.com/en-us/library/cc240486.aspx
2017-12-01 11:20:42 +09:00
Koichiro IWAO
788ae1467a xrdp_sec: constify color depth value 2017-12-01 11:20:42 +09:00
Koichiro IWAO
8d951ab02e xrdp_listen: suppress log when TRANS_STATUS_DOWN
The log is always logged when clients are disconnecting even though
nothing unusual is happening. This scares users too much. Actually,
some users created a issue on GitHub with the following log. It will
lose focus from the real error.

> [ERROR] Listening socket is in wrong state, terminating listener
2017-11-30 15:13:18 +09:00
Koichiro IWAO
fb8f0adcc4 remove useless braces 2017-11-30 15:13:18 +09:00
Koichiro IWAO
d0c27a2904 common: suppress log when closing log files
because if xrdp is running 'fork=yes' mode, the log message
'shutting down log subsystem...' is logged everytime when the child
process is exitting. In other words, everytime when clients are
disconnecting.  This is a little bit too vebose.
2017-11-30 15:13:18 +09:00
speidy
d958d1f018 sesman: scpv0, accept variable length data fields 2017-11-28 09:04:25 +09:00
Koichiro IWAO
3de3a4fab5 common: add more references to constants' origin
classify constants into these 5 types

* constants for xrdp
* constants come from ITU-T Recommendations
* constants come from Remote Desktop Protocol
* constants come from other MS products
* unclassified yet
2017-11-24 21:45:48 +09:00