뎁스노트 / 네트워크와 서버 / 리눅스

네트워크와 서버

라이너라이너· 2년전

리눅스 서버에서 원격 접속 터미널 세션 유지하기: tmux 활용법

서버에서 중요한 작업을 수행하던 도중 터미널이 갑자기 끊긴 경험이 있는가? 얼마 전npm install을 실행하고 한참을 기다렸는데, CPU 사용량이 치솟더니 SSH 세션이 강제 종료되어 터미널 접속이 끊겨버렸다. 다시 접속해 보니 작업이 중단되어 있었고, 처음부터 다시 시작해야 하는 상황이었다. 이러한 예상치 못한 터미널 종료는 단순한 불편을 넘어 시간과 생산성에도 큰 영향을 미친다.하지만 이 문제를 해결할 방법이 있다. tmux를 사용하면 터미널 세션을 유지하면서 안정적으로 작업을 수행할 수 있다.1. 세션이 끊기는 주요 사례인터넷 연결이 불안정하여 SSH 연결이 강제 종료되는 경우터미널을 실수로 닫았을 때네트워크 환경이 바뀌거나 VPN이 끊어질 때npm install과 같은 높은 리소스를 요구하는 작업이 서버에서 실행 중일 때장시간 유지해야 하는 작업 도중 터미널이 자동으로 종료될 때이러한 문제를 해결하기 위해 tmux를 사용하면 SSH 세션이 끊겨도 터미널 작업이 계속 실행된다.2. tmux 개념과 기본 사용법tmux란?tmux는 하나의 터미널 내에서 여러 개의 세션을 관리할 수 있는 터미널 멀티플렉서이다. 이를 통해 SSH 세션이 종료되더라도 실행 중인 프로세스를 유지할 수 있다.3.1 tmux 설치대부분의 리눅스 배포판에서 tmux를 쉽게 설치할 수 있다.# Ubuntu / Debian sudo apt update && sudo apt install tmux # CentOS / RHEL sudo yum install tmux # macOS (Homebrew 사용 시) brew install tmux3.2 tmux 세션 시작하기tmux위 명령어를 입력하면 새로운 tmux 세션이 시작된다.3.3 세션 분리 (detach) 후 유지하기Ctrl + b, d위 단축키를 누르면 현재 tmux 세션에서 빠져나오면서 세션을 백그라운드에서 유지할 수 있다.3.4 기존 세션 재접속 (attach)tmux attach -t 0 # 세션 번호가 0일 경우만약 여러 개의 세션이 있을 경우 세션 목록을 확인 후 접속하면 된다.tmux list-sessions # 실행 중인 세션 목록 확인 tmux attach -t <세션명>3.5 세션 종료세션이 더 이상 필요 없다면 종료할 수 있다.exit # tmux 세션 내에서 실행또는, Ctrl + b, x를 눌러서 창을 종료할 수도 있다.3. tmux 활용 예제4.1 백그라운드에서 npm install 실행하기tmux new -s install-session npm install # 패키지 설치 실행 Ctrl + b, d # 세션 분리이렇게 하면 SSH 세션이 끊겨도 npm install이 계속 실행된다.4.2 다중 창 활용하기새 창 만들기: Ctrl + b, c창 간 이동: Ctrl + b, n (다음 창), Ctrl + b, p (이전 창)창 삭제: Ctrl + b, &4. 마무리tmux를 활용하면 SSH 연결이 끊겨도 작업이 지속되므로 서버 관리가 훨씬 안정적이고 편리해진다. 중요한 작업을 수행할 때마다 tmux 세션을 생성하고, 필요할 때 다시 접속하는 습관을 들이면 서버 운영이 더욱 원활해질 것이다. 이제 tmux를 사용하여 SSH 세션 종료 걱정 없이 리눅스 서버를 효율적으로 관리해보자!
2.7K
1
1
뎁스_3532뎁스_3532· 2년전

질문리눅스 돌릴 수 있는 가상머신

iso파일 이 iso파일을 윈도우에서 버추얼박스로 돌릴 땐 잘 돌아가던데 맥에서 vmware로 돌리니까 제대로 작동을 안하네요. 이 파일 작동시킬 수 있는 가상머신이 있을까요? 아니면 포기하고 그냥 윈도우에서 돌릴까요? 저 파일 원래 출처는 아래에 있습니다. 해커하우스북
428
0
commwavecommwave· 2년전

