nCr Değeri Nasıl Hesaplanır
Kombinasyon matematiksel bir kavramdır. Sıralarının alakasız olduğu birkaç nesnenin düzenlenmesini ifade eder. Temel bir formül, geçerli kombinasyonların sayısını tanımlar.
Bu yazıda, Ubuntu 20.04'te Code-Server'ı kurmanız için size rehberlik edeceğiz.
Code-server, herhangi bir yerde herhangi bir makinede VS Code sunan ve ona tarayıcıdan erişen açık kaynaklı bir sunucu uygulamasıdır. Derlemeleri ve testleri hızlandırmak ve hareket halindeyken pilden tasarruf etmek için güçlü bulut sunucularından yararlanmaya olanak tanır.
Önkoşullar
Ubuntu 20.04'te Code-Server'ı kurun
1. Sunucuyu güncelleyin
Sunucuyu güncel tutun.
# apt update -y
# apt upgrade -y
2. Kod Sunucusunu Kurun
Aşağıdaki komutu kullanarak kod sunucusunu resmi depodan indirin:
# cd /home
# wget https://github.com/cdr/code-server/releases/download/v3.11.0/code-server-3.11.0-linux-amd64.tar.gz
Tar dosyasını ayıklayın ve aşağıdaki komutu kullanarak kod sunucusuyla yeniden adlandırın :
# tar xzf code-server-3.11.0-linux-amd64.tar.gz && rm code-server-3.11.0-linux-amd64.tar.gz
# mv code-server-3.11.0-linux-amd64 code-server
Kod sunucusu ikili dosyasını yürütülebilir yapın.
# cd code-server
Kod sunucusunu çalıştırın.
./code-server --port 8000
Bilgisayarınızın tarayıcısını açın ve http://YOUR_IP_ADDRESS:8000'e gidin. Sizden bir şifre istenecektir. SSH terminalinde görüntülenen şifreyi kullanın. Visual Studio Code arayüzü açılacaktır. Sunucuyu durdurmak için SSH terminalinde CTRL + C tuşlarına basın .
3. Bir Sistem Başlatma Hizmeti Oluşturun
Linux'un systemd servis yöneticisini kullanarak bir servis oluşturabiliriz . Bu adımları takip et:
Aşağıdaki komutu kullanarak code-server.service adıyla yeni bir dosya oluşturun :
# vi /lib/systemd/system/code-server.service
Aşağıdaki içeriği kopyalayıp yapıştırın ve ayarlamak istediğiniz şifre ile değiştirin. Bu, kod sunucusuna giriş yapmak için kullanacağınız şifre olacaktır.
[Unit]
Description=Code Server Service
After=network.target[Service]
Type=simple
Restart=on-failure
RestartSec=10
WorkingDirectory=/home/code-server
Environment='PASSWORD='
ExecStart=/home/code-server/code-server --port 8000
StandardOutput=file:/var/log/code-server-output.log
StandardError=file:/var/log/code-server-error.log[Install]
WantedBy=multi-user.target
Dosyayı kaydedin ve kapatın.
Şimdi, aşağıdaki komutları kullanarak code-server.service'i başlatın ve etkinleştirin :
# systemctl daemon-reload
# systemctl start code-server
# systemctl enable code-server
Bilgisayarınızın tarayıcısını açın ve http://YOUR_IP_ADDRESS:8000'e gidin. Sizden bir şifre istenecektir. code-server.service dosyasında belirttiğiniz parolayı kullanın .
4. Nginx'i Kurun ve Yapılandırın
Kuruluma bir alan adı üzerinden erişmek ve bir SSL sertifikası eklemek için bir ters proxy kurulması önerilir. Bu gösterim amacıyla Nginx web sunucusunu ters proxy olarak kullanıyoruz.
Nginx'i kurmak için aşağıdaki komutu kullanın:
# apt-get install nginx -y
Varsayılan Nginx site yapılandırma dosyasını devre dışı bırakın.
# rm /etc/nginx/sites-enabled/default
Kod sunucusu için yeni bir Nginx site yapılandırma dosyası oluşturun.
# vi /etc/nginx/sites-available/code-server
Aşağıdaki parçacığı, example.com'u kendi alan adınızla değiştirerek dosyaya yapıştırın.
server {
listen 80;
listen [::]:80;
server_name example.com;
location / {
proxy_pass http://127.0.0.1:8000/;
proxy_set_header Host $host;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection upgrade;
proxy_set_header Accept-Encoding gzip;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
}
Yapılandırmayı etkinleştirin ve Nginx web sunucusunu yeniden başlatın.
# ln -s /etc/nginx/sites-available/code-server /etc/nginx/sites-enabled/
Nginx yapılandırma dosyasını test edin.
# nginx -t
Herhangi bir hata oluşmazsa, nginx hizmetini yeniden başlatın .
# systemctl restart nginx
Güvenlik duvarı olarak UFW kullanıyorsanız, güvenlik duvarı üzerinden SSH ve Nginx bağlantılarına izin verin ve güvenlik duvarını etkinleştirin. Bu, kod sunucusu kurulumuna yalnızca Nginx ters proxy üzerinden erişilebilir olmasını sağlayacaktır.
# ufw allow ssh
# ufw allow 'Nginx Full'
# ufw enable
Kurulumu test etmek için alan adınıza gidin.
5. Let's Encrypt SSL'yi kurun
Sunucu ve son kullanıcı arasındaki bağlantıyı güvende tutun, SSL sertifikası yüklemeniz şiddetle tavsiye edilir. Let's Encrypt 90 gün geçerliliği olan ücretsiz bir SSL sertifikasıdır ve her 90 günde bir yenilenir. SSL sertifikasını yüklemek için certbot kullanıyoruz .
Certbot'u indirin ve yükleyin.
# apt-get install python3-certbot-nginx
Certbot'un komut satırı yükleyicisini başlatmak için aşağıdaki komutu yürütün ve example.com'u kendi alan adınızla değiştirin.
# certbot --nginx -d example.com
Etkileşimli yükleyici ile devam edin. HTTP trafiğinin HTTPS'ye yönlendirilip yönlendirilmeyeceği sorulduğunda, yeniden yönlendirmeyi seçin.
Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you’re confident your site works on HTTPS. You can undo this
change by editing your web server’s configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2Redirecting all traffic on port 80 to ssl in /etc/nginx/sites-enabled/code-server
Redirecting all traffic on port 80 to ssl in /etc/nginx/sites-enabled/code-server
6. fail2ban'ı yükleyin (Önerilen)
Fail2ban, bir sunucudaki otomatik saldırıları tespit etmek ve azaltmak için günlükleri ayrıştıran bir uygulamadır. Önceden tanımlanmış sayıda başarısız oturum açma girişimi tespit edildiğinde fail2ban, sunucunun iptables'ını saldırganı önceden tanımlanmış bir süre boyunca engelleyecek şekilde değiştirir.
Kurulum araçlarını yükleyin. Bu fail2ban'ı yüklemek için gereklidir.
# apt-get install python3-setuptools -y
fail2ban.dll indirin ve kurun.
git clone https://github.com/fail2ban/fail2ban.git
cd fail2ban
sudo python3 setup.py install
cp build/fail2ban.service /lib/systemd/system/fail2ban.service
cd .. && rm -rf fail2ban
Jails.conf varsayılan yapılandırma dosyasını jails.local'a kopyalayın ve kopyalanan dosyayı bir metin düzenleyicide açın.
# cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
# vi /etc/fail2ban/jail.local
Aşağıdaki parçacığı dosyanın altına yapıştırın. Maxretry, findtime ve bantime parametrelerini değiştirebilirsiniz.
[code-server]
enabled = true
logpath = /var/log/code-server-output.log
# maxretry: The amount of unsuccessful login attempts after which a ban is issued.
maxretry = 5
# findtime: The amount of time within which the login attempts must occur.
findtime = 10m
# bantime: The amount of time for which an IP is banned from accessing the server.
bantime = 10m
Kod sunucusu günlüğünde başarısız oturum açma girişimlerini bulmak için filtre modelini tanımlamak için yeni bir filtre yapılandırma dosyası oluşturun.
# vi /etc/fail2ban/filter.d/code-server.conf
Aşağıdaki parçacığı dosyaya yapıştırın.
[Definition]
failregex = Failed login attempt {\'xForwardedFor\':\'\'.*
ignoreregex =
datepattern = "timestamp':{EPOCH}}$
rsyslog hizmetini yeniden başlatın ve fail2ban hizmetini etkinleştirip başlatın.
# systemctl restart rsyslog.service
# systemctl start fail2ban.service
# systemctl enable fail2ban.service
Bu kadar. Kurulum başarıyla tamamlandı.
Bu yazımızda sizlere Ubuntu 20.04 üzerine Code-Server kurulumunu anlattık.
Kombinasyon matematiksel bir kavramdır. Sıralarının alakasız olduğu birkaç nesnenin düzenlenmesini ifade eder. Temel bir formül, geçerli kombinasyonların sayısını tanımlar.
Solidity, Ethereum blok zincirindeki akıllı sözleşmeler tarafından kullanılan programlama dilidir. Statik olarak yazılmış, nesne yönelimli bir programlama dilidir.
SQL ve NoSQL: Bir Sonraki Projeniz İçin En İyi Veritabanı Nedir?
Birçok programcı, kod kullanarak zor matematik problemlerini çözmeyi sever. Zihni keskinleştirmeye ve problem çözme becerilerini geliştirmeye yardımcı olur. Bu makalede Python, C++ ve JavaScript kullanarak en küçük ve en büyük n basamaklı tam kareleri ve küpleri nasıl bulacağınızı öğreneceksiniz. Her örnek ayrıca birkaç farklı değer için örnek çıktı içerir.
Bilgisayarınızda bir grafik hesap makinesi kullanabilirsiniz, ancak Python programlama dili yorumlayıcısı bir masa hesap makinesi olarak da kullanılabilir. Python topluluğunda o kadar popüler bir koşu şakası ki, resmi eğitimde bahsedildi. Python'u hesap makinesi olarak nasıl kullanabileceğinizi buradan öğrenebilirsiniz.
WordPress gönderilerinize üçüncü taraf hizmetleri gömmek, bir ziyaretçinin ilgisini çekmenin heyecan verici bir yoludur. Gömülü içerik ayrıca taramayı kolaylaştıran görsel ipuçları sağlar. WordPress, bu tür içeriği eklemeyi kolaylaştırdı.
Python veya R ile çalışan gelecek vadeden bir veri bilimcisiyseniz, Jupyter Notebook'u nasıl kullanacağınızı bilmeniz gerekir. Verileri işlemek, canlı kodu paylaşmak ve veri bilimi iş akışını yönetmek için açık kaynaklı ve sunucu tabanlı bir IDE.
Teknoloji, şüphesiz geleceğin endüstrisidir. Kariyerinizin ilk ayağına atılmak üzere olan milyonlarca gençten biriyseniz, kodlamayı sevmiyorsanız ne yapacağınızı merak ediyor olabilirsiniz.
Yeni başlayanlar için hangi kavramları öğreneceğinizi ve bir sonraki dönüm noktasına ulaşmak için nasıl ilerleyeceğinizi ayrıntılı olarak açıklayan kapsamlı bir yol haritanız varsa, Python gibi yeni bir programlama dili öğrenmek zahmetsiz hale gelir. Orta seviye programcılar bile kendileri için sağlam bir temel oluşturmak için sık sık temellerini tazelemelidir.
ASP.NET, Microsoft'un web uygulamaları ve hizmetleri oluşturmaya yönelik ücretsiz çapraz platform çerçevesidir. ASP.NET platformu, farklı uygulamalar oluşturmak için kullanılan araçlar, programlama dilleri ve kitaplıklardan oluşan bir geliştirici platformu olan .NET'in bir uzantısıdır.