블로그 이미지
은총애비!!

카테고리

분류 전체보기 (2526)
Linux (35)
Error 해결 방법 (5)
소소한 일상 (1621)
사진실 (0)
책책책, 책을 읽읍시다!! (21)
기타(JSP & DB & 등등) (4)
미국 주식 관련 (541)
아침형 인간 프로젝트 (292)
Total
Today
Yesterday
반응형

2. apache 설치 & /etc/profile 수정(gcc 설치 확인)

 

「rpm으로 httpd 설치 되어 있는지 확인」

[root@localhost qual]# rpm -qa |grep http

httpd-tools-2.2.15-5.el6.i686

httpd-2.2.15-5.el6.i686

[root@localhost qual]# rpm -e --nodeps httpd-tools-2.2.15-5.el6.i686

[root@localhost qual]# rpm -e --nodeps httpd-2.2.15-5.el6.i686

[root@localhost qual]# rpm -qa |grep http

[root@localhost qual]#

 

 

[root@localhost qual] # tar zxvf httpd-2.2.22.tar.gz

[root@localhost qual] # cd httpd-2.2.22

[root@localhost httpd-2.2.22 ] # ./configure \

--prefix=/usr/local/src/apache \ <---아파치 설치 할 위치

--enable-modules=ssl \

--with-ssl=/usr/bin/openssl \ <--- 기본 /usr/bin/openssl 그 외 openssl을 설치한 폴더 (rpm -ql openssl 확인함...)

--enable-mods-shared=all \

--enable-so \

--enable-rewrite \

--enable-proxy \

--enable-proxy-ajp \

--enable-proxy-balancer \

--enable-proxy-http \

--enable-proxy-connect \

--enable-ssl <----------- 이부분이 중요합니다.

 

 

 

[root@localhost httpd-2.2.22 ] # ./config.nice

 

 

 

configure: error: ...No recognized SSL/TLS toolkit detected 에러시

yum install openssl-devel

 

[root@localhost httpd-2.2.22 ] # make && make install

 

 

 

[root@localhost httpd-2.2.22 ] # cp /etc/profile /etc/profile.bak2

[root@localhost httpd-2.2.22 ] # vi /etc/profile

export APACHE_HOME=/usr/local/src/apache

export PATH=$PATH:$APACHE_HOME/bin

 

추가한 후 저장하고 나온다.

 

 

[root@localhost httpd-2.2.22 ] # source /etc/profile

[root@localhost httpd-2.2.22 ] # system-config-firewall에서 방화벽에가서 80포트를 열어 줌.

 

 

 

[root@localhost httpd-2.2.22 ] # apachectl [start|stop]

 

 

 

http://localhost에서 또는 http://IP주소

It works! 나오면 성공!!

 

 

Apache도 생각 보다 어렵지 않습니다.

 

따라만 하시면 됩니다.

 

만약 저와 같은 버전이 필요하시면 메일 주소 알려주시면 보내드리겠습니다.

 

감사합니다.

반응형
Posted by 은총애비!!
, |
반응형

[Linux Server] OpenSSH Source Compile

 

설치 전 사항 : pam-devel 패키지 설치 및 업데이트

 

설치 순서

1. openssh 다운로드

2. 기존 openssh 패키지 삭제

3. ./configure

4. make & make install

5. 파일 복사 & 부팅시 자동 실행 등록

 

「현재 OpenSSL 버전 확인」

[root@localhost qual]# ssh -V

OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010

[root@localhost qual]#

 

1. openssh 다운로드

「https://www.openssh.com/portable.html 에서 다운 받습니다.」

「홈페이지에서 최신 버전을 확인 후

http://fastly.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.6p1.tar.gz 뒤의 버전 부분을 수정해도 최신버전으로 다운 받습니다.」

 

 

[root@localhost qual]# wget http://fastly.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openssh-7.6p1.tar.gz

