태그 Archives: Centos

ssh (sftp) 속도 저하 이슈.

ssh 또는 sshd 의 내장된 sftp 를 이용하여 파일을 업로드 할때 가끔 속도가 저하되는 이슈가 있다 ‘ㅅ’a

sftp의 경우 데이터를 암호화 해서 통신을 하기 때문에 cpu와 네트워크(1Gbps)가 좋다면 일반적으로 20Mbps ~ 60Mbps 정도로 측정이 된다.

 

다만 resolve 가 정상적이지 않을때 속도 저하가 발생할 수 있는데 이때 sshd_config를 수정해서 DNS 확인을 하는 옵션을 꺼둠으로서 속도 저하를 예방할 수 있다.

일반적으로 CentOS 에서는 아래와 같은 설정 값을 가진다.

 

이를 수정을 해주고 sshd를 재 시작 한다.

상태 active (running) 을 확인 한뒤에 추가적으로 ssh 접속을 시도해 본다. (sshd 설정을 건들 경우에는 새로운 접속이 가능한지 확인해보는것이 좋다.)

 


 

ubuntu의 경우에는 기본 설정 값이 틀리기 때문에(주석으로 막혀있는 구조) 아래의 명령어를 사용한다.

 

CentOS 8 종료에 따라…

CentOS 8 의 CentOS Stream 전환의 시기가 얼마 남지 않았다. (2021년 12월 31일 까지…)

 

기존의 CentOS 와 같이 RHEL 을 복제한 OS 는 다음과 같다.

Rocky Linux (https://rockylinux.org)

Oracle Linux (https://www.oracle.com/kr/linux/)

Alma Linux (https://almalinux.org/)

Navy Linux (https://navylinux.org/)

 

네이비 리눅스의 경우 업데이트 적용이 늦는듯 하고(업데이트 지원이 늦어질수도??)

오라클 리눅스는 Mysql -> MariaDB 사태를 본 사람으로서 선택하기 어렵다.

 

아무래도 기존에 CentOS 개발자로 참여(Gregory Kurtzer) 했던 Rocky Linux 을 선택 하는게 좋을거 같지 싶다 ‘ ‘a

Rocky 리눅스의 경우에는 AWS, Azure, GCP 에서 OS 이미지로도 선택(물론 소프트웨어 요금 없이)이 가능하다.

 

 

Docker for windows – centos8(php, httpd) 설치

Centos 8.1.1911 이 배포 되었다.

당장 OS 를 올릴 필요는 없지만 새로운 OS 가 추후에는 사용이 될것이기 때문에

Docker 환경에서 연습이 필요로 하다고 판단되어 Windows for Docker 를 이용하여 컨테이너를 생성하여 설치 테스트 및 작동 테스트를 해보았다 ‘ㅅ’a

사전에 c 드라이브를 분배 하여 w 드라이브에 workspace 를 생성 하였으며 컨테이너 웹 디렉토리와 연결한다. (windows 환경에서 php 개발 편의성)

 

물론 Docker 부분만 제외 한다면 Centos 8 에서 같은 방법으로 설치가 가능하다.

 

docker 에 centos 8 공식 이미지를 통해 컨테이너 생성을 한다.

 

Remi’s 레포지토리 추가 및 php 7.3 설치 (httpd 는 의존성에 의해 OS 기본 제공 되는 2.4.37이 설치 된다.)

 

apache 설정 (웹 디렉토리는 /var/www/html 으로 진행 하였음.)

 

php-fpm 설정

 

php.ini 설정 (파일 업로드 100M 와 숏코드만 사용 만 수정)

 

apache 및 php-fpm 시작 및 활성화

 

docker hub: https://hub.docker.com/r/san0123/centos8-apache24-php73

도커 이미지(latest)의 경우 php-fpm 이 아닌 libphp7.so 으로 httpd-profork 방식으로 설정 되어 있다. (ssl, http2 등 사용 불가)

php 7.4 : https://hub.docker.com/r/san0123/centos8-apache24-php74


ps. MariaDB 10.4 설치

mariadb 는 centos 에서 10.3.17 이 제공되지만 업데이트는 잘되지 않기 때문에 mariadb 에서 제공 되는 repo를 추가하고 설치한다.

 

mariadb 시작 및 활성화

 

CentOS 7 에 azcopy 설치

CentOS 7 에 azcopy 를 설치 하여 Azure Blob 스토리지를 이용한다.
Azure Blob 스토리지는 AWS S3 스토리지 와 개념이 같은 비정형 스토리지 이고, 속도가 만족스럽지 않지만 GB 당 월 0.1$ 라는 저렴한 가격으로 사용이 가능하다.

— 물론 AWS Glacier 는 더 싸다 ‘ㅅ’a — 다만 테이프백업 복구가 4~5시간의 Retrieval 이 있기 때문에 1차 백업 용으로 좋지 않음. —

$0.025/GB – AWS S3
$0.02/GB – Azure BLOB
$0.005/GB – AWS Glacier

데이터 input 시에는 과금이 되지 않기 때문에 서버 백업을 적재 하는 용도로 매우 좋다 🙂

 

먼저 yum 레포지토리를 설치한다.

 


yum 을 이용하여 dotnet 을 설치한다.

azcopy 를 설치한다.


azcopy가 7.2 버전으로 업데이트 되면서 dotnet 을 설치할 필요가 없어 졌다. ( yum을 이용한 libunwind libicu 만 설치 한다. )


정상적인 설치가 된경우 azcopy 명령어를 입력할 경우 아래와 같이 나온다.

 

간단한 파일 업로드 사용 방법은 다음과 같다.

다운로드는 다음과 같다.

백업스크립트를 만들어서 사용할 경우 quiet 옵션을 사용 한다.

sudo 보안 취약점 CVS-2017-1000367

sudo 명령을 이용하여 root 권한을 탈취 할 수 있는 보안 취약점이 공개 되었습니다.

일반적인 보안 권고 사항인 그룹 지정(wheel 과 같은)을 한 경우에는 관련이 없습니다.

또한 selinux 를 활성화 하고 그룹 지정이 없이 운영 할 경우에는 아래 메뉴얼에 따라 sudo 명령어를 업데이트 하시기 바랍니다.

다만 업데이트가 쉽기 때문에 진행을 하는것이 좋습니다 🙂

[참고 사이트]

Ubuntu https://www.ubuntu.com/usn/usn-3304-1/
CentOS https://lists.centos.org/pipermail/centos-announce/2017-May/022450.html

주의 사항 : 업데이트를 할 경우 명령어의 소유권 및 퍼미션이 초기화가 되어 권한이 -rwsr-xr-xr   소유권 및 그룹이 root:root 가 되므로 기존에 쓰던 정보를 확인 하고 나서 sudo 업데이트 후에 재 지정 해야 합니다.

 

CentOS

 

Ubuntu