[오늘은 생각중] 입.꾹.닫

국가데이터센터로 정부 행정망이 멈췄다. 지자체는 메일 발송이 되지 않아 웹하드나 개인 메일로 보도자료를 보내고 있고, 정보공개청구로 받아야 할 자료도 다운로드를 받을 수가 없다. 사고는 UPS라고 불리는 무정전공급장치에서 비롯됐다고 한다. UPS가 무슨 장비인가 싶은 분들이 있겠지만 쉽게 말하면 '배터리'이다. 그러니 배터리를 지하실로 옮기다가 불이 났고, 그 불로 인해 행정망이 마비가 됐다고 보면 된다.   가장 이해가 안가는 것이 메인 서버와 백업 서버를 왜 한 곳에 모아두었냐는 것이다. 데이터센터라지만 메인데이터가 소실되었을 때, 이에 대응할 수 있는 백업서버는 다룬 곳에 구축해두는 것이 보안의 가장 기본이자, 시스템 안정성을 높이는 방법 중 하나이다. 메인 서버와 백업 서버를 물리적으로 한 장소에 둘 경우, 건물 폭파, 재난으로 인한 붕괴 등으로 서버가 소실되면 대안이 없기 때문이다. 백업 서버를 다른 곳에 있었다면, 메인 서버가 셧다운 됐을 경우에 백업 서버를 메인 서버로 전환해 가동했다면 행정마비라는 참사는 없었을 것이다.   시스템 복잡성이 높아지거나, 운영, 유지 비용이 높아진다는 단점은 있지만, 정부시스템이 마비돼 혼란을 겪는 비용보다는 저렴할 것이라 생각한다. 피해를 입지 않은 서버를 조금씩 가동시키며 검증 작업을 하고 있지만, 이 작업 역시 행정비용을 추가 투입해 이뤄지는 것이고, 무엇보다 국민들이 겪는 불편비용은 수조, 수억 원에 달할 것이다. 우리나라 행정은 편하게, 효율은 최고로 높게를 누구보다 선호한다. 그러다보니 문제가 생기면 그때그때 해결하는 땜질식 처방을 이어가고 있다. '만약', '하마터면', '우려'와 같은 단어들을 쓰면 "벌어지지 않은 일에 대해 너무 걱정한다.", "오버한다" 라며 말한 사람을 이상하게 만들기 때문에, 정말로 걱정돼 말을 하는 사람들마저 입을 다물게 만든다. 이번 행정망 마비 사태 역시 누군가 문제가 있을 것이라...

[오늘은 공부중] FTP 설치하기

서버를 운영하다보면 FTP 접속 필요하기도 하고, 사실 편하다.
이를 위해서 써야하는 패키지가 vsftpd 패키지이다.
상세 설정은 힘든 부분이 있긴 하지만... 쓰면서 배워보면 나쁘지 않을지도...


설치법은 간단하다

yum install vsftpd

만 쳐주면 간단하게 설치가 된다.

바로 실행시키지 말고 우선 ftp 설정을 해주자.
vsftpd의 설정 경로는 /etc/vsftpd 이다.

cd /
cd etc
cd vsftpd


ls를 치면 폴더 안의 파일을 볼 수 있다.
vsftpd.conf 파일을 수정해줄건데, 혹시 모르니 사본을 하나 만들자.

cp vsftpd.conf vsftpd.conf.bak

을 치면 사본을 만들 수 있다.
사본이 만들어지면 곧바로 vi 에디터를 실행해 vsftpd 설정을 해보자.

에디터가 나오면

:/anonymous_enable

을 입력해 이동한 뒤, 맥락에서 YES를 NO로 바꿔준다.
FTP를 익명으로 접속하는 경우가 있는데, 보안상 이를 막기 위한 것이다.

 ** 이 부분은 해주지 않아도 되지만, 보안성을 높이기 위한 부분이다.

[ESC] 키를 누른 뒤 다시 한 번

:/chroot

를 입력해 'chroot_local_user'와 'chroot_list_enable', 'chroot_list_file' 파일의 주석을 제거해주자.
두 문맥은 허용된 계정만 FTP에 접속하도록 하는 부분이다.

하지만 이렇게만 할 경우, 500 에러가 발생할 수 있다. 원인은 폴더에 쓰기 권한이 부여돼 있어서 그런 것이다.
오류를 막기 위해 맨 마지막 문단에

allow_writeable_chroot=YES

을 입력해주자.



설정이 끝났다면 [ESC] 키를 누른 뒤 [:wq]를 눌러 저장을 해주자.
vi 에디터를 빠져나왔다면

vi chroot_list

chroot_list 파일을 생성하자.
[i]를 눌러 입력모드로 전환 후, 자신이 쓰는 계정 이름을 적어주자.

[ESC]키를 누른 뒤 [:wq]를 눌러 vi에디터를 빠져 나오자.
이후 설정값을 적용하기 위해 vsftpd를 재시작해주자.

systemctl restart vsftpd


여기까지는 괜찮지만, 문제는 SELINUX다. SELINUX는 보안상 FTP에 쓰기 권한을 주지 않는다.
일부 유저는 SELINUX를 해제시켜 사용하기도 하지만, 어디까지나 서버는 보안이 생명이다.

getsebool -a | grep ftp

명령어를 입력해 FTP 상태를 확인해보면
FTP 파일 접근 권한 문단인 ftpd_full_access와
패시브모드 설정 권한 문단인 'ftpd_use_passive_mode' 설정이 꺼져있는 것을 확인할 수 있다.
권한 변경을 위해

setsebool ftpd_full_access on
setsebool ftpd_use_passive_mode on

을 입력한 뒤, 다시 한 번 

getsebool -a | grep ftp

을 입력해 상태를 확인하자.


여기까지 했다면 큰 문제 없이 FTP를 이용해 서버에 접속할 수 있다.

댓글

이 블로그의 인기 게시물

[오늘은 공부중] 조명의 기능

[오늘은 공부중] 인물 구도 여백 이름

[오늘은 공부중] 방송 프로그램의 가상광고 규정