--2017-10-11 00:01:00-- http://fastly.cdn.openbsd.org/pub/OpenBSD/OpenSSH/portable/openss h-7.6p1.tar.gz

Resolving fastly.cdn.openbsd.org... 151.101.74.49, 2a04:4e42:11::561

Connecting to fastly.cdn.openbsd.org|151.101.74.49|:80... connected.

HTTP request sent, awaiting response... 200 OK

Length: 1489788 (1.4M) [text/plain]

Saving to: `openssh-7.6p1.tar.gz.1'

 

100%[================================================>] 1,489,788 1.32M/s in 1.1s

 

2017-10-11 00:01:02 (1.32 MB/s) - `openssh-7.6p1.tar.gz.1' saved [1489788/1489788]

 

[root@localhost qual]#

 

 

2. 기존 openssh 패키지 삭제

「우선 rpm으로 openssh 설치 된 것들을 지운다.」

[root@localhost qual]# rpm -qa |grep openssh

openssh-server-5.3p1-20.el6.i686

openssh-clients-5.3p1-20.el6.i686

openssh-5.3p1-20.el6.i686

openssh-askpass-5.3p1-20.el6.i686

[root@localhost qual]# rpm -e --nodeps openssh-server-5.3p1-20.el6.i686

 

 

 

「의존성 때문에 순서대로 지워야 하지만 의존성 무시하고 지워도 됩니다.(rpm -e --nodeps 패키지명)

 

패키지를 삭제하고나면 ssh 서비스를 중지하고 텔넷이나 서버에서 아래와 같이 작업을 해야 합니다.

서비스 중지 : service sshd stop

 

3. ./configure

[root@localhost openssh-7.6p1]# ./configure --prefix=/usr/local/openssh --with-ssl-dir=/usr/local/openssl/bin --with-tcp-wrappers --with-pam --with-md5-passwords

 

--prefix= : SSH 설치 경로

--with-ssl-dir= : SSL 설치 디렉토리 ----------> 정말 중요!!

--with-md5-passwords : MD5 암호화 알고리즘을 사용해서 더 안정적인 보안을 제공

 

 

 

사실 이 에러 OpenSSL library 때문에 정말 고생 많았다. 그래서 OpenSSL을 다시 설치하길 몇번이나 했는지..ㅠ,.ㅠ 어째든 이 에러 때문에 OpenSSL prefix를 다시 설정 해주니 된다.

 ./configure 에서 --with-ssl-dir=/usr/local/openssl/bin  <- 이부분 만 잘 해주면 된다. 그럼 아래와 같은 에러는 절대 없다!!

 

 

 

4. make & make install

[root@localhost openssh-7.6p1]# make && make install

 

 

5. 파일 복사 & 부팅시 자동 실행 등록

「contrib 디렉토리에 sshd.pam.generic 파일을 /etc/pam.d sshd 로 복사」

[root@localhost openssh-7.6p1]# cp ./contrib/sshd.pam.generic /etc/pamd.sshd

 

「실행」

[root@localhost openssh-7.6p1]# /usr/local/openssh/sbin/sshd

 

「부팅시 자동 실행」

[root@localhost openssh-7.6p1]# vi /etc/rc.d/rc.local 마지막 부분에 추가

/usr/local/openssh/sbin/sshd &

 

 

 

설정 마치고 다시 접속 하니 처음 접하는 화면

 

 

 

로그인 하고 설치된 버전 확인!!

 

 

 

PAM 패키지 때문에 에러. yum -y install pam-devel 해주면 된다.

 

이상 OpenSSH Source Compile 끝!!

반응형
Posted by 은총애비!!
, |
반응형

[Linux Server] OpenSSL source compile

17.10.10 update : ./config --prefix 변경



설치 전 사항 : gcc make openssl-devel zlib zlib-devel 패키지 설치 및 업데이트

설치 순서
1. openssl 다운로드
2. ./config
3. make & make install
4. 에러 해결 방법

