Linux

SSHのポート変更とポートを指定してSSH接続する方法

ubuntu20.04にて作業

SSHのポート変更

sshd設定ファイルの編集

sshの設定はsshd_configを編集して行います。

sudo vim /etc/ssh/sshd_config

#Port 22とコメントアウトされているところを探し、コメントアウトを外して任意のポート番号に変更します。

例として私の設定を下記に残しておきます。

#       $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $

# This is the sshd server system-wide configuration file.  See
# sshd_config(5) for more information.

# This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin

# The strategy used for options in the default sshd_config shipped with
# OpenSSH is to specify options with their default value where
# possible, but leave them commented.  Uncommented options override the
# default value.

Include /etc/ssh/sshd_config.d/*.conf

Port 22222
#AddressFamily any
#ListenAddress 0.0.0.0

~以下略~

sshdの再起動

下記コマンドでsshデーモンの再起動を行えば作業は完了です。

sudo systemctl restart sshd

接続方法

ポートを指定してssh接続

ポートを変更した場合、ssh接続をする際にポート番号を明示的に記述する必要があります。

接続コマンドは以下の通りです。

ssh -p <ポート番号> <ユーザー名>@<IP Address>

ポートを指定してscp接続

sshのポート番号を変更すると、当然ながらscpを使うときにもポート番号を明示する必要があります。コマンドは以下の通りです。

scp -P <ポート番号> <ユーザ名>@<IP>:<ディレクトリ> <送り先>

scpでのポート指定のオプションは大文字のPであることに注意です。

ufwの設定を忘れずに!

ufwでファイアウォールを管理している人は、sshの変更したポート番号を開放する作業を忘れずに行いましょう。(できれば変更前に行っておきたい)

ufwでポートを開放する方法は下記の記事を参照して下さい。

SSH接続のセキュリティを上げるために

本サイトではfail2banによるSSHへの攻撃対策についても触れています。

SSHのセキュリティを強化したい方は是非。