CentOS 7'de SFTP nasıl etkinleştirilir ve yapılandırılır

Birçok durumda, cihazlar arasında birden fazla bilgi aktarmamız gerekir ve bunu yapmanın en yaygın yolu, 20 yılı aşkın süredir devam eden FTP protokolünü (Dosya Aktarım Protokolü) ve bağlı bilgisayarlar arasında aktarıma izin veren FTP'yi kullanmaktır. İstemci/sunucu bazında TCP.

FTP ile 20 ve 21 numaralı bağlantı noktalarını kullanırız. Şimdi, SSH'yi destekleyen tüm sunucularda etkin olduğunu gördüğümüz SFTP adında yeni bir önceden tanımlanmış protokolümüz var.

SFTP (SSH Dosya Aktarım Protokolü), bugün bulduğumuz tüm FTP istemcilerini desteklemesine rağmen, FTP türünden farklıdır. SFTP bir güvenlik katmanı eklemek için uygulanmış olsa da, standart olduğu için erişim düzeyinde bir güvenlik açığı sunar, sistem kullanıcılarına dosya aktarımı ve Shell'i kullanmaları için tam erişim sağlar.

Bugün Solvetic, belirli bir kullanıcının sistemi SFTP0 protokolü aracılığıyla manipüle etme özgürlüğü ile SSH erişimine sahip olmasını önlemek için CentOS 7'nin nasıl yapılandırılacağını öğretecek.

1. Kullanıcı oluşturma


İlk önce SSH tarafından erişimi kısıtlanacak olan kullanıcıyı oluşturacağız, bu durumda buna erişim diyeceğiz, aşağıdakileri gerçekleştiriyoruz:
 sudo adduser erişimi
Ardından, aşağıdakileri yürüterek yeni kullanıcıya bir şifre atarız:
 sudo passwd erişimi

2. Dosya aktarımı için dizin oluşturma


Kullanıcımız oluşturulduktan sonra, bir sonraki adım, SFTP'nin hareket ederek erişimi engelleyeceği dizini oluşturmaktır ve bunun belirli parametrelerle yapılandırılması gerekir.

/ var / sftp / uploads adlı bir dizin oluşturacağız ve / var / sftp bölümü, kök kullanıcının sahibi olacak ve başka hiçbir kullanıcının aktif izinlere sahip olmayacağı ve / var / sftp / uploads alt dizininde sahibinin olacağı / var / sftp / uploads adlı bir dizin oluşturacağız yeni kullanıcı erişimi . Aşağıdaki satırı kullanarak dizini oluşturuyoruz:

 sudo mkdir -p / var / sftp / yüklemeler
Ardından, belirtilen dizinde kök kullanıcıyı sahip olarak belirleriz:
 sudo chown kökü: kök / var / sftp
Kök kullanıcıya yazma izinleri veriyoruz ve belirtilen yoldaki diğer kullanıcılara okuma izni veriyoruz:
 sudo chmod 755 / var / sftp

Şimdi yüklemelerin sahibini kullanıcı erişimi olacak şekilde değiştiriyoruz, aşağıdakileri yürütüyoruz:

 sudo chown erişimi: erişim / var / sftp / yüklemeler

3. Bir dizine erişimi kısıtlama


Bu adımda, kullanıcı erişimine terminal tarafından erişimin nasıl kısıtlanacağını, ancak dosya aktarımının mümkün olup olmayacağını göreceğiz. Bunun için SSH sunucusunu aşağıdaki yolda tercih edilen editör, vim veya nano ile düzenlemeliyiz:
 sudo nano / etc / ssh / sshd_config
Aşağıdakileri göreceğiz:

Dosyanın son kısmına aşağıdakileri ekliyoruz:

 Kullanıcı erişimini eşleştir ForceCommand dahili-sftp PasswordAuthentication evet ChrootDirectory / var / sftp PermitTunnel hayır AllowAgentForwarding hayır AllowTcpForwarding hayır X11Forwarding hayır 

Değişiklikleri Ctrl + O tuş kombinasyonunu kullanarak kaydeder ve Ctrl + X tuşlarını kullanarak editörden çıkarız. Kullanılan sözdizimi aşağıdakileri ima eder:

Kullanıcıyı EşleştirSSH sunucusuna, değişiklikleri orada belirtilen kullanıcıya uygulamasını söyleyin.

ForceCommand dahili sftpKabuğa erişimi engellemek için SSH sunucusunu SFTP'yi çalıştırmaya zorlar.

Şifre Doğrulama evetParola kimlik doğrulamasını etkinleştir

ChrootDirectory / var / sftp /Belirtilen kullanıcının / var / sftp yolunun ötesine erişimi olmayacağı gerçeğini ifade eder.

AllowAgentForwarding no, AllowTcpForwarding no. ve X11Forwarding değilBu seçenekler, belirtilen kullanıcı için bağlantı noktası iletmeyi, tünel oluşturmayı ve X11 protokolü iletmeyi devre dışı bırakır.

Dosyayı kaydettikten sonra, değişiklikleri SSH'de uygulamak için aşağıdaki komutu uygulayacağız:

 sudo systemctl sshd'yi yeniden başlat

4. SSH bağlantısını doğrulama

Aşama 1
Bu yapılandırıldığında, SSH üzerinden erişimi doğrulamanın ve yalnızca dosya aktarımlarının mümkün olacağını doğrulamanın zamanı gelecektir. Bunun için bu durumda olacak olan SSH üzerinden bağlantıya gidiyoruz.

 ssh eriş[email protected]
Erişim kimlik bilgilerini girdikten sonra aşağıdaki mesajı göreceğiz:

Adım 2
Bununla bağlantının SSH üzerinden kapatılacağını doğruladık. Şimdi sftp protokolünü kullanarak bağlantıyı deneyeceğiz:

 sftp eriş[email protected]
Şifreyi girerek bağlantının başarılı olduğunu göreceğiz ve dosyaları aktarabileceğiz:

Aşama 3
Orada mevcut dizinleri listelemek için ls komutunu kullanabiliriz ve oluşturduğumuz uploads klasörünü göreceğiz:

4. Adım
Orada bilgileri taşıyabiliriz ancak cd kullanarak yukarıdaki bir dizine dönmeye çalışırsak hata almazız ancak hiçbir dizinin listelenemediğini görürüz:

Bu kadar basit, sftp sayesinde erişimi kısıtlayabiliriz.

wave wave wave wave wave