본문 바로가기

Linux/Linux실습

Linux_p #12

           SSL 활용하기(Secure Socket Layers)

SSL을 이용한 키로 ssh, scp, https, sftp 등에 활용하면 일반적인 평문장 연결이 아닌 키를 사용하는 암호화된 연결을 이루므로 보안이 좋아진다.

유명 포털 사이트는 이미 불특정 사용자들의 접속하는 것을 대비해서 각 브라우저별로 인증서를 넣어 두었다. 중소기업에서는 자신의 SSL을 사용하는 서비스에 접속하려면 브라우저에 SSL 키가 있어야 한다.

 

# yum -y install gcc-c++

 

gcc hack.c -o hack

 

 

 

# nano /etc/hosts

 

 

 

 

 

 

SSL을 이용해 키 만들기

 

->인증서 요청서 생성

 

/etc/pki/tls/openssl.cnf 에서 디폴트로 설정 가능

->key, csr 확인

 

x509 = 정식 인증성 생성

 

->확인

 

#openssl x509 -in www.kahn.edu.crt -noout -text

 

 

# cp -arp www.kahn.edu.* /etc/pki/tls/certs/

# chmod +x -R /etc/pki/tls/certs/*

 

->certs아래에는 누구나 실행해라(실행파일로 만들기)

# ls -dl /etc/pki/tls/certs/

->확인

 

# nano /etc/httpd/conf/httpd.conf

맨 밑에

NameVirtualHost *:443

<VirtualHost *:443>

  SSLEngine on

  SSLCertificateFile /etc/pki/tls/certs/www.kahn.edu.crt

  SSLCertificateKeyFile /etc/pki/tls/certs/www.kahn.edu.key

  DocumentRoot /var/www/html

  ServerName www.kahn.edu

  ErrorLog /var/log/ssl_kahn_edu_error.log

</VirtualHost>

 

# vim /etc/httpd/conf.d/ssl.conf

59줄 주석제거

60줄 주석제거 www.kahn.edu:443

100/etc/pki/tls/certs/www.kahn.edu.crt

107/etc/pki/tls/private/www.kahn.edu.key

 

# firewall-config

->http, https check

# firewall-cmd --reload

 

# iptables -nL --line-numbers

->80, 443 포트 확인

# setenforce 0

# getenforce

->Per

 

# service httpd restart

 

 

.htpasswd

->웹 사용자의 연결을 제한하는(연결시 패스워드) / 웹 서버의 보안을 더욱 증가시킬 수 있다.

 

# nano /etc/httpd/conf.d/auth-basic.conf

 

# htpasswd -c /etc/httpd/conf/.htpasswd centos

centos

centos

# htpasswd /etc/httpd/conf/.htpasswd ubuntu

ubuntu

ubuntu

 

->centos / ubuntu 두줄이 나와야 한다.

 

# mkdir /var/www/html/auth-basic

# echo "<h1>Secured CentOS Web Page</h1>" > /var/www/html/auth-basic/index.html

service httpd restart

 

# cp -arp /etc/pki/tls/certs/www.kahn.edu.crt /home/centos/Desktop/

 

 

--ubuntu2

apt -y install ssh

ufw allow 22/tcp

 

 

 

firefox - settings - Privacy&Security - Certificates - View Certificate - import - 우측상단 open - Desktop - Trust~websites. check - ok - itKOREA 키 확인

 

# firefox https://www.kahn.edu/auth-basic - Advanced - accept - ubuntu - ubuntu

 

 

--win7

crt파일 가져와서

관리자 권한으로 메모장 오픈

c - windows - System32 - drivers - etc - hosts

192.168.100.129 www.kahn.edu www

저장

 

인터넷 오픈 - 도구 - 인터넷 옵션 - 내용 - 인증서의 인증서 - 가져오기 - 인증서 가져오기 - 파일이름:찾아보기 - crt 파일 입력 후 next - 인증서 저장소:찾아보기 - 신뢰할 수 있는 루트 인증 기관 선택 후 확인 - 인증서 가져오기 마법사 완료 - 마침 - 보안경고 , - 확인

인증서 - 신뢰할 수 있는 루트 인증 기관에서 kahn 확인

https://www.kahn.edu/auth-basic

 

/etc/pki/tls/openssl.cnf 에서 디폴트 설정 가능

-----------------------------------------------------------------------------------------------

 

---ubuntu2

 

a2enmod ssl

mkdir /etc/apache2/ssl

openssl req -x509 -nodes -days 365 -newkey rsa:1024 -keyout /etc/apache2/ssl/www.kahn.edu.key -out /etc/apache2/ssl/www.kahn.edu.csr

cd /etc/apache2/ssl/

openssl x509 -signkey www.kahn.edu.key -days 365 -in www.kahn.edu.csr -out www.kahn.edu.crt

ls /etc/apache2/ssl

->crt, csr, key 3개 확인

ufw allow 80, 433, 22/tcp

vim /etc/apache2/sites-available/000-dafualt.conf

<VirtualHost *:443>

ServerAdmin webmaster@localhost 밑에

ServerName www.kahn.edu

DocumentRoot /var/www/html

SSLEngine on

SSLCertificateFile /etc/apache2/ssl/www.kahn.edu.crt

SSLCertificateKeyFile /etc/apache2/ssl/www.kahn.edu.key

 

--centos1

nano etc/hosts

192.168.100.131 www.kahn.edu

 

service httpd. restart

firefox https://www.kahn.edu

scp ubuntu@192.168.100.131:/etc/apache2/ssl/* /etc/pki/tls/certs/

->key x

 

--ubuntu2

scp /etc/apache2/ssl/* root@192.168.100.129:/etc/pki/tls/certs/

 

--centos1

ls /etc/pki/tls/certs/

->crt, csr, key 확인

firefox

->settings - privacy & security - view certificate - import - /etc/pki/tls/certs/ www.kahn.edu - trust check

firefox https://www.kahn.edu

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

->key + crt = pem

 

 

 

 

 

 

->59줄, 60줄

 

100

 

->122

 

# nano /etc/httpd/conf.d/web.conf

<VirtualHost *:80>

ServerName www.kahn.edu 

Redirect permanent / https://www.kahn.edu  # http로 들어와도 https로 연결됨

</VirtualHost>

<VirtualHost *:443>

ServerName www.kahn.edu

DocumentRoot /var/www/html # 여기에 홈페이지 index.html 파일이 있음

SSLEngine on # SSL을 활성화 시킴

SSLCertificateFile /etc/pki/tls/certs/www.kahn.edu.crt

SSLCertificateKeyFile /etc/pki/tls/certs/www.kahn.edu.key

SSLCACertificateFile /etc/pki/tls/certs/ca.crt

</VirtualHost>

 

# service httpd restart

#openssl verify -CAfile ca.crt www.kahn.edu.pem

 

# scp root@192.168.100.138:/etc/pki/tls/certs/* /etc/pki/tls/certs/

# firefox https://kahn.edu

 

 

 

 

 

 

 

'Linux > Linux실습' 카테고리의 다른 글

Linux_p #14  (0) 2023.03.22
Linux_p #13  (0) 2023.03.14
Linux_p #11  (0) 2023.02.13
Linux_p #10  (0) 2023.02.09
Linux_p #9  (0) 2023.02.07