Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- cross compile
- 딸래미
- 도쿄
- 제주도
- 비욘드트러스트
- 갤럭시 핏2
- 태블릿 리눅스
- 둠
- 캠핑
- 스마트폰 리눅스
- 휴양림
- 박물관
- 체험학습
- 한강 라이딩코스
- 크로스 컴파일
- iGPSPORT
- 어린이
- ARM
- 페루
- 저렴한 속도계
- 한강
- 아마추어무선
- BSC100S
- 여행
- FT-8
- 가족여행
- ubuntu 24.04
- Termux
- 대만
- 일본
Archives
- Today
- Total
주희아빠의 헝그리 라이딩
Ubuntu 24.04 LTS - SSH 서버 Port 변경 하기 본문
2024.5.1
최근 배포되는 리눅스 데스크탑 배포본에서는 sshd 서비스가 설치되지 않습니다. 필요한 사람들이 직접 설치하는게 맞겠지요.
Ubuntu 24.04 에 sshd 설치를 진행해 봅니다. 사실 방법 자체는 매우 쉽지만 중간에 살짝 바뀐 것이 있어서 정보 납깁니다.
일단 ssh 가 정말 없나 확인을 해 보고 설치를 진행합니다.
-- 서비스 확인
$ systemctl status ssh
Unit ssh.service could not be found.
-- ifconfig 나 netstat 등 자주 사용하는 net 관련 명령어
$ sudo apt install net-tools
-- openssh 서버 설치
$ sudo apt install openssh-server
-- 22번 포트가 살아 있는지 확인
$ netstat -an|grep LIST
tcp6 0 0 :::22 :::* LISTEN
...중략
-- 서비스 정보 확인
$ sudo systemctl status ssh
● ssh.service - OpenBSD Secure Shell server
Loaded: loaded (/usr/lib/systemd/system/ssh.service; disabled; preset: enabled)
Active: active (running) since Wed 2024-05-01 10:05:38 KST; 17s ago
TriggeredBy: ● ssh.socket
Docs: man:sshd(8)
man:sshd_config(5)
Process: 9419 ExecStartPre=/usr/sbin/sshd -t (code=exited, status=0/SUCCESS)
Main PID: 9421 (sshd)
Tasks: 1 (limit: 4499)
Memory: 1.2M (peak: 1.4M)
CPU: 82ms
CGroup: /system.slice/ssh.service
└─9421 "sshd: /usr/sbin/sshd -D [listener] 0 of 10-100 startups"
5월 01 10:05:38 multitab-Acer systemd[1]: Starting ssh.service - OpenBSD Secure Shell server...
5월 01 10:05:38 multitab-Acer sshd[9421]: Server listening on :: port 22.
5월 01 10:05:38 multitab-Acer systemd[1]: Started ssh.service - OpenBSD Secure Shell server.
여기까지 하고 마치면 끝이긴 한데 보통은 ssh 의 경우 22번 기본 포트를 그대로 사용하지 말고 다른 것으로 변경하기를 권장합니다.
이전에는 다음 경로의 파일을 수정하고 ssh 서비스를 재시작하면 됐는데 ubuntu 24.04 에서는 그게 안되네요.
$ sudo vi /etc/ssh/sshd_config
Port 22 <- 다른 것으로 변경
$ sudo systemctl restart ssh
ssh 서비스를 멈추려고 해도 안된다는 메세지가 나옵니다. 찾아보니 ssh 가 ssh.socket 방식으로 바뀌었다는데 뭔가 더 좋게 하려고 수정한거 같은데 저같은 옛날 사람들은 이걸 왜 고쳤냐고 구시렁 거립니다.
$ sudo systemctl stop ssh
Stopping 'ssh.service', but its triggering units are still active:
ssh.socket
어쨌든 sshd 포트를 변경하려면 다음 파일을 수정해 주어야 합니다.
$ sudo vi /lib/systemd/system/ssh.socket
[Socket]
ListenStream=20022
Accept=no
FreeBind=yes
$ sudo systemctl daemon-reload
$ sudo systemctl restart ssh
-- ssh 서비스 확인.
$ sudo systemctl status ssh
여전히 안되는 경우에는 명시적으로 ssh.socket 을 먼저 내려줍니다.
-- ssh.socket 를 먼저 내려줌
$ sudo systemctl stop ssh.socket
$ sudo systemctl stop ssh
-- ssh 서비스 시작
$ sudo systemctl start ssh
-- ssh 서비스 확인
$ sudo systemctl status ssh
$ netstat -an|grep LIST
sshd_config 를 전체적으로 안쓰지는 않을텐데요. port 관련 내용만 이렇게 바뀐 것인지 좀 더 확인해 보고 업데이트하도록하겠습니다.
반응형