source 설치이기 때문에 rpm으로 검색하면 이전 버전이 나옵니다.
이전 버전의 openssl에 현재 버전을 덮어씌운 것입니다.

혹시 모를 상황에 대비해 이전 버전을 확인후 백업해 놓습니다.
[root@localhost qual]# find / -name openssl
/usr/lib/openssl
/usr/include/openssl
/usr/bin/openssl----------------> 현 버전이 있는 곳
[root@localhost qual]# cp /usr/bin/openssl /usr/bin/openssl.bak

「현재 OpenSSL 버전 확인」
[root@localhost qual]# openssl version
OpenSSL 1.0.1e-fips 11 Feb 2013
[root@localhost qual]#

「https://www.openssl.org/source/ 에서 최신 버전 확인」
현 최신 버전인 1.1.0f 버전을 다운 받습니다.

wget https://www.openssl.org/source/openssl-1.1.0f.tar.gz 으로 다운 받습니다.
홈페이지에서 최신 버전을 확인 후 https://www.openssl.org/source/openssl-1.1.0f.tar.gz 뒤의 버전 부분을 수정해도 최신버전으로 다운 받습니다.

1. openssl 다운로드
[root@localhost qual]# wget https://www.openssl.org/source/openssl-1.1.0f.tar.gz
--2017-10-06 22:33:14-- https://www.openssl.org/source/openssl-1.1.0f.tar.gz
Resolving www.openssl.org... 202.43.55.100, 2600:1417:8000:391::c1e, 2600:1417:8000:394::c1e
Connecting to www.openssl.org|202.43.55.100|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 5278176 (5.0M) [application/x-gzip]
Saving to: `openssl-1.1.0f.tar.gz'

100%[==============================================================================================================================>] 5,278,176 257K/s in 15s

2017-10-06 22:33:33 (335 KB/s) - `openssl-1.1.0f.tar.gz' saved [5278176/5278176]

[root@localhost qual]#

「이제 압축을 해제 합니다」
[root@localhost qual]# tar zxvf openssl-1.1.0f.tar.gz

「압축을 해제한 openssl 디렉토리로 이동합니다.」
[root@localhost qual]# cd openssl-1.1.0f

2. ./config
[root@localhost openssl-1.1.0f]# ./config --prefix=/usr/local/openssl shared enable-md2 zlib
(--prefix 옵션을 주지 않으면 기본적으로 /usr/local 밑으로 나눠서 설치.
hearder(.h)는 /usr/local/include/openssl, openssl 실행파일은 /usr/local/bin, library는 /usr/local/lib/openssl 디렉토리에 설치)

 



「이제 make & make install을 해줍니다.」
3. make & make install
[root@localhost openssl-1.1.0f]# make
[root@localhost openssl-1.1.0f]# make install
「한번씩 하기 귀찮다면 한방에!!(에러가 없다면 다음으로 넘어갑니다) => make && make install」

 

「openssl 파일을 찾습니다」
[root@localhost openssl-1.1.0f]# find / -name openssl
/home/qual/openssl-1.1.0f/apps/openssl
/home/qual/openssl-1.1.0f/include/openssl
/usr/lib/openssl
/usr/local/openssl
/usr/local/openssl/share/doc/openssl
/usr/local/openssl/include/openssl
/usr/local/openssl/bin/openssl ----------------------> 새로 설치한 openssl
/usr/include/openssl
/usr/bin/openssl ----------------------> 이전 버전 openssl
[root@localhost openssl-1.1.0f]#

「이제 새로 설치한 openssl을 /usr/bin/openssl로 덮어쓰기 합니다.」
[root@localhost openssl-1.1.0f]# cp /usr/local/openssl/bin/openssl /usr/bin/openssl
[root@localhost openssl-1.1.0f]# openssl version
./openssl: error while loading shared libraries: libssl.so.1.1: cannot open shared object file: No such file or directory
[root@localhost openssl-1.1.0f]#

