CentOS7 xrdp 설치 (성공)

신규 설치한 CentOS7에 윈도우의 원격데스크탑을 이용하여 GUI를 이용하고 싶다.
고수들은 Xming 으로 일하는 것 같긴한데 난 여전히 Xming으로 성공해본적이 없다

1.yum install xrdp

Cap 2015-12-14 10-51-59-452

안된다…  검색 ㄱㄱ

출처 : http://wincloud.link:8090/pages/viewpage.action?pageId=6193176
Cap 2015-12-14 10-58-18-561

따라해본 내용
1. yum install epel-release -y
Cap 2015-12-14 10-59-54-013

2. yum -y install xrdp tigervnc-serverCap 2015-12-14 11-01-34-127
Cap 2015-12-14 11-02-05-477
3. systemctl start xrdp.service
Cap 2015-12-14 11-10-21-192
안뜬다 -_-;;
다시 검색 ㄱㄱ
출처 : http://ted1lee.blog.me/220255304044

4. rpm -Uvh http://li.nux.ro/download/nux/dextop/el7/x86_64/nux-dextop-release-0-1.el7.nux.noarch.rpm

5. yum -y install xrdp tigervnc-server
Cap 2015-12-14 11-17-27-526

6. systemctl start xrdp.service
Cap 2015-12-14 11-22-30-241
기동이 안됨…

7. systemctl enable xrdp.service
Cap 2015-12-14 11-23-45-307
서비스에 등록해보고 OS 재부팅해도 기동안됨

8. xrdp
Cap 2015-12-14 12-39-37-801
오잉?

9. 방화벽 오픈
firewall-cmd –permanent –zone=public –add-port=3389/tcp
sudo firewall-cmd –reload
Cap 2015-12-14 12-42-12-752

10. 원격데스크탑 프로그램으로 접속시도
Cap 2015-12-14 12-43-22-464
접속이 되지 않는다…
/var/log/xrdp.log 에 보면 이런 에러가 뜨고있다

[root@localhost ~]# tail -f /var/log/xrdp.log
[20151214-14:34:08] [INFO ] An established connection closed to endpoint: NULL:NULL – socket: 11
[20151214-14:34:09] [ERROR] Failure to connect to sesman: 127.0.0.1 port: 3350
[20151214-14:34:09] [INFO ] An established connection closed to endpoint: NULL:NULL – socket: 11
[20151214-14:34:09] [DEBUG] returnvalue from xrdp_mm_connect 1
[20151214-14:34:10] [INFO ] An established connection closed to endpoint: NULL:NULL – socket: 11
[20151214-14:34:11] [INFO ] An established connection closed to endpoint: NULL:NULL – socket: 11
[20151214-14:34:12] [INFO ] An established connection closed to endpoint: NULL:NULL – socket: 11
[20151214-14:34:13] [ERROR] Failure to connect to sesman: 127.0.0.1 port: 3350
[20151214-14:34:13] [INFO ] An established connection closed to endpoint: NULL:NULL – socket: 11
[20151214-14:34:13] [DEBUG] returnvalue from xrdp_mm_connect 1

나와 비슷한 에러를 겪었던 사람의 질문글 출처
https://www.centos.org/forums/viewtopic.php?f=49&t=51875

11.systemctl status xrdp.service
권한문제 같은 것이 보인다.
localhost.localdomain systemd[5376]: Failed at step EXEC spawning /usr/sbin/xrdp: Permission denied

Cap 2015-12-14 15-25-00-709

12. 권한 부여 [이것이 제일 중요!!]
chcon -t bin_t /usr/sbin/xrdp
chcon -t bin_t /usr/sbin/xrdp-sesman

권한주기 전
Cap 2015-12-14 15-28-12-369
권한주기 후
Cap 2015-12-14 15-29-19-093.jpg
딱히 바뀐건 없는것 같다.

13. systemctl start xrdp.service
Cap 2015-12-14 15-30-37-195
오홋 먼가 기동이 되었다

14. 원격데스크탑 접속
Cap 2015-12-14 15-33-05-060.jpg
로그인은 되는데 다른 에러가 발생한다.
VNC error – only supporting 8, 15, 16 and 24 bpp rdp connections 으로 다시 구글링