CentOS 지원 종료에 새로운 대안이 되는 엔터프라이즈 리눅스 eLxr를 소개합니다

엣지 투 클라우드 배포를 위한 엔터프라이즈급 Linux 제공 eLxr 프로젝트가 Debian의 인텔리전트 엣지 기능을 계승하여 파생된 첫 번째 릴리스를 출시했습니다. 간소화된 엣지 투 클라우드 배포 접근 방식을 통해 이를 확장할 계획입니다. eLxr는 오픈 소스, 엔터프라이즈급 리눅스 배포판으로 근거리 네트워크와 워크로드의 고유한 과제를 해결합니다. eLxr 프로젝트란 무엇입니까? eLxr 프로젝트는 엣지에서 클라우드로 확장되는 안정적이고 혁신적인 솔루션을 찾는 매니아 사용자 및 엔터프라이즈 사용자 모두를 지원합니다. 최첨단 기술에 대한 액세스를 확대하는 데 전념하는 커뮤니티 중심의 프로젝트로서, 사용자가 쉽게 채택할 수 있고 오픈 소스 철학을 존중하는 eLxr, 즉 엔터프라이즈급 Debian 파생 배포판을 만들고 유지 관리하고 있습니다. eLxr 프로젝트의 임무는 접근성, 혁신 및 오픈 소스 소프트웨어의 무결성 유지에 중점을 둡니다. 엔터프라이즈급 Debian 파생 제품에서 이러한 발전을 이루면 사용자는 무료 사용이 가능한 Linux 배포판의 이점을 누릴 수 있습니다. eLxr 프로젝트는 Debian 생태계를 기반으로 구축하기 위한 강력한 전략을 수립하는 동시에 이에 다시 기여하고 있습니다. "Debian 시민"은 업스트림에서 eLxr의 혁신과 개선에 기여하기 때문에 커뮤니티의 개발 활동에 적극적으로 참여하고 있습니다. 이 접근 방식은 eLxr의 자체 배포를 향상시킬 뿐만 아니라 기능 세트를 확장하고 전반적인 품질을 향상시켜 Debian을 강화합니다. Debian 개발 수명 주기의 다양한 단계에서 기술을 릴리스하고 Debian에서 아직 사용할 수 없는 혁신적인 새 콘텐츠를 도입할 수 있게끔 하는 eLxr는 민첩성과 새로운 요구에 대한 대응력을 제공합니다. 또한 지속 가능성에 대한 약속은 eLxr 회원의 기여가 장기적으로 더 넓은 Debian 커뮤니티에 접근 가능하고 유익하도록 보장합니다. 엣지에서 지능적인 배포를 위한 통합 접근 방식 오늘날의 기술은 빠르게 변화하는 요구 사항과 운영 문제에 대한 민첩성과 대응력을 요구합니다. 오픈 소스 커뮤니티 및 기술 회사의 최첨단 기술을 배포에 통합함으로써 eLxr 프로젝트를 통해 사용자는 아직 널리 배포되지 않았거나 다른 채널을 통해 쉽게 액세스할 수 없는 혁신을 활용할 수 있습니다. 지난 10년 동안 Yocto Project 및 Buildroot와 같은 "build from source" 솔루션은 인텔리전트 엣지에서 다양한 사용 사례를 지원하는 데 선호되었습니다. 광범위한 사용자 지정과 교차 개발 도구 체인을 제공하는 소프트웨어 개발 키트(SDK)를 생성하는 기능을 제공하는 임베디드 Linux 디바이스를 구축하는 기존 방법을 통해 개발자는 리소스가 제한된 디바이스의 성능을 극대화하는 동시에 빌드 작업을 더 강력한 시스템으로 오프로드할 수 있었습니다. 그러나 OTA(Over-the-Air) 업데이트와 데이터 집계, 엣지 처리, 예측 유지 관리 및 다양한 머신 러닝 기능과 같은 새로운 패러다임을 포함하여 엣지 배포의 연결 요구가 증가함에 따라 니어 엣지 장치와 서버 모두에 대해 다른 아키텍처 접근 방식이 필요합니다. 이로 인해 여러 배포판을 사용하게 되고, 운영 환경의 이기종 환경이 생성되며, 복잡성과 비용이 증가하게 됩니다. 이러한 복잡성은 CVE 및 버그 모니터링, 추가 SBOM 사용 및 다양한 업데이트 주기 및 기타 여러 과제와 같은 상당한 부담을 줍니다. 이러한 문제를 해결하고 보다 동일한 기준을 충족하는 솔루션을 제공하기 위해 eLxr은 최신 도구를 사용하여 유지 관리를 용이하게 하는 동시에 기존 설치 프로그램을 단일 배포판으로 더 나은 서비스 엣지 및 서버 배포를 가능하게 하는 새로운 배포판 도구 세트를 결합하는 Debian 파생 제품으로 탄생하였습니다. 통합 기술 스택과 결합된 이 이니셔티브는 엣지 배포를 최적화하고, 장치 전반에 걸쳐 원활한 운영 환경을 조성하고, 엣지 투 클라우드 배포의 미래 혁신을 위한 기반을 마련하려는 기업에 전략적 이점을 제공합니다. 기존 엔터프라이즈 솔루션은 사용자가 빠르게 혁신하고 새로운 기술을 빠르게 채택하는 데 필요한 속도에 미치지 못합니다. 혁신적인 솔루션을 개발했지만 이를 널리 배포할 수단이 부족한 오픈 소스 커뮤니티 및 기술 회사를 위한 배포 파트너로서 eLxr 프로젝트는 중요한 기술 제공 격차를 해소합니다. 왜 Debian인가? eLxr 프로젝트가 Debian을 선택한 주된 이유는 두 가지입니다: Debian의 확고한 방어와 30년 이상 동안 오픈 소스 철학을 고수해 오며 파생 노력을 수용했기 때문입니다. Debian은 다양한 사용 사례로 범위를 확장하는 데 도움이 되는 eLxr과 같은 새로운 배포판 및 파생 항목의 생성을 권장합니다. Debian은 파생 상품과의 경험을 공유하는 것이 커뮤니티를 확장하고, 기존 사용자를 위해 코드를 개선하고, Debian을 더 다양한 사용자에게 적합하게 만드는 방법이라고 생각합니다. eLxr에 참여하기 Wind River®는 보장된 오픈 소스 배포에서 새롭고 준비된 기술을 적시에 배포하고 제공하는 데 전념하는 커뮤니티를 성장시키는 여정의 첫 번째 단계로 초기 eLxr 릴리스에 기여했습니다. eLxr 프로젝트는 우리의 접근 방식이 참여하고자 하는 모든 사람의 접근성과 유연성을 촉진하여 기술 준비에서 유통-납품까지의 격차를 해소하거나 이미 좁혀진 격차를 활용할 수 있다고 믿습니다. eLxr를 사용하거나 eLxr에 기여하기를 원하든 상관없이, 여러분은 eLxr 프로젝트의 일부이며, 우리는 여러분의 참여를 장려하고 환영합니다. 새로운 기술을 개발하고 있다면 혁신을 주도하기 위해 해당 기술을 검증하고 통합해 보겠습니다. eLxr를 사용할 계획이라면 커뮤니티의 다른 사람들에게 여러분의 경험, 사용 사례, 해결한 문제 및 추가 개선 방법에 대해 알려주십시오. 여러분의 기여를 기다리고 있습니다! eLxr 랜딩 페이지(elxr.org)에서 자세한 정보를 찾고 eLxr 리포지토리, 다운로드 및 설명서에 액세스할 수 있습니다. 2024년 7월 28일부터 8월 4일까지 대한민국 부산에서 개최되는 DebConf와 2024년 9월 16일부터 18일까지 오스트리아 비엔나에서 개최되는 Open Source Summit Europe에서 커뮤니티 리더를 직접 만날 수 있습니다.
242
0
darkwolfdarkwolf· 2년전

