• 돌아가기
  • 아래로
  • 위로
  • 목록
  • 댓글

구형 노루팅 스마트폰 서버화 실패 후기

더없을초심자 861

1

7

두괄식으로 결론부터 말씀드리면...

서버는 사서 쓰세요 제-발...

(물론 극소수 능력자분들은 예외입니다. 저같은 초보자들은 함부로 디딜 곳이 아니더군요...)

※주의 : 아래 내용은 개인 서버 입문자가 뭣도 모르고 시도했다가 쓰는 내용이 전부입니다. 전문가분들은 답답함과 짜증을 가라앉히시며 보시길 바랍니다.

 

우선 개략부터 말씀드리면

기종 : LG V20(g3도 도전하려 했으나 자세한 이야기는 반응이 좋으면 하는 걸로...)

사용한 앱 : UserLand

기간 : 약 일주일

노루팅 사유 : 찝찝하기도하고 불안해서(시스템을 건드린다는 위험성, 초보자가 잘못 걸리면 답도 없다 등등...)

대강의 로드맵 : nginx로 https까지 확인 후 nextcloud를 snap 설치

실패 사유 : snap 명령어 실패

 

사용한 어플에 userland하나만 적어놓긴 했지만 사실 이것 저것 잡다하게 설치해봤습니다.

Complete Linux Installer, Linux Deply, Termux 등등... 열심히 시도해봤지만 루팅이 전제된 어플들이거나 중간에 계속 오류가 뜨더군요.

그나마 userland는 우분투를 ssh로 설치한 다음 어떻게든 초기 작업에 착수할 수 있었습니다.

'초기' 작업에는 착수할 수 있었습니다... nginx를 설치하는 데까지는 쉬웠습니다.

하지만 그 이후부터 문제가 연쇄적으로 터지더군요. 기본적인 것들도 안 깔려 있어서 command not found는 애교고 nginx 설치 후 포트포워딩할 때가 고비였습니다.

구형 스마트폰이다보니 당연히 공유기 와이파이를 쓰는데 대부분의 공유기는 http의 80번 포트, https의 443 포트를 막아둔다고 합니다.

그래서 nginx에 기본 세팅돼 있는 80포트를 그대로 쓰면 화면이 안뜹니다. 다른 번호로 바꾼후 그 포트에 접속해야 뜨더군요.

사실 이 아이디어까지는 쉬운 문제였고 문제는 ssl인증부터였습니다.

 

개인적인 목적으로만 쓰일 서버이기 때문에 최대한 저가로 쓰기위해 ssl은 letsencrypt로, dns는 duckdns로 사용하기로 결정했습니다. 하지만 certbot은 기본적으로 80번 포트를 검사하는 것 같더군요. 그래서 저처럼 다른 포트를 쓰게되면 오류가 발생합니다.

이 문제는 certbot에 --manual --preferred-challenges dns 옵션을 추가한 후 duckdns에서 소개해준 방식대로 txt record를 GET해주시면 됩니다.

https://www.duckdns.org/update?domains={YOURVALUE}&token={YOURVALUE}[&ip={YOURVALUE}][&ipv6={YOURVALUE}][&verbose=true][&clear=true]

 

문제는 다음에 연쇄적으로 발생합니다. 기본적으로 80번포트를 이용해 자동으로 certbot인증을 받으면 https 바로 접속 가능하고 nginx default 파일에서 ssl부분을 알아서 했다고 나옵니다.

문제는 수동으로 했죠... 네... 안됩니다.

추가 server 블록을 만든 뒤 

server {

listen {새로운https포트} default ssl http2;

listen [::]:{새로운https포트} default ssl http2;

 

root /var/www/html;

index index.html index.htm index.nginx-debian.html;

 

server_name {내주소};

 

ssl_certificate /etc/letsencrypt/live/{내주소}/fullchain.pem;

ssl_certificate_key /etc/letsencrypt/live/{내주소}/privkey.pem;

}

를 붙여줘야 합니다.

그러면 nginx는 성공합니다.

 

그리고 대막의 snap이나 mariadb로 가면 오류가 터집니다. 나중에 가면 booted 어쩌구 PID 1 저쩌구 나오면 뒷목이 아파오기 시작합니다. 이 부분은 아무리 뒤져봐도 저같은 초보는 힘들더군요.