해결페이지 : http://c-nergy.be/blog/?p=5984
Cap 2015-12-14 15-36-08-741멋지다. 내가 원하던 답이 있었음

15. 원격데스크탑  색 설정 변경 (최고품질32비트 -> 트루컬러24비트)
Cap 2015-12-14 15-38-21-721

16. 원격데스트탑 접속 (성공!!)
Cap 2015-12-14 15-40-39-142

cent os 6 ( connect: Network is unreachable )

아무리해도 cent os에서 공유기 외부로 통신이 나가지 않아 엄청 헤맴

해결 방법이 좀 이상하지만…

해결책

vi /etc/sysconfig/network

[AS-IS]

NETWORKING=yes
HOSTNAME=hackers
GATEWAY=192.168.10.1

[TO-BE]

NETWORKING=yes
HOSTNAME=hackers
#GATEWAY=192.168.10.1

한 후에

service network restart

이제 ping google.com 하면 외부로 ping이 나간다.

Cap 2015-11-09 23-56-06-516

고정 IP설정

ifconfig -a 로 활성화 된 이더넷 카드 정보 확인

Cap 2015-11-10 00-04-11-738

eth1 이 살아있으니 해당 이더넷 장치에 대한 설정이 필요함

Cap 2015-11-10 00-05-38-168

ifcfg-eth1 이란 파일을 만든후 이런 내용을 기재한다.

Cap 2015-11-10 00-06-27-613

DEVICE=eth1
TYPE=Ethernet
IPADDR=192.168.10.20
NETMASK=255.255.255.0
ONBOOT=yes
NAME=eth1
BOOTPROTO=static
GATEWAY=192.168.10.1
IPV6INIT=no
USERCTL=no
HWADDR=00:25:11:C5:74:AD
PEERDNS=yes

yum 이용시 죄다 404 에러가 뜬다면 네트워크 설정에 문제가 있는 것이다.

dns 설정을 확인해야한다.

dns 설정은 vi /etc/resolve.conf 한 후 아래 내용을 추가하면 된다

nameserver 168.126.63.1
nameserver 164.124.101.2
그러나 실제로 cent os 6.3 버전이다보니 관련 라이브러리들이 미러서버에서 없어진것 같다…

[펌글]mod_jk를 이용한 Apache2 + Tomcat6.0.18 연동 및 가상호스팅

* 개요
이 문서는 80포트만이 열린 네트워크 환경에서 아파치(80포트)와 톰캣(8080포트)을 동시에 서비스 하기 위한

방법을 설명하고 있습니다.

* 시스템사항
Operating System: Centos5
Webserver: Apache 2.2.2
JDK: JDK 6.0
Servlet Container: Tomcat 6.0.18
Tomcat Connector: Jakarta Tomcat Connector mod_jk (not mod_jk2)
* 기본폴더
apache2 : /usr/local/apache
tomcat_home : /usr/local/tomcat
java_home : /usr/local/java
mod_jk : /usr/lib/apache/modules/mod_jk.so
* 설정 순서
1. mod_jk 설치
2. workers.properties 파일 만들기
3. 톰캣의 server.xml 수정
4. httpd.conf 수정
5. 가상호스팅
6. classpath 설정
* 설정설명
1. mod_jk 설치 및 tomcat_native 설치
1.1 mod_jk 설치
http://www.apache.org/dist/tomcat/tomcat-connectors/jk/source/jk-1.2.28/tomcat-connectors-1.2.28-src.tar.gz 을 다운 받아
압축을 푼다.
# cd tomcat-connectors-1.2.28-src
# ./configure –with-apxs=/usr/local/apache/bin/apxs
# make
# make install
1.2 tomcat_native 설치
fedora에서 apr관련 라이브러리 설치(apr-devel)
yum install apr*
tomcat-native.tar.gz 파일을 tomcat 디렉토리에서 찾아 압축을 푼다.
./configure –with-apr=/usr/bin/apr-1-config –with-java-home=/usr/local/java –with-ssl=yes –prefix=/usr/local/tomcat
make
make install
2. workeers.properties 파일 만들기
# vi /usr/local/apache/conf/workers.properties
#아래의 두 설정의 경로는 자신에 맞게 수정합니다.
workers.tomcat_home=/usr/local/tomcat
workers.java_home=/usr/local/java
ps=/
#아래 반복되는 worker1 대신 다른 이름도 상관없습니다.
worker.list=worker1
worker.worker1.port=8009
worker.worker1.host=localhost
worker.worker1.type=ajp13
worker.worker1.lbfactor=1
worker.loadbalancer.type=lb
worker.loadbalancer.balanced_workers=worker1
worker.inprocess.type=jni
3. 톰캣의 server.xml 수정
톰캣/conf/server.xml 에 아래의 코드를 추가합니다.
# vi /usr/local/tomcat/conf/server.xml

