본문 바로가기

분류 전체보기

(312)
[OpenVPN] Client Key 파기 + Key 관리 Client Key 파기 > cd /etc/openvpn/easy-rsa > ./easyrsa revoke client1 Note: using Easy-RSA configuration from: /etc/openvpn/easy-rsa/vars Using SSL: openssl OpenSSL 1.0.2k-fips 26 Jan 2017 Please confirm you wish to revoke the certificate with the following subject: subject= commonName = client1 Type the word 'yes' to continue, or any other input to abort. Continue with revocation: yes Using confi..
[OpenVPN] Server 구축 및 Client.ovpn 생성(인증서 기반) (2) Client.ovpn 설정 Openvpn client connect를 이용하여 접속시 필요한 profile 작성 client key는 server.conf 에서와 같이 path 참조 형태가 아닌 설정 파일에 포함하는 식으로 작성하여 1개의 파일로 만들어 배포 client remote proto tcp dev tun port # ca.crt 복사 붙여 넣기 -----BEGIN CERTIFICATE----- MIIDITCCAgmgAwIBAgIJAMPaoNTeUspRMA0GCSqGSIb3DQEBCwUAMBAxDjAMBgNV .... -----END CERTIFICATE----- # client의 crt 파일 복사 붙여 넣기 -----BEGIN CERTIFICATE----- MIIDOzCCAiOgAwIBAgIQ..
서버의 TLS 버전 확인 방법 OpenSSL을 이용한 확인 openssl s_client를 이용하여 tls 버전 별로 negotiation 테스트 및 지원 여부를 알 수 있다. s_client tls protocol 관련 args usage: s_client args ... -ssl3 - just use SSLv3 -tls1_2 - just use TLSv1.2 -tls1_1 - just use TLSv1.1 -tls1 - just use TLSv1 -dtls1 - just use DTLSv1 ... TLS 1.2 아래와 같이 지원 가능 결과 출력 > openssl s_client -connect ploz.tistory.com:443 -tls1_2 ... New, TLSv1/SSLv3, Cipher is ECDHE-RSA-AES256..
[OpenVPN] Server 구축 및 Client.ovpn 생성(인증서 기반) (1) 설치 CentOS7 x86_64 설치는 패키지 관리자로 설치 yum install epel-release yum install openvpn easy-rsa Server Config 인증서 기반 접속 서버 설정 vim /etc/openvpn/server.conf ## Start of server.conf## ## openvpn 바인드 포트 port 21194 ## Protocol 종류(Tcp/Udp 지원) proto tcp ## 터널링시 os상 생성 될 interface 이름 dev tun ## TLS 설정 tls-server tls-auth /etc/openvpn/easy-rsa/pki/ta.key key-direction 0 auth SHA512 cipher AES-256-CBC ## 터널링에 사용될..
[REDIS] Sentinel + Haproxy + Keepalived를 이용한 Redis HA LoadBalance 구축 (2) 구축 정보Spec서버 3대 CentOS7 x86_64 TEST1 : 10.10.10.240, Redis SlaveTEST2 : 10.10.10.241, Redis MasterTEST3 : 10.10.10.242, Redis SlaveVIP : 10.10.10.243Redis Write Port 5000Redis Read Port 5001 버전Keepalived : keepalived-1.3.5-19.el7.x86_64Haproxy : haproxy-1.5.18-9.el7_9.1.x86_64Redis : 4.0.9 설치Redis설치는 여기 참조.Keepalived, Haproxy는 yum 패킷지 관리자로 설치yum install keepalived haproxy 설정KeepalivedTEST1, TEST2..
[REDIS] Sentinel + Haproxy + Keepalived를 이용한 Redis HA LoadBalance 구축 (1) 기 구축 Redis 시스템 구조 RDB(no save) + Replication 총 3대 구성 Slave 2(REDIS-2,3)대가 각각 Master(REDIS-1)에 Repl 동기화를 하는 구조 Master → RW, Slave(REDIS-2) → RO 로 클라이언트에서 RIP로 직접 접근 문제점 Master Down 시 Role change 되지 않음. → 쓰기 실패하고 수동 Role Change 지연 발생 Redis의 Role이 변경 된 경우 클라이언트에서 RW, RO Redis의 IP, Port의 Sync 필요. RDB만 사용하고 SAVE 하지 않아 Data 유실 위험 Redis + Sentinel + Haproxy + Keepalived 를 이용한 변경 구성 Keepalived VRRP를 이용한..
[REDIS] 메모리 단편화(memory fragmentation) 해소 이슈 파악 redis 의 mem_fragmentation_ratio 값이 1.5로 설정 되어 있었고 이 수치를 넘어 서게 될 경우 단편화를 의심해 봐야 한다고 판단함. mem_fragmentation_ratio 값이 점점 상승하여 1.5를 넘어섬 redis info memory > info ... # Memory used_memory:21303688 used_memory_human:20.32M used_memory_rss:32083968 used_memory_peak:25667096 used_memory_peak_human:24.48M used_memory_lua:36864 mem_fragmentation_ratio:1.51 mem_allocator:jemalloc-3.6.0 ... used_memory..
[REDIS] AOF & RDB 결론 AOF(Append Only File) 와 RDB(Snapshot) 를 어떤 식으로 운영 해야 할까? - 데이터가 좀더 중요한 환경이라면 AOF와 RDB를 동시에 운영하고 AOF를 기본으로 RDB를 서브로 운영한다. - AOF의 appendfsync 를 everysec으로 하고 rewrite 기능을 사용하여 데이터 유실을 최소화 하고 RDB를 옵션으로 운영하여 복구 시간에 이점을 가져간다. AOF(Append Only File) AOF는 명령이 실행 될때 마다 기록. save 옵션에 따라 운영되는 RDB에 비해 데이터 손실이 거의 없음. 입력/수정/삭제 명령이 실행될때 마다 기록되며 조회 명령은 기록되지 않음. AOF 파일이 무한히 커지는 것을 방지 하고자 rewrite을 사용함. rewrite는 ..
[REDIS] Config 설정 기본 설정 bind 0.0.0.0 - bind IP, default 127.0.0.1 - 최대 16개 까지 지정가능 port 8301 - bind port - default 6379 tcp-backlog 511 - tcp half open시 저장할 backlog 값 - 이 값은 sysctl의 syn_backlog, somaxconn값과 연관이 있음. # redis config tcp-backlog 1024 # sysctl sysctl -w net.ipv4.tcp_max_syn_backlog=1024 sysctl -w net.core.somaxconn=1024 - somaxconn = soket max connection 약어 - syn_backlog = tcp half open 시 syn+ack flag..
[REDIS] 기본 명령어 1. redis cli 접속 redis-cli -p -a 2. redis 정보 > info 3. data 저장 > set 4. data 조회 > get 5. key 검색 > keys > keys * > keys *pl* 6. aof rewrite - 설정상에서 말고 cli상에서 직접 수행하는경우이며 백그라운드로 수행 > bgrewriteaof Background append only file rewriting started 7. rdb 파일저장 # 백그라운드 수행 > bggsave # 포그라운드 수행: 클라이언트 쪽 명령 처리 불가 > save 8. 종료 # 종료시 저장할지 말지 선택 > shutdown [save|nosave] 9. config [set|get] - config set : 설정 값을 r..