질문기본설정시 로그파일 보관일이 어떻게 되나요?

ssh, sftp 로그파일이 기본설정시 얼마나 보관되는지 알 수 있을까요? 제 기억으로 계속 쌓여서 용량이 꽉차서 문제가 되었던 기억이 있어서요 기본설정시 1달 후 자동 삭제된다고도 하던데 맞나요?
576
1
0
라이너
라이너·2024-11-27
리눅스 기본 설정에서 로그 파일은 보통 1달(4주) 동안 보관되며, 이후 logrotate에 의해 자동 삭제 또는 압축됩니다. 만약 로그가 계속 쌓이는 경우, 먼저 logrotate 설정(/etc/logrotate.conf 또는 /etc/logrotate.d/) 확인하시고, logrotate 동작 상태(sudo systemctl status logrota...
darkwolfdarkwolf· 3년전

질문SSH 로그분석 부탁드립니다

위 로그에서 28637이 세션오픈되고 닫히지 않고 29096이 또 세션오픈이 되었는데요 제가 알기론 28637이 닫혀야 다른세션이 열리는걸로 아는데요 위에 로그는 어떤 의미인가요? 단순히 인식 문제인지? 아니면 평범한건지? 답변부탁드립니다
522
1
0
라이너
라이너·2024-03-23
일단 SFTP는 설정에 따라 여러 개의 세션이 열릴 수 있습니다. 즉, 한 사용자가 다른 터미널 등 여러 세션을 열었을 수 있습니다.또한 로그에 없다고 해서 반드시 세션이 종료되지 않은 것은 아닐 수 있습니다. 로그에는 없더라도 세션이 종료되었을 수도 있습니다.
darkwolfdarkwolf· 3년전

질문억울한 상황이 생겨 전문가님들의 의견을 듣고 싶습니다

상황 설명: VPN을 통해 SSH 서버에 접속한 상태에서, VPN 사용 로그에 따르면 첫 번째 세션의 시작 시간은 2020-12-18 22:40:28이고 종료 시간은 2020-12-18 23:02:24입니다. 다음 세션은 2020-12-19 00:40:11에 시작하여 2020-12-19 00:52:32에 종료되었습니다. 사용자의 실제 IP는 111.118.29.66이고, VPN을 통해 할당받은 IP는 183.111.73.199입니다. 문제 상황: VPN이 종료된 후에도 SSH 서버 접속 로그에는 VPN을 통해 할당받은 IP(183.111.73.199)로의 접속이 계속 유지되고 있음을 보여줍니다. VPN이 종료된 시점(2020-12-18 23:02:24)부터 다음 VPN 세션 시작 전까지(2020-12-19 00:40:11), 심지어 2020-12-19 01:02:20까지 접속이 유지되었다고 기록되어 있습니다. 문의 내용 요약: VPN이 종료된 후에도 SSH 서버에 VPN 할당 IP로의 접속이 유지될 수 있는지 여부. VPN 종료 후 접속이 몇 분 정도 유지되며, 시간이 지나면 로컬 IP로 재접속되는지, 그리고 로컬 네트워크가 끊어지면 모든 접속이 종료되는지에 대한 이해가 맞는지 궁금합니다.
666
2
0
라이너
라이너·2024-02-07
답변드리자면 이렇습니다. VPN이 종료된 후에도 SSH 서버에 VPN 할당 IP로의 접속 유지 여부일반적으로 VPN 연결이 종료되면, VPN을 통해 할당받은 IP 주소로의 모든 세션도 함께 종료되어야 합니다. 이는 VPN 연결이 네트워크 트래픽을 암호화하고 라우팅하는 터널 역할을 하는데, VPN이 종료되면 이 터널이 닫히고 트래픽이 더 이상 전송되지 않기 ...
뎁스_2734뎁스_2734· 3년전

질문OpenVPN에서 가동되고 있는 서버끼리 ssh 연결이 안됩니다.

OpenVPN 인스턴스를 하나 생성해 내 IP로 보안그룹 설정한 후, Jenkins로 CI/CD 자동화를 하려고 빌드를 실행했습니다. 그런데 key 에러가 발생해 putty로 jenkins 서버 들어가 frontend가 가동되고 있는 프라이빗 주소로 'ssh -i (pem파일) ec2-user@10.0.0.156' 같이 연결을 시도했는데, 3번 비번을 입력해도 접속이 안됩니다. 하루 종일 구글링하고 고민을 해봤는데 문제가 해결되지 않습니다. 보안그룹 이상 없습니다. vscode로 같은 pem파일을 통해 접속했을 땐 잘 접속됩니다. jenkins 서버의 .ssh/known-hosts 파일을 확인해봤을 때, 10.0.0.156 ~ '키파일 형식 문서' 이런 형태인데, '키파일 형식 문서'가 기존 가지고 있던 키파일 문서와 다른 형태입니다. 그리고 제 생각엔 pem키 파일로 접속을 하는 거기 때문에 passpharase이란 메시지가 나오지 않아야 하는데, 키 파일이 달라지는 게 문제가 되는 거 같습니다. /var/log/secure 파일을 확인해봤을 때는 에러 메시지가 뜨지 않습니다. ㅜㅜ 4번을 해결하려면 어떻게 해야 하나요?
755
4
0
라이너
라이너·2023-08-11
몇가지 더 살펴 본다면, 1. known_hosts와 Host Key known_hosts 파일에 저장된 호스트 키는 해당 호스트와 연결할 때 사용하는 키입니다. SSH 서버의 호스트 키가 변경될 경우 known_hosts에 저장된 키와 일치하지 않게 되므로 사용자에게 경고가 표시됩니다. 이런 경우는 서버 재설치, IP 변경 등으로 인해 서버의 호스트 키가...
라이너
라이너·2023-08-08
아래 몇가지 부분을 추가적으로 확인해 볼 수 있을 것 같습니다. PEM 파일의 권한이 너무 열려 있으면 SSH 연결이 거부될 수 있습니다. pem파일 권한을 600으로 설정해보세요.chmod 600 /path/to/your.pemSSH가 제대로 작동하고 있는지 서버에서 확인하세요.sudo systemctl status sshdSSH 설정 파일(/etc/ss...
mshundmshund· 4년전

질문Linux Shell 관련 Locale 변경 질문

안녕하세요.  Shell 로 운영 간 필요한 기본적인 설정을 변경하는 스크립트를 생성 중 막힌 부분이 있어 질문 드립니다. Shell 에서 Locale 확인 후 export LANG=C , export LC_ALL=C 를 수행하면 해당 내용이 반영된것처럼 확인이 되는데 Shell 이 종료 된 이후 다시 locale 로 확인해보면 다시 기존 상태에서 변경이 없는 것으로 확인이 됩니다. Shell 수행 중에만 변경 된 locale 이 적용 되는걸로 보여지는데 혹시 .. Shell 수행 후에도 반영되도록 설정할 수 있는지 질문 드립니다.. 처음 가입하고 글 작성하는 거라서 맞지 않는 부분이 있으면 말씀 부탁드립니다. 감사합니다. [TEST.sh] [수행 및 확인]
554
1
1
0
mshund
mshund·2023-05-11
source 붙여서 실행하니까 반영되네요.. ㅎㅎ
dam_indam_in· 4년전

질문맥북에서 densepose를 사용하려고 합니다

densepose를 사용하려고 하는데, 제 노트북이 맥북입니다. 제 os는 nvidia를 지원하지 않습니다 맥북에서 리눅스 OS를 설치한 다음, densepose를 설치하면 사용할 수 있나요? densepose를 사용하려면  NVIDIA 그래픽 드라이버 설치 CUDA 설치 cuDNN 설치 Anaconda2 설치 Caffe2 설치 COCO API 설치 DensePose 다운로드 DensePose 데이터 다운로드 이런 과정으로 사용가능하다고 합니다.
1.4K
1
1
0
라이너
라이너·2023-04-27
맥에서 CUDA를 지원하는 그래픽카드가 설치된 경우에는 설치가 가능하지만 그렇지 않은 경우에는 리눅스 가상머신을 설치하여 그 위에 DensePose를 설치하면 됩니다. 참고로 맥북에서는 CPU 또는 Metal을 사용하여 딥 러닝을 실행할 수 있습니다.

질문Centos7 linux, host pc IP 통신 관련 질문입니다!

1. centos7 NAT, gateway 10.0.0.254 linux에서 web을 생성 IP 10.0.0.111/24 2. host pc IP 192.168.10.x/24 대역 3. host pc 브라우저에서 10.0.0.111 접속   질문 : 하나의 공유기에서 서로 다른 대역의 사설 IP 대역을 부여한 상황입니다. 근데 원래 포트 포워딩을 하지 않으면 외부 대역의 사설 ip로 통신이 안되는 걸로 알고 있는데 host pc에서 다른 대역의 linux에서 생성한 web에 접근이 가능한 이유는 뭔가요?? 제가 생각하는 것은 1. 하나의 공유기에서 뿌린 사설 IP 대역은 결국 하나의 공인 IP 대역안에 속하기 때문이다.  2. 포트 포워딩이 되어 있기 때문이다. 3. 그 외   제가 아직 포트 포워딩 및 NAT에 대한 개념이 100% 잡혀있지 않은 것 같아 헷갈리는 것 같네요... 질문도 매우 부족한 것 같지만 답변 부탁드립니다!
1.3K
1
1
0
라이너
라이너·2022-04-30
공유기의 IP가 10.0.xx 라면 PC에서 10.0.xx대 웹으로 접근이 가능할 것 같습니다.