4. 에러 해결 방법
「새로 설치한 openssl의 lib 경로 설정 해줍니다. (libcrypto.so.1.1, libssl.so.1.1 의 파일 위치 찾기)」
[root@localhost home]# cd /usr/local/openssl/lib/
[root@localhost lib]# ls
engines-1.1 libcrypto.a libcrypto.so libcrypto.so.1.1 libssl.a libssl.so libssl.so.1.1 pkgconfig
[root@localhost lib]# pwd
/usr/local/openssl/lib
[root@localhost lib]# cd /etc/ld.so.conf.d/
[root@localhost ld.so.conf.d]# ls
atlas-i386.conf kernel-2.6.32-71.el6.i686.conf mysql-i386.conf xulrunner-32.conf
[root@localhost ld.so.conf.d]# vi openssl-1.1.0f.conf--------------> 파일명(알기 쉽게!!)
/usr/local/openssl/lib------------------> 추가 내용
추가합니다.
[root@localhost ld.so.conf.d]# ldconfig
[root@localhost ld.so.conf.d]# openssl version
OpenSSL 1.1.0f 25 May 2017
컴파일한 최신 버전 확인


기존 실행파일만 교체했기 때문에 yum info openssl 명령과 rpm -qa |grep openssl 명령으로는 아무런 변화를 찾을수 없다.

./config에서 --prefix 때문에 OpenSSH 설치에서 정말 많이 고생했다. OpenSSL만 50번은 족히 컴파일 했으며 OpenSSH도 20번 이상 컴파일해본 결과 최종적인 결과물이다.

다음은 OpenSSH 설치 방법!!

반응형
Posted by 은총애비!!
, |
반응형

[MicroServer G7 N54L] Linux Kernel 4.6.2 compile

 

 

kernel 컴파일시 추가 패키지 목록

- ncurses-devel hmaccalc binutils-devel qt-devel gcc make

 

 

https://www.kernel.org/ 에서 버전을 다운 받을수 있습니다.

 

 

wget https://www.kernel.org/pub/linux/kernel/v4.x/linux-4.6.2.tar.gz

 

 

위와 같이 리눅스 쉘상태에서도 wget로도 다운 받을 수 있습니다.

 

커널을 다운 받고 디렉토리 안으로 들어가 아래와 같이 순서대로만 하시면 됩니다.

 

1. make mrproper

※반드시 1번 후에 config-xxx파일을 복사 해야 합니다.

2. make menuconfig => /boot/config-xxx 커널 위치에 .config로 복사후 menuconfig에서 LOAD후 make oldconfig 적용

3. make oldconfig => 기존 설정 적용

4. make clean

5. make all

6. make modules

7. make modules_instal

8. make install

9. make -j4 all && make -j4 modules && make -j4 modules_install && make -j4 install

 

 

 

 

 

ERROR: modinfo: could not find module snd_page_alloc

ERROR: modinfo: could not find module output

ERROR: modinfo: could not find module crc_t10dif

 

 

그런데 말입니다..예전 3.x버전에서는 이런 에러가 없었는데..모듈관련 에러가 있습니다.

 

 

 

 

lsmod로 모듈이 있는지 확인해 봤습니다.

 

 

빨간색 네모는 컴파일시 모듈을 못찾는다는 에러..

 

 

노란색 네모는 lsmod로 모듈을 확인해 보았습니다.

 

 

하얀색은 에러난 모듈을 검색해서 나온 결과 입니다.

 

 

현재 버전에서 모듈을 검색해본 결과 입니다.


 

 

 

vi /boot/grub/grub.conf에서

default=1번을 defaule=0번으로 수정하고 reboot

 

 

아래의 사진은 커널 업데이트 하고 모듈을 확인해 보았습니다.

 

컴파일 후 하위 버전에서는 분명 확인 했었습니다.

 

 

 

 