Server 태그 바로 아래쪽에 Listener 태그가 적힌곳에 추가하면 됩니다.
modjk와 workersConfig의 경로에 주의해서 자신에 맞게 수정합니다.
톰캣을 재시작 합니다.
# /etc/init.d/tomcat restart

에러없이 재시작 되면 아래와 같은 파일이 생성됩니다.
/usr/local/tomcat/conf/auto/mod_jk.conf
4. httpd.conf 수정
/usr/local/apache/httpd.conf 설정 파일에 아래의 코드를 추가합니다. 항상 경로에 신중하세요.

 

# vi /usr/local/apache/httpd.conf
# Load mod_jk module
# Update this path to match your modules location
#LoadModule jk_module /usr/local/apache/modules/mod_jk.so
# Where to find workers.properties
# update this path to match your conf directory location
JkWorkersFile /usr/local/apache/conf/workers.properties
# Where to put jkshared Memory
JkShmFile /usr/local/apache/logs/mod_jk.shm
# where to put jk logs
JkLogFile /usr/local/apache/logs/mod_jk.log
# Set the jk log level [debug/error/info]
JkLogLevel info
JkLogStampFormat “[%a %b %d %H:%M:%S %Y] ”
JkRequestLogFormat “%w %V %T”

파일을 저장하고 아파치를 재시작 합니다.
브라우저에서 http://127.0.0.1로 접속했을때 톰캣 페이지가 보이면 연동된 것입니다.
5. 가상호스팅
아파치, 톰캣 각각의 가상호스팅 설정에 대해서 자세히 다루지는 않겠습니다.
아파치, 톰캣 두개의 가상호스팅 설정이 일치해야 연동에 문제가 없습니다.
아파치의 가상호스팅

DocumentRoot /home/test/public_html
ServerName test.co.kr
ServerAlias http://www.test.co.kr
JkMount /*.jsp worker1
JkMount /*.do worker1
JkMount /servlet/* worker1

톰캣의 가상호스팅(server.xml)
# vi /usr/local/tomcat/conf/server.xml
아래 구문을 추가한다.

# cd /usr/local/tomcat/conf/Catalina
# mkdir http://www.test.co.kr
# cd http://www.test.co.kr
가상호스트 설정파일을 만든다.
# vi ROOT.xml
아래 내용을 ROOT.xml에 작성한다.

tomcat 재시작
apache 재시작
6. classpath 설정
가상호스트의 WEB-INF를 인식하지 못하는 경우 /usr/local/tomcat/bin/setclasspath.sh 파일을 아래와 같이 수정
CLASSPATH= 구문 대신 아래 코드를 추가 입력한다.
CLASSPATH=”$CLASSPATH:$CATALINA_HOME/lib/el-api.jar:$CATALINA_HOME/lib/servlet-api.jar:$CATALINA_HOME/lib/jsp-api.jar”
home_root=’/home’
cd $home_root
for home_name in $(ls)
do
if [ -d “$home_root/$home_name/public_html/WEB-INF/classes” ] ; then
CLASSPATH=”$CLASSPATH:$home_root/$home_name/public_html/WEB-INF/classes”
fi
if [ -d “$home_root/$home_name/public_html/WEB-INF/lib” ] ; then
CLASSPATH=”$CLASSPATH:$home_root/$home_name/public_html/WEB-INF/lib”
fi
done
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CATALINA_HOME/lib
export LD_LIBRARY_PATH
class.jsp 파일을 다음과 같이 작성하여 classpath 확인
<%@page contentType=”text/html; charset=euc-kr”%>
<%=System.getProperty(“java.class.path”)%>

[출처] [강추!!!]mod_jk를 이용한 Apache2 + Tomcat6.0.18 연동 및 가상호스팅 (webdori) |작성자 풍사