남들은 service snapd start하면 금방해결 되던데 저는 socket 파일도 없고 snap 폴더도 제대로 구성이 안돼더군요. 이리저리해보다가 기본설정을 저도 모르게 건드렸는지 sudo apt-get update에서 오류가 발생하더군요.

이 짓을 3번정도 반복하다가 결국 포기하고 다른 공부를 해보기로 했습니다. 도커가 왜인지 좋아보였습니다.

도커를 설치하고 우분투 컨테이너를 생성해보고 혹시나 

sudo apt-get install snapd

snap list

를 해보니... 어디서 자주 보던 오류가 발생하더군요.

네... 제가 스마트폰에서 계속 보던 오류였습니다. 찾아보니 docker에서 더이상 snap을 지원 안한다더군요.

따로 사용 가능하게 하는 방법도 있는 것도 같던데 그것도 컨테이너 만들기 이전에 하는 것 같으니 제가 될리가 없죠...

지금은 제가 안드로이드에서 작업하던 환경이 일종의 컨테이너가 아니었나 생각해봅니다. (전 잘 모르니 전문가분들의 의견이 궁금하네요)

 

이리저리 잡설이 길었는데 결론을 다시 말씀드리자면...

서버는 기성품으로...

 

지금은 어떻게 nginx로 재미있는 일을 할 수 있을지, nextcloud아니고도 클라우드처럼 쓸 수 있을지 찾아보고 있습니다.

초보분들은 절대 함부로 도전하지 마시길... 시간 삭제됩니다.

저야 안되도 어떻게든 재미로 해나갔지만 안되는 건 안되더군요 ㅠㅠ

신고공유스크랩
7
profile image 1등
달소 2021.11.04. 00:27

와우,, 엄청 고생하셨네요..

기본리눅스도 root 권한이없으면 잘 안되는데.. 루팅도 비슷하지않나싶네요 ㅠㅠ

이기회에 서버도 한대 맞추시는게..

nextcloud의 경우 nginx + php + mariadb 조합으로 설치하는게 베스트가 아닌가.. 싶습니다 ㅎㅎ

 

더없을초심자 글쓴이 2021.11.04. 10:25
달소

제대로된 서버가 당장은 필요하지 않은 상태라 간이 서버로 써볼 생각이었는데 그냥 제대로 준비하는게 가장 싼 방법이라는 것만 깨닫고 갑니다... 스마트폰은 sftp나 장난감 정도로만 쓰는 걸로...

전 이상하게 정석대로 해도 오류가 어디선가 나더군요 ㅎㅎ 좀 더 실력을 높이고 제대로 구성해봐야 겠습니다.

개인 저장 공간이라는 이름이 너무 탐나서 포기할 수는 없네요 ㅋㅋㅋㅋ

profile image 2등
냥냥이 2021.11.04. 10:54

맞습니다.. 특히나 서버의 중요한 부분중 하나가 인터넷 망유지인데.. 무선으론 아무래도 불안정한 부분이 있죠.

 

개인적으로 서버 입문용으로 가장 좋은건 라즈베리파이 시리즈 (저는 라즈베리파이1~4 8GB 모델까지 다 산..) 이 가장 좋다고 봅니다.

아니면 J머시기...CPU로 헤놀로지 사용한다던지요..

더없을초심자 글쓴이 2021.11.04. 20:37
냥냥이

라즈베리파이는 듣기로는 좀 들었는데 그런 용도였군요.

이번에 조금 해보니 하드웨어도 그렇고 아직 공부가 많이 필요하다고 느껴지네요...

얼른 배우고 이것저것 만들어보고 싶네요. 왜 하두웨어에 마니아(?)가 생기는지 알 것 같습니다.

저는 개인 서버를 위해...(불순한 목적)

3등
소나무 2021.11.05. 09:42

이건 또 머선일이고..

제가 아는 세상 말고 또 다른 세상이 있나보군요?

우물 안 개구리 ㅠㅠ

뭐가 뭔지 모르지만 엄청 어렵게보이는데.. 고생하셨습니다.

댓글 쓰기 권한이 없습니다. 로그인

취소 댓글 등록

cmt alert

신고

"님의 댓글"

이 댓글을 신고하시겠습니까?

댓글 삭제

"님의 댓글"

삭제하시겠습니까?


목록

공유

facebooktwitterpinterestbandkakao story
태그 : 서버