그런데 말입니다. 아까 하얀색 네모를 검색해보니 이름이 바껴서 모듈이 제대로 올라왔습니다. 이게 에러인지 아닌지 정확하게는 알 수는 없지만..일단 제대로 컴파일 되고 사용하는데는 무리가 없어 보입니다.

 

 

 

에러를 보고나서 정말 20번 이상은 컴파일 했습니다. 리눅스도 몇번 다시 설치도 해보고 커널 버전도 바꿔서 해보고..모듈 검색과 추가/삭제도 알게 되고..많은 시간을 들였지만 그래도 몇가지 정보와 지식을 얻었으니 다행이라고 생각합니다.

반응형
Posted by 은총애비!!
, |
반응형

[MicroServer G7 N54L] Linux Kernel 3.16.3 compile

 

그전에 미리 설치 해야할 패키지 들이 있습니다.

ncurses-devel, hmaccalc, qt-devel, binutils, binutils-devel, make, gcc, lib, zlib, apr, apr-util, apr-devel,

libtool/automake/autoconf/compat*

설치가 되어 있으면 굳이 안하셔도..그러면 업데이트?~~ 이왕이면 최신버전이 좋겠지요?

 

1. kernel 파일을 다운 받는다.

- www.kernel.org  홈페이지에서 다운 받아도 되고 아래처럼 wget로 다운받아도 됩니다.

그래도 아래와 같이 버전별로 있으니 홈페이지에서 확인하고 받으시길 바랍니다.!!

ex) wget https://www.kernel.org/pub/linux/kernel/v3.0/linux-3.16.3.tar.gz -> 커널 버전

 

2. 압축을 풉니다.

※ boot안에 config 파일을 커널 파일이 있는 곳에 .config로 복사한다.

그리고 make menuconfig에서 Load해서 현 리눅스에 설정을 불러온다!!(기존 설정을 불러와서 컴파일 하는 것을 추천)

[root@localhost linux-3.16.3]# make mrproper => 의존성 제거

[root@localhost linux-3.16.3]# make menuconfig => 메뉴 형식의 커널 환경 설정

SAVE 하면 .config 파일에 저장.

 

[root@localhost linux-3.16.3]# make dep => 위에서 설정한 대로 다시 의존성 작업을 함

[root@localhost linux-3.16.3]# make clean => 컴파일 하기 이전 컴파일 작업 파일(.o)등을 깨끗이 삭제 함

 

[root@localhost linux-3.16.3]# make bzImage => 실제 커널 이미지를 만들기 위한 컴파일 명령어

[root@localhost linux-3.16.3]# make modules => 옵션에서 설정한 모듈을 컴파일

[root@localhost linux-3.16.3]# make modules_install => 컴파일된 모듈을 설치

[root@localhost linux-3.16.3]# make install 을 해야 vmlinuz-3.16.3 파일이 생성됨.

[root@localhost linux-3.16.3]# make bzImage; make modules; make modules_install ;make install

 

시간이 오래 걸리니 위에 명령어 처럼 한방에 해결 하자!!

속도가 느린 VMWARE에서 6시간 정도 예상!! 그래야 속 편함...

빠른 시스템에서는 좀더 빠르겠지요?

 

[root@localhost linux-3.16.3]# make bzImage && make modules && make modules_install && make install

&& 이전단계에서 에러가 없을시 다음 단계로 진행함!!

 

마지막 make install하는데 에러 메세지가 나왔지만 걍 무시!!

ERROR: modinfo: could not find module vmware_balloon

vmware_balloon module을 찾을 수 없다는데...

 

vi /boot/grub/grub.conf에서

default=1번을 defaule=0번으로 수정하고 reboot

 

 

커널 컴파일 완료!!

반응형
Posted by 은총애비!!
, |

최근에 달린 댓글

최근에 받은 트랙백

글 보관함